Interface Group

All Superinterfaces:
Principal
All Known Implementing Classes:
AbstractGroup, GenericGroup, 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 Details

    • 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.
    • getUserDatabase

      UserDatabase getUserDatabase()
      Returns:
      the UserDatabase within which this Group is defined.
    • 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.