Class AmetysRepository
- java.lang.Object
-
- org.apache.jackrabbit.commons.AbstractRepository
-
- org.apache.jackrabbit.core.RepositoryImpl
-
- org.ametys.plugins.repository.provider.AmetysRepository
-
- All Implemented Interfaces:
Repository
,JackrabbitRepository
,WorkspaceListener
,SessionListener
public class AmetysRepository extends RepositoryImpl
JCR Repository implementation, based on Jackrabbit and allowing to change the logout behaviour for Sessions
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.jackrabbit.core.RepositoryImpl
RepositoryImpl.DescriptorValue, RepositoryImpl.WorkspaceInfo
-
-
Field Summary
-
Fields inherited from class org.apache.jackrabbit.core.RepositoryImpl
ACTIVITIES_NODE_ID, CONFIGURATIONS_NODE_ID, context, JACKRABBIT_CLUSTER_ID, nodeIdFactory, NODETYPES_NODE_ID, repConfig, ROOT_NODE_ID, SYSTEM_ROOT_NODE_ID, VERSION_STORAGE_NODE_ID
-
Fields inherited from interface org.apache.jackrabbit.api.JackrabbitRepository
OPTION_PRINCIPAL_MANAGEMENT_SUPPORTED, OPTION_PRIVILEGE_MANAGEMENT_SUPPORTED, OPTION_USER_MANAGEMENT_SUPPORTED
-
Fields inherited from interface javax.jcr.Repository
IDENTIFIER_STABILITY, IDENTIFIER_STABILITY_INDEFINITE_DURATION, IDENTIFIER_STABILITY_METHOD_DURATION, IDENTIFIER_STABILITY_SAVE_DURATION, IDENTIFIER_STABILITY_SESSION_DURATION, LEVEL_1_SUPPORTED, LEVEL_2_SUPPORTED, NODE_TYPE_MANAGEMENT_AUTOCREATED_DEFINITIONS_SUPPORTED, NODE_TYPE_MANAGEMENT_INHERITANCE, NODE_TYPE_MANAGEMENT_INHERITANCE_MINIMAL, NODE_TYPE_MANAGEMENT_INHERITANCE_MULTIPLE, NODE_TYPE_MANAGEMENT_INHERITANCE_SINGLE, NODE_TYPE_MANAGEMENT_MULTIPLE_BINARY_PROPERTIES_SUPPORTED, NODE_TYPE_MANAGEMENT_MULTIVALUED_PROPERTIES_SUPPORTED, NODE_TYPE_MANAGEMENT_ORDERABLE_CHILD_NODES_SUPPORTED, NODE_TYPE_MANAGEMENT_OVERRIDES_SUPPORTED, NODE_TYPE_MANAGEMENT_PRIMARY_ITEM_NAME_SUPPORTED, NODE_TYPE_MANAGEMENT_PROPERTY_TYPES, NODE_TYPE_MANAGEMENT_RESIDUAL_DEFINITIONS_SUPPORTED, NODE_TYPE_MANAGEMENT_SAME_NAME_SIBLINGS_SUPPORTED, NODE_TYPE_MANAGEMENT_UPDATE_IN_USE_SUPORTED, NODE_TYPE_MANAGEMENT_VALUE_CONSTRAINTS_SUPPORTED, OPTION_ACCESS_CONTROL_SUPPORTED, OPTION_ACTIVITIES_SUPPORTED, OPTION_BASELINES_SUPPORTED, OPTION_JOURNALED_OBSERVATION_SUPPORTED, OPTION_LIFECYCLE_SUPPORTED, OPTION_LOCKING_SUPPORTED, OPTION_NODE_AND_PROPERTY_WITH_SAME_NAME_SUPPORTED, OPTION_NODE_TYPE_MANAGEMENT_SUPPORTED, OPTION_OBSERVATION_SUPPORTED, OPTION_QUERY_SQL_SUPPORTED, OPTION_RETENTION_SUPPORTED, OPTION_SHAREABLE_NODES_SUPPORTED, OPTION_SIMPLE_VERSIONING_SUPPORTED, OPTION_TRANSACTIONS_SUPPORTED, OPTION_UNFILED_CONTENT_SUPPORTED, OPTION_UPDATE_MIXIN_NODE_TYPES_SUPPORTED, OPTION_UPDATE_PRIMARY_NODE_TYPE_SUPPORTED, OPTION_VERSIONING_SUPPORTED, OPTION_WORKSPACE_MANAGEMENT_SUPPORTED, OPTION_XML_EXPORT_SUPPORTED, OPTION_XML_IMPORT_SUPPORTED, QUERY_FULL_TEXT_SEARCH_SUPPORTED, QUERY_JOINS, QUERY_JOINS_INNER, QUERY_JOINS_INNER_OUTER, QUERY_JOINS_NONE, QUERY_LANGUAGES, QUERY_STORED_QUERIES_SUPPORTED, QUERY_XPATH_DOC_ORDER, QUERY_XPATH_POS_INDEX, REP_NAME_DESC, REP_VENDOR_DESC, REP_VENDOR_URL_DESC, REP_VERSION_DESC, SPEC_NAME_DESC, SPEC_VERSION_DESC, WRITE_SUPPORTED
-
-
Constructor Summary
Constructors Constructor Description AmetysRepository(RepositoryConfig config)
Creates a Repository.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected SessionImpl
createSessionInstance(Subject subject, WorkspaceConfig wspConfig)
protected SessionImpl
createSessionInstance(AuthContext loginContext, WorkspaceConfig wspConfig)
protected void
doShutdown()
RepositoryStatistics
getRepositoryStatistics()
Get the JCR repository statisticsvoid
loggedOut(SessionImpl session)
Session
login(Credentials credentials, String workspaceName)
protected void
onSessionCreated(SessionImpl session)
-
Methods inherited from class org.apache.jackrabbit.core.RepositoryImpl
create, createClusterNode, createDataStoreGarbageCollector, createItemStateManager, createNamespaceRegistry, createNodeTypeRegistry, createSession, createSession, createVersionManager, createWorkspace, createWorkspace, createWorkspaceInfo, externalWorkspaceCreated, getCacheManager, getConfig, getCustomRepositoryDescriptors, getDescriptor, getDescriptorKeys, getDescriptorValue, getDescriptorValues, getSystemSearchManager, getWorkspaceInfo, getWorkspaceNames, initRepositoryDescriptors, initStartupWorkspaces, isSingleValueDescriptor, loggingOut, sanityCheck, setDescriptor, setDescriptor, setDescriptor, setReferentialIntegrityChecking, shutdown
-
Methods inherited from class org.apache.jackrabbit.commons.AbstractRepository
isStandardDescriptor, login, login, login, login
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.jackrabbit.api.JackrabbitRepository
login
-
Methods inherited from interface javax.jcr.Repository
isStandardDescriptor, login, login, login
-
-
-
-
Constructor Detail
-
AmetysRepository
public AmetysRepository(RepositoryConfig config) throws RepositoryException
Creates a Repository.- Parameters:
config
- the repository configuration.- Throws:
RepositoryException
- if an error occurs.
-
-
Method Detail
-
getRepositoryStatistics
public RepositoryStatistics getRepositoryStatistics()
Get the JCR repository statistics- Returns:
- a
RepositoryStatistics
representing all the statistics available
-
createSessionInstance
protected SessionImpl createSessionInstance(AuthContext loginContext, WorkspaceConfig wspConfig) throws AccessDeniedException, RepositoryException
- Overrides:
createSessionInstance
in classRepositoryImpl
- Throws:
AccessDeniedException
RepositoryException
-
createSessionInstance
protected SessionImpl createSessionInstance(Subject subject, WorkspaceConfig wspConfig) throws AccessDeniedException, RepositoryException
- Overrides:
createSessionInstance
in classRepositoryImpl
- Throws:
AccessDeniedException
RepositoryException
-
onSessionCreated
protected void onSessionCreated(SessionImpl session)
- Overrides:
onSessionCreated
in classRepositoryImpl
-
loggedOut
public void loggedOut(SessionImpl session)
- Specified by:
loggedOut
in interfaceSessionListener
- Overrides:
loggedOut
in classRepositoryImpl
-
doShutdown
protected void doShutdown()
- Overrides:
doShutdown
in classRepositoryImpl
-
login
public Session login(Credentials credentials, String workspaceName) throws LoginException, NoSuchWorkspaceException, RepositoryException
- Specified by:
login
in interfaceRepository
- Overrides:
login
in classRepositoryImpl
- Throws:
LoginException
NoSuchWorkspaceException
RepositoryException
-
-