Class TorqueAbstractGroupManager
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.torque.TorqueAbstractGroupManager
- 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,LazyLoadable
- Direct Known Subclasses:
PeerGroupManager,TorqueBasicGroupManagerImpl,TorqueDynamicGroupManagerImpl
public abstract class TorqueAbstractGroupManager
extends AbstractGroupManager
implements LazyLoadable
This implementation persists to a database via Torque.
- Version:
- $Id:$
- Author:
- Thomas Vandahl
- See Also:
-
Field Summary
FieldsFields inherited from class org.apache.fulcrum.security.spi.AbstractManager
managerFields inherited from interface org.apache.fulcrum.security.GroupManager
ROLE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancheckExists(String groupName) Determines if theGroupexists in the security system.voidconfigure(org.apache.avalon.framework.configuration.Configuration conf) Avalon Service lifecycle methodGet all specialized Groupsprotected abstract <T extends Group>
TdoSelectById(Integer id, Connection con) Get a specialized Group by idprotected abstract <T extends Group>
TdoSelectByName(String name, Connection con) Get a specialized Group by nameRetrieves all groups defined in the system.<T extends Group>
TgetGroupById(Object id) Retrieve a Group object with specified id.<T extends Group>
TgetGroupByName(String name) Retrieve a Group object with specified name.protected <T extends Group>
TpersistNewGroup(T group) Creates a new group with specified attributes.voidremoveGroup(Group group) Removes a Group from the system.voidrenameGroup(Group group, String name) Renames an existing Group.voidsetLazyLoading(Boolean lazyLoading) Methods inherited from class org.apache.fulcrum.security.spi.AbstractGroupManager
addGroup, checkExists, getGroupInstance, getGroupInstanceMethods inherited from class org.apache.fulcrum.security.spi.AbstractEntityManager
getClassName, setClassNameMethods inherited from class org.apache.fulcrum.security.spi.AbstractManager
dispose, getGroupManager, getPermissionManager, getRoleManager, getServiceManager, getUserManager, release, resolve, serviceMethods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
-
Field Details
-
lazyLoading
-
-
Constructor Details
-
TorqueAbstractGroupManager
public TorqueAbstractGroupManager()
-
-
Method Details
-
configure
public void configure(org.apache.avalon.framework.configuration.Configuration conf) throws org.apache.avalon.framework.configuration.ConfigurationException Avalon Service lifecycle method- Specified by:
configurein interfaceorg.apache.avalon.framework.configuration.Configurable- Overrides:
configurein classAbstractEntityManager- Throws:
org.apache.avalon.framework.configuration.ConfigurationException
-
doSelectAllGroups
protected abstract <T extends Group> List<T> doSelectAllGroups(Connection con) throws org.apache.torque.TorqueException Get all specialized Groups- Parameters:
con- a database connection- Returns:
- a List of Group instances
- Throws:
org.apache.torque.TorqueException- if any database error occurs
-
doSelectByName
protected abstract <T extends Group> T doSelectByName(String name, Connection con) throws org.apache.torque.NoRowsException, org.apache.torque.TooManyRowsException, org.apache.torque.TorqueException Get a specialized Group by name- Parameters:
name- the name of the groupcon- a database connection- Returns:
- a Group instance
- Throws:
org.apache.torque.NoRowsException- if no such group existsorg.apache.torque.TooManyRowsException- if multiple groups with the given name existorg.apache.torque.TorqueException- if any database error occurs if any other database error occurs
-
doSelectById
protected abstract <T extends Group> T doSelectById(Integer id, Connection con) throws org.apache.torque.NoRowsException, org.apache.torque.TooManyRowsException, org.apache.torque.TorqueException Get a specialized Group by id- Parameters:
id- the id of the groupcon- a database connection- Returns:
- a Group instance
- Throws:
org.apache.torque.NoRowsException- if no such group existsorg.apache.torque.TooManyRowsException- if multiple groups with the given id existorg.apache.torque.TorqueException- if any database error occurs if any other database error occurs
-
persistNewGroup
Creates a new group with specified attributes.- Specified by:
persistNewGroupin 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.
-
renameGroup
public void renameGroup(Group group, String name) throws DataBackendException, UnknownEntityException Renames an existing Group.- Specified by:
renameGroupin 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.
-
removeGroup
Removes a Group from the system.- Specified by:
removeGroupin 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.
-
getGroupByName
public <T extends Group> T getGroupByName(String name) throws DataBackendException, UnknownEntityException Retrieve a Group object with specified name.- Specified by:
getGroupByNamein interfaceGroupManager- Overrides:
getGroupByNamein classAbstractGroupManager- Parameters:
name- the name of the Group.- Returns:
- an object representing the Group with specified name.
- Throws:
DataBackendException- if there was an error accessing the data backend.UnknownEntityException- if the group does not exist.
-
getAllGroups
Retrieves all groups defined in the system.- Specified by:
getAllGroupsin interfaceGroupManager- Returns:
- the names of all groups defined in the system.
- Throws:
DataBackendException- if there was an error accessing the data backend.
-
checkExists
Determines if theGroupexists in the security system.- Specified by:
checkExistsin interfaceGroupManager- Parameters:
groupName- aGroupvalue- Returns:
- true if the group name exists in the system, false otherwise
- Throws:
DataBackendException- when more than one Group with the same name exists.
-
getGroupById
public <T extends Group> T getGroupById(Object id) throws DataBackendException, UnknownEntityException Retrieve a Group object with specified id.- Specified by:
getGroupByIdin interfaceGroupManager- Overrides:
getGroupByIdin classAbstractGroupManager- Parameters:
id- the id of the Group.- Returns:
- an object representing the Group with specified id.
- Throws:
DataBackendException- if there was an error accessing the data backend.UnknownEntityException- if the group does not exist.
-
getLazyLoading
- Specified by:
getLazyLoadingin interfaceLazyLoadable
-
setLazyLoading
- Specified by:
setLazyLoadingin interfaceLazyLoadable
-