public abstract class RepositoryInitializationHandler extends Object
The handler is called each time a repository is opened in a JVM session. This can be used to create a default structure for the repository.
To register a repository initializer MyInitHandler
you should do:
RepositoryInitializationHandler.setInstance(new MyInitHandler());
If you want to create an initialization chain you can implement to delegate to the parent handle the default initialization and then to do your specific initialization stuff
RepositoryInitializationHandler parentHandler = RepositoryInitializationHandler.getInstance();
MyInitHandler myHandler = new MyInitHandler(parentHandler);
RepositoryInitializationHandler.setInstance(myHandler);
...
class MyHandler extends RepositoryInitializationHandler {
...
public initializeRepository(CoreSession session) {
if (parentHandler != null) parentHandler.initializeRepository(session);
// do my own initialization here
...
}
...
}
Important Note: Use the given session to initialize the repository. Do not create other repository sessions when initializing the repository to avoid dead locks.
Modifier and Type | Field and Description |
---|---|
protected RepositoryInitializationHandler |
next
The next handler in the chain if any or null otherwise
|
protected RepositoryInitializationHandler |
previous
The parent handler if any otherwise null
|
Constructor and Description |
---|
RepositoryInitializationHandler() |
Modifier and Type | Method and Description |
---|---|
abstract void |
doInitializeRepository(CoreSession session) |
static RepositoryInitializationHandler |
getInstance() |
RepositoryInitializationHandler |
getNext() |
RepositoryInitializationHandler |
getPrevious() |
void |
initializeRepository(CoreSession session)
Must be implemented by custom initializers.
|
void |
install() |
void |
uninstall() |
protected RepositoryInitializationHandler previous
protected RepositoryInitializationHandler next
public RepositoryInitializationHandler()
public static RepositoryInitializationHandler getInstance()
public abstract void doInitializeRepository(CoreSession session)
public void initializeRepository(CoreSession session)
session
- the current sessionpublic void install()
public void uninstall()
public RepositoryInitializationHandler getPrevious()
public RepositoryInitializationHandler getNext()
Copyright © 2018 Nuxeo. All rights reserved.