Class AbstractGroup

  • All Implemented Interfaces:
    Principal, Group
    Direct Known Subclasses:
    GenericGroup

    public abstract class AbstractGroup
    extends Object
    implements Group

    Convenience base class for Group implementations.

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

      • description

        protected String description
        The description of this group.
      • groupname

        protected String groupname
        The group name of this group.
    • Constructor Detail

      • AbstractGroup

        public AbstractGroup()
    • Method Detail

      • getDescription

        public String getDescription()
        Return the description of this group.
        Specified by:
        getDescription in interface Group
        Returns:
        the description of this group.
      • setDescription

        public void setDescription​(String description)
        Set the description of this group.
        Specified by:
        setDescription in interface Group
        Parameters:
        description - The new description
      • getGroupname

        public String getGroupname()
        Return the group name of this group, which must be unique within the scope of a UserDatabase.
        Specified by:
        getGroupname in interface Group
        Returns:
        the group name of this group, which must be unique within the scope of a UserDatabase.
      • setGroupname

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

        public abstract Iterator<Role> getRoles()
        Return the set of Roles assigned specifically to this group.
        Specified by:
        getRoles in interface Group
        Returns:
        the set of Roles assigned specifically to this group.
      • getUsers

        public abstract Iterator<User> getUsers()
        Return an Iterator over the set of Users that are members of this group.
        Specified by:
        getUsers in interface Group
        Returns:
        the set of Users that are members of this group.
      • addRole

        public abstract void addRole​(Role role)
        Add a new Role to those assigned specifically to this group.
        Specified by:
        addRole in interface Group
        Parameters:
        role - The new role
      • isInRole

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

        public abstract void removeRole​(Role role)
        Remove a Role from those assigned to this group.
        Specified by:
        removeRole in interface Group
        Parameters:
        role - The old role
      • removeRoles

        public abstract void removeRoles()
        Remove all Roles from those assigned to this group.
        Specified by:
        removeRoles in interface Group
      • getName

        public String getName()
        Make the principal name the same as the group name.
        Specified by:
        getName in interface Principal