Package org.apache.catalina.mbeans

# Class MemoryUserDatabaseMBean

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

All Implemented Interfaces:
  `DynamicMBean`, `MBeanRegistration`, `ModelMBeanNotificationBroadcaster`, `NotificationBroadcaster`

public class MemoryUserDatabaseMBean extends BaseModelMBean

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

Author:
  Craig R. McClanahan

## Field Summary

Fields
Modifier and Type
Field
Description
`protected final ManagedBean`
`managed`
The `ManagedBean` information describing this MBean.
`protected final ManagedBean`
`managedGroup`
The `ManagedBean` information describing Group MBeans.
`protected final ManagedBean`
`managedRole`
The `ManagedBean` information describing Group MBeans.
`protected final ManagedBean`
`managedUser`
The `ManagedBean` information describing User MBeans.
`protected final 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
Constructor
Description
`MemoryUserDatabaseMBean()`

## Method Summary

Modifier and Type
Method
Description
`String`
`createGroup(String groupname, String description)`
Create a new Group and return the corresponding MBean Name.
`String`
`createRole(String rolename, String description)`
Create a new Role and return the corresponding MBean Name.
`String`
`createUser(String username, String password, String fullName)`
Create a new User and return the corresponding MBean Name.
`String`
`findGroup(String groupname)`
Return the MBean Name for the specified group name (if any); otherwise return `null`.
`String`
`findRole(String rolename)`
Return the MBean Name for the specified role name (if any); otherwise return `null`.
`String`
`findUser(String username)`
Return the MBean Name for the specified user name (if any); otherwise return `null`.
`String[]`
`getGroups()`
`String[]`
`getRoles()`
`String[]`
`getUsers()`
`void`
`removeGroup(String groupname)`
Remove an existing group and destroy the corresponding MBean.
`void`
`removeRole(String rolename)`
Remove an existing role and destroy the corresponding MBean.
`void`
`removeUser(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 Details

### 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 Details

### MemoryUserDatabaseMBean

public MemoryUserDatabaseMBean()

## Method Details

### getGroups

public String[] getGroups()

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

### getRoles

public String[] getRoles()

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

### getUsers

public String[] getUsers()

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

### createGroup

public String createGroup(String groupname, 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 String createRole(String rolename, 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 String createUser(String username, String password, 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 String findGroup(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 String findRole(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 String findUser(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(String groupname)
Remove an existing group and destroy the corresponding MBean.

Parameters:
  `groupname` - Group name to remove

### removeRole

public void removeRole(String rolename)
Remove an existing role and destroy the corresponding MBean.

Parameters:
  `rolename` - Role name to remove

### removeUser

public void removeUser(String username)
Remove an existing user and destroy the corresponding MBean.

Parameters:
  `username` - User name to remove