Class MemoryGroupManagerImpl
java.lang.Object
org.apache.avalon.framework.logger.AbstractLogEnabled
org.apache.fulcrum.security.spi.AbstractManager
org.apache.fulcrum.security.spi.AbstractEntityManager
org.apache.fulcrum.security.spi.AbstractGroupManager
org.apache.fulcrum.security.memory.MemoryGroupManagerImpl
- All Implemented Interfaces:
Serializable
,org.apache.avalon.framework.activity.Disposable
,org.apache.avalon.framework.configuration.Configurable
,org.apache.avalon.framework.logger.LogEnabled
,org.apache.avalon.framework.service.Serviceable
,org.apache.avalon.framework.thread.ThreadSafe
,GroupManager
This implementation keeps all objects in memory. This is mostly meant to help
with testing and prototyping of ideas.
- Version:
- $Id$
- Author:
- Eric Pugh
- See Also:
-
Field Summary
Fields inherited from class org.apache.fulcrum.security.spi.AbstractManager
manager
Fields inherited from interface org.apache.fulcrum.security.GroupManager
ROLE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
checkExists
(String groupName) Determines if theGroup
exists in the security system.Retrieves all groups defined in the system.protected <T extends Group>
TpersistNewGroup
(T group) Creates a new group with specified attributes.void
removeGroup
(Group group) Removes a Group from the system.void
renameGroup
(Group group, String name) Renames an existing Group.Methods inherited from class org.apache.fulcrum.security.spi.AbstractGroupManager
addGroup, checkExists, getGroupById, getGroupByName, getGroupInstance, getGroupInstance
Methods inherited from class org.apache.fulcrum.security.spi.AbstractEntityManager
configure, getClassName, setClassName
Methods inherited from class org.apache.fulcrum.security.spi.AbstractManager
dispose, getGroupManager, getPermissionManager, getRoleManager, getServiceManager, getUserManager, release, resolve, service
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.fulcrum.security.GroupManager
addGroup, checkExists, getGroupById, getGroupByName, getGroupInstance, getGroupInstance
-
Constructor Details
-
MemoryGroupManagerImpl
public MemoryGroupManagerImpl()
-
-
Method Details
-
getAllGroups
Retrieves all groups defined in the system.- Specified by:
getAllGroups
in interfaceGroupManager
- Returns:
- the names of all groups defined in the system.
- Throws:
DataBackendException
- if there was an error accessing the data backend.
-
removeGroup
Removes a Group from the system.- Specified by:
removeGroup
in interfaceGroupManager
- Parameters:
group
- The object describing the group to be removed.- Throws:
DataBackendException
- if there was an error accessing the data backend.UnknownEntityException
- if the group does not exist.
-
renameGroup
public void renameGroup(Group group, String name) throws DataBackendException, UnknownEntityException Renames an existing Group.- Specified by:
renameGroup
in interfaceGroupManager
- Parameters:
group
- The object describing the group to be renamed.name
- the new name for the group.- Throws:
DataBackendException
- if there was an error accessing the data backend.UnknownEntityException
- if the group does not exist.
-
checkExists
Determines if theGroup
exists in the security system.- Specified by:
checkExists
in interfaceGroupManager
- Parameters:
groupName
- aGroup
value- Returns:
- true if the group exists in the system, false otherwise
- Throws:
DataBackendException
- when more than one Group with the same name exists.
-
persistNewGroup
Creates a new group with specified attributes.- Specified by:
persistNewGroup
in classAbstractGroupManager
- Parameters:
group
- the object describing the group to be created.- Returns:
- a new Group object that has id set up properly.
- Throws:
DataBackendException
- if there was an error accessing the data backend.
-