Interface Group

  • All Superinterfaces:
    Principal
    All Known Implementing Classes:
    AbstractGroup, MemoryGroup

    public interface Group
    extends Principal

    Abstract representation of a group of Users in a UserDatabase. Each user that is a member of this group inherits the Roles assigned to the group.

    Since:
    4.1
    Author:
    Craig R. McClanahan
    • Method Detail

      • getDescription

        String getDescription()
        Returns:
        the description of this group.
      • setDescription

        void setDescription​(String description)
        Set the description of this group.
        Parameters:
        description - The new description
      • getGroupname

        String getGroupname()
        Returns:
        the group name of this group, which must be unique within the scope of a UserDatabase.
      • setGroupname

        void setGroupname​(String groupname)
        Set the group name of this group, which must be unique within the scope of a UserDatabase.
        Parameters:
        groupname - The new group name
      • getRoles

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

        Iterator<User> getUsers()
        Returns:
        the set of Users that are members of this group.
      • addRole

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

        boolean isInRole​(Role role)
        Is this group specifically assigned the specified Role?
        Parameters:
        role - The role to check
        Returns:
        true if the group is assigned to the specified role otherwise false
      • removeRole

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

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