Package org.apache.catalina.mbeans
Class SparseUserDatabaseMBean
- java.lang.Object
-
- org.apache.tomcat.util.modeler.BaseModelMBean
-
- org.apache.catalina.mbeans.SparseUserDatabaseMBean
-
- All Implemented Interfaces:
DynamicMBean,MBeanRegistration,ModelMBeanNotificationBroadcaster,NotificationBroadcaster
- Direct Known Subclasses:
MemoryUserDatabaseMBean
public class SparseUserDatabaseMBean extends BaseModelMBean
A ModelMBean implementation for the
org.apache.catalina.users.SparseUserDatabasecomponent. The main difference is that the MBeans are created on demand (for example, the findUser method would register the corresponding user and make it available for management. All the MBeans created for users, groups and roles are then discarded when save is invoked.- Author:
- Craig R. McClanahan
-
-
Field Summary
Fields Modifier and Type Field Description protected ManagedBeanmanagedTheManagedBeaninformation describing this MBean.protected ManagedBeanmanagedGroupTheManagedBeaninformation describing Group MBeans.protected ManagedBeanmanagedRoleTheManagedBeaninformation describing Group MBeans.protected ManagedBeanmanagedUserTheManagedBeaninformation describing User MBeans.protected MBeanServermserverTheMBeanServerfor this application.protected RegistryregistryThe 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 SparseUserDatabaseMBean()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringcreateGroup(String groupname, String description)Create a new Group and return the corresponding MBean Name.StringcreateRole(String rolename, String description)Create a new Role and return the corresponding MBean Name.StringcreateUser(String username, String password, String fullName)Create a new User and return the corresponding MBean Name.StringfindGroup(String groupname)Return the MBean Name for the specified group name (if any); otherwise returnnull.StringfindRole(String rolename)Return the MBean Name for the specified role name (if any); otherwise returnnull.StringfindUser(String username)Return the MBean Name for the specified user name (if any); otherwise returnnull.String[]getGroups()String[]getRoles()String[]getUsers()voidremoveGroup(String groupname)Remove an existing group and destroy the corresponding MBean.voidremoveRole(String rolename)Remove an existing role and destroy the corresponding MBean.voidremoveUser(String username)Remove an existing user and destroy the corresponding MBean.voidsave()Call actual save and unregister all obsolete beans.-
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
-
-
-
-
Field Detail
-
registry
protected final Registry registry
The configuration information registry for our managed beans.
-
mserver
protected final MBeanServer mserver
TheMBeanServerfor this application.
-
managed
protected final ManagedBean managed
TheManagedBeaninformation describing this MBean.
-
managedGroup
protected final ManagedBean managedGroup
TheManagedBeaninformation describing Group MBeans.
-
managedRole
protected final ManagedBean managedRole
TheManagedBeaninformation describing Group MBeans.
-
managedUser
protected final ManagedBean managedUser
TheManagedBeaninformation describing User MBeans.
-
-
Method Detail
-
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 groupdescription- 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 groupdescription- 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 userpassword- Password for the new userfullName- 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 returnnull.- 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 returnnull.- 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 returnnull.- 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
-
save
public void save()
Call actual save and unregister all obsolete beans.
-
-