public class Oak
extends java.lang.Object
ContentRepository
instances with
a set of specified plugin components. This class acts as a public facade
that hides the internal implementation classes and the details of how
they get instantiated and wired together.Modifier and Type | Class and Description |
---|---|
static class |
Oak.OakDefaultComponents |
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DEFAULT_WORKSPACE_NAME
Constant for the default workspace name
|
Modifier and Type | Method and Description |
---|---|
ContentRepository |
createContentRepository()
Returns the content repository instance created with the given
configuration.
|
ContentSession |
createContentSession()
Creates a content repository with the given configuration
and logs in to the default workspace with no credentials,
returning the resulting content session.
|
Root |
createRoot()
Creates a content repository with the given configuration
and returns a
Root instance after logging in to the
default workspace with no credentials. |
static java.util.concurrent.ExecutorService |
defaultExecutorService()
Default
ExecutorService used for scheduling concurrent tasks. |
static java.util.concurrent.ScheduledExecutorService |
defaultScheduledExecutor()
Default
ScheduledExecutorService used for scheduling background tasks. |
@NotNull Whiteboard |
getWhiteboard() |
@NotNull Oak |
with(@NotNull Clusterable c)
Define the current repository as being a
Clusterable one. |
@NotNull Oak |
with(@NotNull CommitHook hook)
Associates the given commit hook with the repository to be created.
|
@NotNull Oak |
with(@NotNull ConflictHandler conflictHandler)
Deprecated.
Use
with(ThreeWayConflictHandler) instead |
@NotNull Oak |
with(@NotNull Editor editor)
Associates the given editor with the repository to be created.
|
@NotNull Oak |
with(@NotNull EditorProvider provider)
Associates the given editor provider with the repository to be created.
|
@NotNull Oak |
with(@NotNull java.util.concurrent.Executor executor) |
@NotNull Oak |
with(@NotNull IndexEditorProvider provider)
Associates the given index hook provider with the repository to
be created.
|
@NotNull Oak |
with(@NotNull javax.management.MBeanServer mbeanServer) |
@NotNull Oak |
with(@NotNull Observer observer) |
@NotNull Oak |
with(@NotNull QueryIndexProvider provider)
Associates the given query index provider with the repository to
be created.
|
@NotNull Oak |
with(@NotNull QueryLimits settings) |
@NotNull Oak |
with(@NotNull RepositoryInitializer initializer) |
@NotNull Oak |
with(@NotNull java.util.concurrent.ScheduledExecutorService scheduledExecutor) |
@NotNull Oak |
with(@NotNull SecurityProvider securityProvider) |
@NotNull Oak |
with(@NotNull java.lang.String defaultWorkspaceName)
Sets the default workspace name that should be used in case of login
with
null workspace name. |
@NotNull Oak |
with(@NotNull ThreeWayConflictHandler conflictHandler) |
@NotNull Oak |
with(@NotNull Whiteboard whiteboard) |
Oak |
withAsyncIndexing()
Deprecated.
Use
withAsyncIndexing(String, long) instead |
Oak |
withAsyncIndexing(@NotNull java.lang.String name,
long delayInSeconds)
Enable the asynchronous (background) indexing behavior for the provided
task name.
|
Oak |
withAtomicCounter() |
Oak |
withFailOnMissingIndexProvider() |
public static final java.lang.String DEFAULT_WORKSPACE_NAME
public Oak(NodeStore store)
public Oak()
public static java.util.concurrent.ScheduledExecutorService defaultScheduledExecutor()
ScheduledExecutorService
used for scheduling background tasks.
This default spawns up to 32 background thread on an as need basis. Idle
threads are pruned after one minute.public static java.util.concurrent.ExecutorService defaultExecutorService()
ExecutorService
used for scheduling concurrent tasks.
This default spawns as many threads as required with a priority of
Thread.MIN_PRIORITY
. Idle threads are pruned after one minute.@NotNull public @NotNull Oak with(@NotNull @NotNull Clusterable c)
Clusterable
one.c
- @NotNull public @NotNull Oak with(@NotNull @NotNull java.lang.String defaultWorkspaceName)
null
workspace name. If this method has not been called
some internal default value will be used.defaultWorkspaceName
- The name of the default workspace.@NotNull public @NotNull Oak with(@NotNull @NotNull RepositoryInitializer initializer)
@NotNull public @NotNull Oak with(@NotNull @NotNull QueryLimits settings)
@NotNull public @NotNull Oak with(@NotNull @NotNull QueryIndexProvider provider)
provider
- query index provider@NotNull public @NotNull Oak with(@NotNull @NotNull IndexEditorProvider provider)
provider
- index hook provider@NotNull public @NotNull Oak with(@NotNull @NotNull CommitHook hook)
hook
- commit hook@NotNull public @NotNull Oak with(@NotNull @NotNull EditorProvider provider)
provider
- editor provider@NotNull public @NotNull Oak with(@NotNull @NotNull Editor editor)
editor
- editor@NotNull public @NotNull Oak with(@NotNull @NotNull SecurityProvider securityProvider)
@Deprecated @NotNull public @NotNull Oak with(@NotNull @NotNull ConflictHandler conflictHandler)
with(ThreeWayConflictHandler)
insteadconflictHandler
- conflict handler@NotNull public @NotNull Oak with(@NotNull @NotNull ThreeWayConflictHandler conflictHandler)
@NotNull public @NotNull Oak with(@NotNull @NotNull java.util.concurrent.ScheduledExecutorService scheduledExecutor)
@NotNull public @NotNull Oak with(@NotNull @NotNull java.util.concurrent.Executor executor)
@NotNull public @NotNull Oak with(@NotNull @NotNull javax.management.MBeanServer mbeanServer)
@NotNull public @NotNull Oak with(@NotNull @NotNull Whiteboard whiteboard)
@Deprecated public Oak withAsyncIndexing()
withAsyncIndexing(String, long)
insteadEnable the asynchronous (background) indexing behavior.
Please note that when enabling the background indexer, you need to take
care of calling
#shutdown
on the executor
provided for this Oak instance.
public Oak withFailOnMissingIndexProvider()
public Oak withAtomicCounter()
public Oak withAsyncIndexing(@NotNull @NotNull java.lang.String name, long delayInSeconds)
Enable the asynchronous (background) indexing behavior for the provided task name.
Please note that when enabling the background indexer, you need to take
care of calling
#shutdown
on the executor
provided for this Oak instance.
@NotNull public @NotNull Whiteboard getWhiteboard()
public ContentRepository createContentRepository()
public ContentSession createContentSession()
This method exists mostly as a convenience for one-off tests, as there's no way to create other sessions for accessing the same repository.
There is typically no need to explicitly close the returned session unless the repository has explicitly been configured to reserve some resources until all sessions have been closed. The repository will be garbage collected once the session is no longer used.
public Root createRoot()
Root
instance after logging in to the
default workspace with no credentials.
This method exists mostly as a convenience for one-off tests, as the returned root is the only way to access the session or the repository.
Note that since there is no way to close the underlying content session, this method should only be used when no components that require sessions to be closed have been configured. The repository and the session will be garbage collected once the root is no longer used.
Copyright © 2010 - 2020 Adobe. All Rights Reserved