public interface AccessControlProviderFactory
AccessControlProviderFactoryis used to create
AccessControlProviders for the various workspaces present in the repository. If a provider is no longer used by the workspace, it is
closed. The factory does not need to cache the created
AccessControlProviders. They are used during the entire lifetime of their workspace, and are cached together with the respective workspace related objects by the repository implementation. The
AccessControlProviders are requested using a
system Session. The system sessions have a distinct access control rules in order to prevent chicken-egg problems when setting up security for a workspace.
|Modifier and Type||Method and Description|
Creates an AccessControlProvider for the workspace of the given system session.
Initialize this factory.
void init(Session securitySession) throws RepositoryException
securitySession- Security Session.
RepositoryException- If an error occurs.
void close() throws RepositoryException
AccessControlProviderFactoryand its resources.
RepositoryException- if an error occurs.
AccessControlProvider createProvider(Session systemSession, WorkspaceSecurityConfig config) throws RepositoryException
nullor does not have a provider entry, this factory must create a default provider. In any case the provider must be initialized before it is returned to the caller.
systemSession- the system session for the workspace the
AccessControlProvidershould be created for.
config- The security configuration for that workspace or
nullif no config entry is present. In this case the factory must use its default. The configuration is used to determine the implementation of
AccessControlProviderto be used and to retrieve eventual configuration parameters.
RepositoryException- if an error occurs
Copyright © 2004-2012 The Apache Software Foundation. All Rights Reserved.