Interface User

  • All Superinterfaces:
    java.security.Principal
    All Known Implementing Classes:
    AbstractUser, GenericUser, MemoryUser

    public interface User
    extends java.security.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 Detail

      • getFullName

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

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

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

        java.lang.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​(java.lang.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

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

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

        void setUsername​(java.lang.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.