Interface JackrabbitRepository

All Superinterfaces:
Repository
All Known Implementing Classes:
OsgiRepository, RepositoryImpl

@ProviderType public interface JackrabbitRepository extends Repository
The Jackrabbit repository interface. This interface contains the Jackrabbit-specific extensions to the JCR Repository interface.
  • Field Details

    • OPTION_USER_MANAGEMENT_SUPPORTED

      static final String OPTION_USER_MANAGEMENT_SUPPORTED
      Key to a boolean descriptor. Returns true if and only if user management is supported.
      See Also:
    • OPTION_PRINCIPAL_MANAGEMENT_SUPPORTED

      static final String OPTION_PRINCIPAL_MANAGEMENT_SUPPORTED
      Key to a boolean descriptor. Returns true if and only if principal management is supported.
      See Also:
    • OPTION_PRIVILEGE_MANAGEMENT_SUPPORTED

      static final String OPTION_PRIVILEGE_MANAGEMENT_SUPPORTED
      Key to a boolean descriptor. Returns true if and only if privilege management is supported.
      See Also:
  • Method Details

    • login

      Session login(Credentials credentials, String workspaceName, Map<String,Object> attributes) throws LoginException, NoSuchWorkspaceException, RepositoryException
      Equivalent to login(credentials, workspaceName) except that the returned Session instance contains the given extra session attributes in addition to any included in the given Credentials instance. Attribute names from the credentials and the attribute map must not overlap. In case of an overlap implementation may throw an RepositoryException.

      The attributes are implementation-specific and may affect the behavior of the returned session. Unlike credentials attributes, these separately passed session attributes are guaranteed not to affect the authentication of the client.

      An implementation that does not support a particular session attribute is expected to ignore it and not make it available through the returned session. A client that depends on specific behavior defined by a particular attribute can check whether the returned session contains that attribute to verify whether the underlying repository implementation supports that feature.

      Parameters:
      credentials - the credentials of the user
      workspaceName - the name of a workspace
      attributes - implementation-specific session attributes
      Returns:
      a valid session for the user to access the repository
      Throws:
      LoginException - if authentication or authorization for the specified workspace fails
      NoSuchWorkspaceException - if the specified workspace is not recognized
      RepositoryException - if another error occurs
    • shutdown

      void shutdown()
      Shuts down the repository. A Jackrabbit repository instance contains a acquired resources and cached data that needs to be released and persisted when the repository is no longer used. This method handles all these shutdown tasks and must therefore be called by the client application once the repository instance is no longer used.

      Possible errors are logged rather than thrown as exceptions as there is little that a client application could do in such a case.