Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.modeshape.jcr
Class JcrEngine

    java.lang.Object
      org.modeshape.repository.ModeShapeEngine
          org.modeshape.jcr.JcrEngine

All Implemented Interfaces:
  Repositories

    @ThreadSafe
    public class JcrEngine

extends ModeShapeEngine
implements Repositories

The basic component that encapsulates the ModeShape services, including the `Repository` instances.

Nested Class Summary
`protected class` | `JcrEngine.JcrRepositoryHolder`
`protected class` | `JcrEngine.RepositoryInitializer`

Nested classes/interfaces inherited from class org.modeshape.repository.ModeShapeEngine
`ModeShapeEngine.ConfigurationScanner`

Field Summary

Fields inherited from class org.modeshape.repository.ModeShapeEngine
`configuration, CONFIGURATION_REPOSITORY_NAME, context, DEFAULT_GARBAGE_COLLECTION_INTERVAL_IN_SECONDS, problems, scanner`

Method Summary
`boolean` | `awaitTermination(long timeout, TimeUnit unit)` Blocks until the shutdown has completed, or the timeout occurs, or the current thread is interrupted, whichever happens first.
`protected void` | `checkConfiguration(Subgraph configuration)` Check the configuration given by the supplied graph.
`protected JcrRepository` | `doCreateJcrRepository(String repositoryName)`
`String` | `getEngineVersion()` Get the version of this engine.
`protected Logger` | `getLogger()`
`JcrRepository` | `getRepository(String repositoryName)` Get the `Repository` implementation for the named repository.
`Set<String>` | `getRepositoryNames()` Get the names of each of the JCR repositories.
`Map<String,Object>` | `initDescriptors()`
`protected boolean` | `isTrue(Object value)`
`protected ModeShapeConfigurationException` | `newConfigurationException(String msg)` Construct a new ModeShapeConfigurationException.
`protected void` | `preShutdown()`
`protected Problems` | `problems()`
`protected String` | `readable(Location location)`
`protected String` | `readable(Name name)`
`protected String` | `readable(Path path)`
`void` | `shutdownAndAwaitTermination(long timeout, TimeUnit unit)` This method is equivalent to calling `ModeShapeEngine.shutdown()` followed by `awaitTermination(long, TimeUnit)`, except that after those methods are called any remaining JCR sessions are terminated automatically.
`void` | `start()` Start this engine to make it available for use.
`void` | `start(boolean validateRepositoryConfigs)` Start this engine to make it available for use, and optionally start each of the repositories in the configuration.
`void` | `start(boolean validateRepositoryConfigs, long timeout, TimeUnit timeoutUnit)` Start this engine to make it available for use, and optionally start each of the repositories in the configuration.
`protected String` | `string(Object value)`

Methods inherited from class org.modeshape.repository.ModeShapeEngine
`checkProblemsOnStartup, checkRunning, getConfigurationGraph, getConfigurationSubgraph, getExecutionContext, getGraph, getGraph, getMimeTypeDetector, getProblems, getRepositoryConnectionFactory, getRepositoryService, getRepositorySource, getSequencingService, getTextExtractor, logger, newConfigurationScanner, postShutdown, shutdown, startGcService`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Method Detail

### preShutdown

    protected void preShutdown()

  Overrides:
    `preShutdown` in class `ModeShapeEngine`

### awaitTermination

    public boolean awaitTermination(long timeout,
                                    TimeUnit unit)
                             throws InterruptedException

  Blocks until the shutdown has completed, or the timeout occurs, or the current thread is interrupted, whichever happens first.

  Overrides:
    `awaitTermination` in class `ModeShapeEngine`
  Parameters:
    `timeout` - the maximum time to wait for each component in this engine
    `unit` - the time unit of the timeout argument
  Returns:
    `true` if this service complete shut down and `false` if the timeout elapsed before it was shut down completely
  Throws:
    `InterruptedException` - if interrupted while waiting

### checkConfiguration

    protected void checkConfiguration(Subgraph configuration)

  Check the configuration given by the supplied graph.

  Overrides:
    `checkConfiguration` in class `ModeShapeEngine`
  Parameters:
    `configuration` - the configuration subgraph
  See Also:
    `ModeShapeEngine.checkConfiguration(org.modeshape.graph.Subgraph)`

### start

    public void start()

  Start this engine to make it available for use.

  Overrides:
    `start` in class `ModeShapeEngine`
  Throws:
    `IllegalStateException` - if this method is called when already shut down.
    `JcrConfigurationException` - if there is an error in the configuration or any of the services that prevents proper startup
  See Also:
    `start(boolean)`, `ModeShapeEngine.shutdown()`

### start

    public void start(boolean validateRepositoryConfigs)

  Start this engine to make it available for use, and optionally start each of the repositories in the configuration. Any errors starting the repositories will be logged as problems.

  This method starts each repository in parallel, and returns only after all repositories have been started (or failed startup).

  Parameters:
    `validateRepositoryConfigs` - true if the configurations of each repository should be validated and each repository started/initialized, or false otherwise
  Throws:
    `IllegalStateException` - if this method is called when already shut down.
    `JcrConfigurationException` - if there is an error in the configuration or any of the services that prevents proper startup
  See Also:
    `start()`, `ModeShapeEngine.shutdown()`

### start

    public void start(boolean validateRepositoryConfigs,
                      long timeout,
                      TimeUnit timeoutUnit)

  Start this engine to make it available for use, and optionally start each of the repositories in the configuration. Any errors starting the repositories will be logged as problems.

  This method starts each repository in parallel, and returns after the supplied timeout or after all repositories have been started (or failed startup), whichever comes first.

  Parameters:
    `validateRepositoryConfigs` - true if the configurations of each repository should be validated and each repository started/initialized, or false otherwise
    `timeout` - the maximum time to wait; can be 0 or a positive number, but use a negative number to wait indefinitely until all repositories are started (or failed)
    `timeoutUnit` - the time unit of the `timeout` argument; may not be null, but ignored if `timeout` is negative
  Throws:
    `IllegalStateException` - if this method is called when already shut down.
    `JcrConfigurationException` - if there is an error in the configuration or any of the services that prevents proper startup
  See Also:
    `start()`, `ModeShapeEngine.shutdown()`

### newConfigurationException

    protected ModeShapeConfigurationException newConfigurationException(String msg)

  Construct a new ModeShapeConfigurationException. This method can be overridden by subclasses when a subclass of `ModeShapeConfigurationException` is to be thrown from `ModeShapeEngine.start()`.

  Overrides:
    `newConfigurationException` in class `ModeShapeEngine`
  Parameters:
    `msg` - the message
  Returns:
    the exception; may not be null
  See Also:
    `ModeShapeEngine.newConfigurationException(java.lang.String)`

### getEngineVersion

    public String getEngineVersion()

  Get the version of this engine.

  Returns:
    version

### getRepository

    public final JcrRepository getRepository(String repositoryName)
                                      throws RepositoryException

  Get the `Repository` implementation for the named repository.

  Specified by:
    `getRepository` in interface `Repositories`
  Parameters:
    `repositoryName` - the name of the repository, which corresponds to the name of a configured `RepositorySource`
  Returns:
    the named repository instance
  Throws:
    `IllegalArgumentException` - if the repository name is null, blank or invalid
    `RepositoryException` - if there is no repository with the specified name
    `IllegalStateException` - if this engine was not `started`

### getRepositoryNames

    public Set<String> getRepositoryNames()

  Get the names of each of the JCR repositories.

  Specified by:
    `getRepositoryNames` in interface `Repositories`
  Returns:
    the immutable names of the repositories that exist at the time this method is called

### doCreateJcrRepository

    protected JcrRepository doCreateJcrRepository(String repositoryName)
                                           throws RepositoryException,
                                                  PathNotFoundException

  Throws:
    `RepositoryException`
    `PathNotFoundException`

### readable

    protected final String readable(Name name)

### readable

    protected final String readable(Path path)

### readable

    protected final String readable(Location location)

### string

    protected final String string(Object value)

### isTrue

    protected final boolean isTrue(Object value)

### initDescriptors

    public Map<String,Object> initDescriptors()

  Returns:
    descriptors

### shutdownAndAwaitTermination

    public void shutdownAndAwaitTermination(long timeout,
                                            TimeUnit unit)
                                     throws InterruptedException

  This method is equivalent to calling `ModeShapeEngine.shutdown()` followed by `awaitTermination(long, TimeUnit)`, except that after those methods are called any remaining JCR sessions are terminated automatically. This is useful when shutting down while there are long-running JCR sessions (such as for event listeners).

  Parameters:
    `timeout` - the maximum time to wait for each component in this engine
    `unit` - the time unit of the timeout argument
  Throws:
    `InterruptedException` - if interrupted while waiting

### getLogger

    protected Logger getLogger()

### problems

    protected Problems problems()

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2008-2012 JBoss, a division of Red Hat. All Rights Reserved.