## org.apache.catalina
Interface Group

All Superinterfaces:
  java.security.Principal

All Known Implementing Classes:
  AbstractGroup

public interface Group
extends java.security.Principal

Abstract representation of a group of `User`s in a `UserDatabase`. Each user that is a member of this group inherits the `Role`s assigned to the group.

Since:
  4.1
Version:
  $Revision: 1.6 $ $Date: 2004/08/26 22:05:20 $
Author:
  Craig R. McClanahan

Method Summary
`void` `addRole(Role role)` Add a new `Role` to those assigned specifically to this group.
`java.lang.String` `getDescription()` Return the description of this group.
`java.lang.String` `getGroupname()` Return the group name of this group, which must be unique within the scope of a `UserDatabase`.
`java.util.Iterator` `getRoles()` Return the set of `Role`s assigned specifically to this group.
`UserDatabase` `getUserDatabase()` Return the `UserDatabase` within which this Group is defined.
`java.util.Iterator` `getUsers()` Return the set of `User`s that are members of this group.
`boolean` `isInRole(Role role)` Is this group specifically assigned the specified `Role`?
`void` `removeRole(Role role)` Remove a `Role` from those assigned to this group.
`void` `removeRoles()` Remove all `Role`s from those assigned to this group.
`void` `setDescription(java.lang.String description)` Set the description of this group.
`void` `setGroupname(java.lang.String groupname)` Set the group name of this group, which must be unique within the scope of a `UserDatabase`.

Methods inherited from interface java.security.Principal
`equals, getName, hashCode, toString`

Method Detail

### getDescription

    public java.lang.String getDescription()

  Return the description of this group.

### setDescription

    public void setDescription(java.lang.String description)

  Set the description of this group.

  Parameters:
    `description` - The new description

### getGroupname

    public java.lang.String getGroupname()

  Return the group name of this group, which must be unique within the scope of a `UserDatabase`.

### setGroupname

    public void setGroupname(java.lang.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

    public java.util.Iterator getRoles()

  Return the set of `Role`s assigned specifically to this group.

### getUserDatabase

    public UserDatabase getUserDatabase()

  Return the `UserDatabase` within which this Group is defined.

### getUsers

    public java.util.Iterator getUsers()

  Return the set of `User`s that are members of this group.

### addRole

    public void addRole(Role role)

  Add a new `Role` to those assigned specifically to this group.

  Parameters:
    `role` - The new role

### isInRole

    public boolean isInRole(Role role)

  Is this group specifically assigned the specified `Role`?

  Parameters:
    `role` - The role to check

### removeRole

    public void removeRole(Role role)

  Remove a `Role` from those assigned to this group.

  Parameters:
    `role` - The old role

### removeRoles

    public void removeRoles()

  Remove all `Role`s from those assigned to this group.

Copyright ? 2000-2002 Apache Software Foundation. All Rights Reserved.