Package org.apache.catalina.mbeans

## Class MemoryUserDatabaseMBean

- java.lang.Object
- - org.apache.tomcat.util.modeler.BaseModelMBean
  - - org.apache.catalina.mbeans.MemoryUserDatabaseMBean

All Implemented Interfaces:
  `javax.management.DynamicMBean`, `javax.management.MBeanRegistration`, `javax.management.modelmbean.ModelMBeanNotificationBroadcaster`, `javax.management.NotificationBroadcaster`

    public class MemoryUserDatabaseMBean
    extends BaseModelMBean

A ModelMBean implementation for the `org.apache.catalina.users.MemoryUserDatabase` component.

Author:
  Craig R. McClanahan

### Field Summary

Fields
`protected ManagedBean` `managed` The `ManagedBean` information describing this MBean.
`protected ManagedBean` `managedGroup` The `ManagedBean` information describing Group MBeans.
`protected ManagedBean` `managedRole` The `ManagedBean` information describing Group MBeans.
`protected ManagedBean` `managedUser` The `ManagedBean` information describing User MBeans.
`protected Registry` `registry` The configuration information registry for our managed beans.

### Fields inherited from class org.apache.tomcat.util.modeler.BaseModelMBean

`attributeBroadcaster, generalBroadcaster, managedBean, oname, resource, resourceType`

### Constructor Summary

Constructors
`MemoryUserDatabaseMBean()`

### Method Summary

All Methods Instance Methods Concrete Methods
`java.lang.String` `createGroup​(java.lang.String groupname, java.lang.String description)` Create a new Group and return the corresponding MBean Name.
`java.lang.String` `createRole​(java.lang.String rolename, java.lang.String description)` Create a new Role and return the corresponding MBean Name.
`java.lang.String` `createUser​(java.lang.String username, java.lang.String password, java.lang.String fullName)` Create a new User and return the corresponding MBean Name.
`java.lang.String` `findGroup​(java.lang.String groupname)` Return the MBean Name for the specified group name (if any); otherwise return `null`.
`java.lang.String` `findRole​(java.lang.String rolename)` Return the MBean Name for the specified role name (if any); otherwise return `null`.
`java.lang.String` `findUser​(java.lang.String username)` Return the MBean Name for the specified user name (if any); otherwise return `null`.
`java.lang.String[]` `getGroups()`
`java.lang.String[]` `getRoles()`
`java.lang.String[]` `getUsers()`
`void` `removeGroup​(java.lang.String groupname)` Remove an existing group and destroy the corresponding MBean.
`void` `removeRole​(java.lang.String rolename)` Remove an existing role and destroy the corresponding MBean.
`void` `removeUser​(java.lang.String username)` Remove an existing user and destroy the corresponding MBean.

### Methods inherited from class org.apache.tomcat.util.modeler.BaseModelMBean

`addAttributeChangeNotificationListener, addNotificationListener, getAttribute, getAttributes, getClassName, getJmxName, getManagedResource, getMBeanInfo, getModelerType, getNotificationInfo, getObjectName, invoke, postDeregister, postRegister, preDeregister, preRegister, removeAttributeChangeNotificationListener, removeNotificationListener, sendAttributeChangeNotification, sendAttributeChangeNotification, sendNotification, sendNotification, setAttribute, setAttributes, setManagedBean, setManagedResource, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### registry

    protected final Registry registry

The configuration information registry for our managed beans.

#### managed

    protected final ManagedBean managed

The `ManagedBean` information describing this MBean.

#### managedGroup

    protected final ManagedBean managedGroup

The `ManagedBean` information describing Group MBeans.

#### managedRole

    protected final ManagedBean managedRole

The `ManagedBean` information describing Group MBeans.

#### managedUser

    protected final ManagedBean managedUser

The `ManagedBean` information describing User MBeans.

### Constructor Detail

#### MemoryUserDatabaseMBean

    public MemoryUserDatabaseMBean()

### Method Detail

#### getGroups

    public java.lang.String[] getGroups()

Returns:
  the MBean Names of all groups defined in this database.

#### getRoles

    public java.lang.String[] getRoles()

Returns:
  the MBean Names of all roles defined in this database.

#### getUsers

    public java.lang.String[] getUsers()

Returns:
  the MBean Names of all users defined in this database.

#### createGroup

    public java.lang.String createGroup​(java.lang.String groupname,
                                        java.lang.String description)

Create a new Group and return the corresponding MBean Name.

Parameters:
  `groupname` - Group name of the new group
  `description` - Description of the new group
Returns:
  the new group object name

#### createRole

    public java.lang.String createRole​(java.lang.String rolename,
                                       java.lang.String description)

Create a new Role and return the corresponding MBean Name.

Parameters:
  `rolename` - Group name of the new group
  `description` - Description of the new group
Returns:
  the new role object name

#### createUser

    public java.lang.String createUser​(java.lang.String username,
                                       java.lang.String password,
                                       java.lang.String fullName)

Create a new User and return the corresponding MBean Name.

Parameters:
  `username` - User name of the new user
  `password` - Password for the new user
  `fullName` - Full name for the new user
Returns:
  the new user object name

#### findGroup

    public java.lang.String findGroup​(java.lang.String groupname)

Return the MBean Name for the specified group name (if any); otherwise return `null`.

Parameters:
  `groupname` - Group name to look up
Returns:
  the group object name

#### findRole

    public java.lang.String findRole​(java.lang.String rolename)

Return the MBean Name for the specified role name (if any); otherwise return `null`.

Parameters:
  `rolename` - Role name to look up
Returns:
  the role object name

#### findUser

    public java.lang.String findUser​(java.lang.String username)

Return the MBean Name for the specified user name (if any); otherwise return `null`.

Parameters:
  `username` - User name to look up
Returns:
  the user object name

#### removeGroup

    public void removeGroup​(java.lang.String groupname)

Remove an existing group and destroy the corresponding MBean.

Parameters:
  `groupname` - Group name to remove

#### removeRole

    public void removeRole​(java.lang.String rolename)

Remove an existing role and destroy the corresponding MBean.

Parameters:
  `rolename` - Role name to remove

#### removeUser

    public void removeUser​(java.lang.String username)

Remove an existing user and destroy the corresponding MBean.

Parameters:
  `username` - User name to remove