Class AbstractSlingRepositoryManager
AbstractSlingRepositoryManager is the basis for controlling
the JCR repository instances used by Sling. As a manager it starts and stops
the actual repository instance, manages service registration and hands out
SlingRepository instances to be used by the consumers.
This base class controls the livecycle of repository instance whereas implementations of this class provide actual integration into the runtime context. The livecycle of the repository instance is defined as follows:
To start the repository instance, the implementation calls the
start(BundleContext, String, boolean)method which goes through the
steps of instantiating the repository, setting things up, and registering the
repository as an OSGi service:
acquireRepository()create(Bundle)registerService()
setup method,
whatever code was there can be moved to the create method.
If starting the repository fails, the method stoppingOnError(String, Throwable)
will be called. By default the exception is logged as an error, but this can
be customized by overwriting the method.
To stop the repository instance, the implementation calls the stop()
method which goes through the steps of unregistering the OSGi service,
tearing all special settings down and finally shutting down the repository:
unregisterService(ServiceRegistration)destroy(AbstractSlingRepository2)disposeRepository(Repository)
Instances of this class manage a single repository instance backing the OSGi service instances. Each consuming bundle, though, gets its own service instance backed by the single actual repository instance managed by this class.
- Since:
- API version 2.3 (bundle version 2.2.2)
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal StringReturns the default workspace, which may benullmeaning to use the repository provided default workspace.final booleanReturns whether to disable theSlingRepository.loginAdministrativemethod or not.
-
Constructor Details
-
AbstractSlingRepositoryManager
public AbstractSlingRepositoryManager()
-
-
Method Details
-
getDefaultWorkspace
Returns the default workspace, which may benullmeaning to use the repository provided default workspace.- Returns:
- the default workspace or
nullindicating the repository's default workspace is actually used.
-
isDisableLoginAdministrative
public final boolean isDisableLoginAdministrative()Returns whether to disable theSlingRepository.loginAdministrativemethod or not.- Returns:
trueifSlingRepository.loginAdministrativeis disabled.
-