Interface User

All Superinterfaces:
Principal
All Known Implementing Classes:
AbstractUser, MemoryUser

public interface User extends Principal
Abstract representation of a user in a UserDatabase. Each user is optionally associated with a set of Groups through which they inherit additional security roles, and is optionally assigned a set of specific Roles.
Since:
4.1
Author:
Craig R. McClanahan
  • Method Details

    • getFullName

      String getFullName()
      Returns:
      the full name of this user.
    • setFullName

      void setFullName(String fullName)
      Set the full name of this user.
      Parameters:
      fullName - The new full name
    • getGroups

      Iterator<Group> getGroups()
      Returns:
      the set of Groups to which this user belongs.
    • getPassword

      String getPassword()
      Returns:
      the logon password of this user, optionally prefixed with the identifier of an encoding scheme surrounded by curly braces, such as {md5}xxxxx.
    • setPassword

      void setPassword(String password)
      Set the logon password of this user, optionally prefixed with the identifier of an encoding scheme surrounded by curly braces, such as {md5}xxxxx.
      Parameters:
      password - The new logon password
    • getRoles

      Iterator<Role> getRoles()
      Returns:
      the set of Roles assigned specifically to this user.
    • getUserDatabase

      UserDatabase getUserDatabase()
      Returns:
      the UserDatabase within which this User is defined.
    • getUsername

      String getUsername()
      Returns:
      the logon username of this user, which must be unique within the scope of a UserDatabase.
    • setUsername

      void setUsername(String username)
      Set the logon username of this user, which must be unique within the scope of a UserDatabase.
      Parameters:
      username - The new logon username
    • addGroup

      void addGroup(Group group)
      Add a new Group to those this user belongs to.
      Parameters:
      group - The new group
    • addRole

      void addRole(Role role)
      Add a Role to those assigned specifically to this user.
      Parameters:
      role - The new role
    • isInGroup

      boolean isInGroup(Group group)
      Is this user in the specified Group?
      Parameters:
      group - The group to check
      Returns:
      true if the user is in the specified group
    • isInRole

      boolean isInRole(Role role)
      Is this user specifically assigned the specified Role? This method does NOT check for roles inherited based on Group membership.
      Parameters:
      role - The role to check
      Returns:
      true if the user has the specified role
    • removeGroup

      void removeGroup(Group group)
      Remove a Group from those this user belongs to.
      Parameters:
      group - The old group
    • removeGroups

      void removeGroups()
      Remove all Groups from those this user belongs to.
    • removeRole

      void removeRole(Role role)
      Remove a Role from those assigned to this user.
      Parameters:
      role - The old role
    • removeRoles

      void removeRoles()
      Remove all Roles from those assigned to this user.