Nuxeo ECM Projects 5.4.3-SNAPSHOT

org.nuxeo.ecm.core.repository
Class RepositoryInitializationHandler

java.lang.Object
  extended by org.nuxeo.ecm.core.repository.RepositoryInitializationHandler
Direct Known Subclasses:
DocumentStoreManager, RepositoryInitializationListener

public abstract class RepositoryInitializationHandler
extends Object

A repository initialization handler is responsible for initializing a repository content.

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.

Author:
Bogdan Stefanescu

Constructor Summary
RepositoryInitializationHandler()
           
 
Method Summary
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()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RepositoryInitializationHandler

public RepositoryInitializationHandler()
Method Detail

getInstance

public static RepositoryInitializationHandler getInstance()

doInitializeRepository

public abstract void doInitializeRepository(CoreSession session)
                                     throws ClientException
Throws:
ClientException

initializeRepository

public void initializeRepository(CoreSession session)
                          throws ClientException
Must be implemented by custom initializers.

Parameters:
session - the current session
Throws:
ClientException

install

public void install()

uninstall

public void uninstall()

getPrevious

public RepositoryInitializationHandler getPrevious()

getNext

public RepositoryInitializationHandler getNext()

Nuxeo ECM Projects 5.4.3-SNAPSHOT

Copyright © 2011 Nuxeo SAS. All Rights Reserved.