Class TorqueAbstractRoleManager

java.lang.Object
org.apache.avalon.framework.logger.AbstractLogEnabled
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, RoleManager, LazyLoadable
Direct Known Subclasses:
PeerRoleManager, TorqueDynamicRoleManagerImpl

public abstract class TorqueAbstractRoleManager extends AbstractRoleManager implements LazyLoadable
This implementation persists to a database via Torque.
Version:
$Id:$
Author:
Thomas Vandahl
See Also:
  • Field Details

    • lazyLoading

      protected Boolean lazyLoading
  • Constructor Details

    • TorqueAbstractRoleManager

      public TorqueAbstractRoleManager()
  • 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:
      configure in interface org.apache.avalon.framework.configuration.Configurable
      Overrides:
      configure in class AbstractEntityManager
      Throws:
      org.apache.avalon.framework.configuration.ConfigurationException
    • doSelectAllRoles

      protected abstract <T extends Role> List<T> doSelectAllRoles(Connection con) throws org.apache.torque.TorqueException
      Get all specialized Roles
      Parameters:
      con - a database connection
      Returns:
      a List of Role instances
      Throws:
      org.apache.torque.TorqueException - if any database error occurs
    • doSelectByName

      protected abstract <T extends Role> T doSelectByName(String name, Connection con) throws org.apache.torque.NoRowsException, org.apache.torque.TooManyRowsException, org.apache.torque.TorqueException
      Get a specialized Role by name
      Parameters:
      name - the name of the group
      con - a database connection
      Returns:
      a Role instance
      Throws:
      org.apache.torque.NoRowsException - if no such group exists
      org.apache.torque.TooManyRowsException - if multiple groups with the given name exist
      org.apache.torque.TorqueException - if any database error occurs if any other database error occurs
    • doSelectById

      protected abstract <T extends Role> T doSelectById(Integer id, Connection con) throws org.apache.torque.NoRowsException, org.apache.torque.TooManyRowsException, org.apache.torque.TorqueException
      Get a specialized Role by id
      Parameters:
      id - the id of the group
      con - a database connection
      Returns:
      a Role instance
      Throws:
      org.apache.torque.NoRowsException - if no such group exists
      org.apache.torque.TooManyRowsException - if multiple groups with the given id exist
      org.apache.torque.TorqueException - if any database error occurs if any other database error occurs
    • renameRole

      public void renameRole(Role role, String name) throws DataBackendException, UnknownEntityException
      Renames an existing Role.
      Specified by:
      renameRole in interface RoleManager
      Parameters:
      role - The object describing the role to be renamed.
      name - the new name for the role.
      Throws:
      DataBackendException - if there was an error accessing the data backend.
      UnknownEntityException - if the role does not exist.
    • persistNewRole

      protected <T extends Role> T persistNewRole(T role) throws DataBackendException
      Creates a new role with specified attributes.
      Specified by:
      persistNewRole in class AbstractRoleManager
      Parameters:
      role - the object describing the role to be created.
      Returns:
      a new Role object that has id set up properly.
      Throws:
      DataBackendException - if there was an error accessing the data backend.
    • removeRole

      public void removeRole(Role role) throws DataBackendException, UnknownEntityException
      Removes a Role from the system.
      Specified by:
      removeRole in interface RoleManager
      Parameters:
      role - The object describing the role to be removed.
      Throws:
      DataBackendException - if there was an error accessing the data backend.
      UnknownEntityException - if the role does not exist.
    • checkExists

      public boolean checkExists(String roleName) throws DataBackendException
      Determines if the Role exists in the security system.
      Specified by:
      checkExists in interface RoleManager
      Parameters:
      roleName - a Role value
      Returns:
      true if the role name exists in the system, false otherwise
      Throws:
      DataBackendException - when more than one Role with the same name exists.
    • getAllRoles

      public RoleSet getAllRoles() throws DataBackendException
      Retrieves all roles defined in the system.
      Specified by:
      getAllRoles in interface RoleManager
      Returns:
      the names of all roles defined in the system.
      Throws:
      DataBackendException - if there was an error accessing the data backend.
    • getRoleById

      public <T extends Role> T getRoleById(Object id) throws DataBackendException, UnknownEntityException
      Retrieve a Role object with specified id.
      Specified by:
      getRoleById in interface RoleManager
      Overrides:
      getRoleById in class AbstractRoleManager
      Parameters:
      id - the id of the Role.
      Returns:
      an object representing the Role with specified id.
      Throws:
      DataBackendException - if there was an error accessing the data backend.
      UnknownEntityException - if the role does not exist.
    • getRoleByName

      public <T extends Role> T getRoleByName(String name) throws DataBackendException, UnknownEntityException
      Retrieve a Role object with specified name.
      Specified by:
      getRoleByName in interface RoleManager
      Overrides:
      getRoleByName in class AbstractRoleManager
      Parameters:
      name - the name of the Role.
      Returns:
      an object representing the Role with specified name.
      Throws:
      DataBackendException - if there was an error accessing the data backend.
      UnknownEntityException - if the role does not exist.
    • getLazyLoading

      public Boolean getLazyLoading()
      Specified by:
      getLazyLoading in interface LazyLoadable
    • setLazyLoading

      public void setLazyLoading(Boolean lazyLoading)
      Specified by:
      setLazyLoading in interface LazyLoadable