Package org.apache.catalina

## Interface Role

All Superinterfaces:
  `Principal`

All Known Implementing Classes:
  `AbstractRole`, `GenericRole`, `MemoryRole`

    public interface Role
    extends Principal

Abstract representation of a security role, suitable for use in environments like JAAS that want to deal with `Principals`.

Since:
  4.1
Author:
  Craig R. McClanahan

### Method Summary

All Methods Instance Methods Abstract Methods
`String` `getDescription()`
`String` `getRolename()`
`UserDatabase` `getUserDatabase()`
`void` `setDescription​(String description)` Set the description of this role.
`void` `setRolename​(String rolename)` Set the role name of this role, which must be unique within the scope of a `UserDatabase`.

### Methods inherited from interface java.security.Principal

`equals, getName, hashCode, implies, toString`

### Method Detail

#### getDescription

    String getDescription()

Returns:
  the description of this role.

#### setDescription

    void setDescription​(String description)

Set the description of this role.

Parameters:
  `description` - The new description

#### getRolename

    String getRolename()

Returns:
  the role name of this role, which must be unique within the scope of a `UserDatabase`.

#### setRolename

    void setRolename​(String rolename)

Set the role name of this role, which must be unique within the scope of a `UserDatabase`.

Parameters:
  `rolename` - The new role name

#### getUserDatabase

    UserDatabase getUserDatabase()

Returns:
  the `UserDatabase` within which this Role is defined.