Interface User

All Known Implementing Classes:
Applicant, Manager, Officer

public interface User
Defines the common contract for all user types within the system (e.g., Applicant, Officer, Manager). Specifies methods required to access and modify fundamental user attributes such as user ID, name, hashed password, age, and marital status.
  • Method Details

    • getUserID

      String getUserID()
      Gets the unique identifier for this user.
      Returns:
      The user ID string.
    • setUserID

      void setUserID(String userID)
      Sets the unique identifier for this user.
      Parameters:
      userID - The user ID string to set.
    • getName

      String getName()
      Gets the name of this user.
      Returns:
      The user's name string.
    • setName

      void setName(String name)
      Sets the name of this user.
      Parameters:
      name - The user's name string to set.
    • getHashedPassword

      String getHashedPassword()
      Gets the securely hashed password for this user's account.
      Returns:
      The Base64 encoded hashed password string.
    • setHashedPassoword

      void setHashedPassoword(String hashedPassword)
      Sets the securely hashed password for this user's account. Note: There is a typo in the method name ("Passoword"). It should ideally be "setPassword" or "setHashedPassword".
      Parameters:
      hashedPassword - The Base64 encoded hashed password string to set.
    • getAge

      int getAge()
      Gets the age of this user.
      Returns:
      The user's age as an integer.
    • setAge

      void setAge(int age)
      Sets the age of this user.
      Parameters:
      age - The user's age as an integer.
    • getMaritalStatus

      MaritalStatus getMaritalStatus()
      Gets the marital status of this user.
      Returns:
      The user's MaritalStatus.
    • setMaritalStatus

      void setMaritalStatus(MaritalStatus maritalStatus)
      Sets the marital status of this user.
      Parameters:
      maritalStatus - The user's MaritalStatus.