public abstract class AbstractAccessControlProvider extends Object implements AccessControlProvider, AccessControlUtils, AccessControlConstants
AbstractAccessControlProvider...| Modifier and Type | Field and Description | 
|---|---|
| protected ObservationManager | observationMgr | 
| static String | PARAM_OMIT_DEFAULT_PERMISSIONSConstant for the name of the configuration option "omit-default-permission". | 
| protected PrivilegeManagerImpl | privilegeManager | 
| protected SessionImpl | sessionthe system session this provider has been created for. | 
N_ACCESSCONTROL, N_POLICY, N_REPO_POLICY, NT_REP_ACCESS_CONTROL, NT_REP_ACCESS_CONTROLLABLE, NT_REP_ACE, NT_REP_ACL, NT_REP_DENY_ACE, NT_REP_GRANT_ACE, NT_REP_PRINCIPAL_ACCESS_CONTROL, NT_REP_REPO_ACCESS_CONTROLLABLE, P_GLOB, P_PRINCIPAL_NAME, P_PRIVILEGES| Modifier | Constructor and Description | 
|---|---|
| protected  | AbstractAccessControlProvider() | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | checkInitialized()Throws  IllegalStateExceptionif the provider has not
 been initialized or has been closed. | 
| void | close()Closes this provider when it is no longer used by the respective
 workspace and release resources bound by this provider. | 
| protected CompiledPermissions | getAdminPermissions()Returns compiled permissions for the administrator i.e. | 
| protected PrivilegeManagerImpl | getPrivilegeManagerImpl() | 
| protected CompiledPermissions | getReadOnlyPermissions()Returns compiled permissions for a read-only user i.e. | 
| void | init(Session systemSession,
    Map configuration)Tests if the given  systemSessionis a SessionImpl and
 retrieves the observation manager. | 
| boolean | isAcItem(ItemImpl item)Test if the given node is itself a rep:ACL or a rep:ACE node. | 
| boolean | isAcItem(Path absPath)Test if the specified path points to an item that defines AC
 information. | 
| boolean | isAdminOrSystem(Set<Principal> principals)Test if the specified set of principals contains an admin or system
 principal. | 
| boolean | isLive()Returns  true, if this provider is still alive and able to
 evaluate permissions;falseotherwise. | 
| boolean | isReadOnly(Set<Principal> principals)Test if if the specified set of principals will have read-only permissions
 only. | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcanAccessRoot, compilePermissions, getEditor, getEffectivePolicies, getEffectivePoliciespublic static final String PARAM_OMIT_DEFAULT_PERMISSIONS
 If this option is present in the configuration no initial ACL content
 is created.
 If this configuration option is omitted the default permissions are
 installed. Note however, that the initialization should not overwrite
 previously installed AC content.
protected SessionImpl session
protected ObservationManager observationMgr
protected PrivilegeManagerImpl privilegeManager
protected void checkInitialized()
IllegalStateException if the provider has not
 been initialized or has been closed.protected PrivilegeManagerImpl getPrivilegeManagerImpl() throws RepositoryException
RepositoryExceptionprotected CompiledPermissions getAdminPermissions()
Privilege.JCR_ALL
 upon CompiledPermissions.getPrivileges(Path) for all
 paths.CompiledPermissions that
 grants everything and always returns the int representation of
 Privilege.JCR_ALL upon CompiledPermissions.getPrivileges(Path).protected CompiledPermissions getReadOnlyPermissions()
CompiledPermissions that
 grants READ permission for all non-AC items.public boolean isAcItem(Path absPath) throws RepositoryException
AccessControlUtilsisAcItem in interface AccessControlUtilsabsPath - Path to an item.absPath contains
 access control information.RepositoryException - If an error occurs.AccessControlUtils.isAcItem(Path)public boolean isAcItem(ItemImpl item) throws RepositoryException
isAcItem in interface AccessControlUtilsitem - An item.item defines
 access control related information is should therefore be considered
 protected.RepositoryException - If an error occurs.AccessControlUtils.isAcItem(org.apache.jackrabbit.core.ItemImpl)public boolean isAdminOrSystem(Set<Principal> principals)
AccessControlUtilsisAdminOrSystem in interface AccessControlUtilsprincipals - A set of principals.AdminPrincipal or a SystemPrincipal.AccessControlUtils.isAdminOrSystem(Set)public boolean isReadOnly(Set<Principal> principals)
AccessControlUtilsisReadOnly in interface AccessControlUtilsprincipals - A set of principals.AccessControlUtils.isReadOnly(Set)public void init(Session systemSession, Map configuration) throws RepositoryException
systemSession is a SessionImpl and
 retrieves the observation manager. The it sets the internal 'initialized'
 field to true.init in interface AccessControlProvidersystemSession - System session.configuration - Configuration used to initialize this provider.RepositoryException - If the specified session is not a
 SessionImpl or if retrieving the observation manager fails.AccessControlProvider.init(Session, Map)public void close()
AccessControlProviderclose in interface AccessControlProviderAccessControlProvider.close()public boolean isLive()
AccessControlProvidertrue, if this provider is still alive and able to
 evaluate permissions; false otherwise.isLive in interface AccessControlProvidertrue, if this provider is still alive and able to
 evaluate permissions; false otherwise.AccessControlProvider.isLive()Copyright © 2004–2022 The Apache Software Foundation. All rights reserved.