All Classes and Interfaces
Class
Description
AbstractMutableTree
extends AbstractTree
with implementations
for most write methods of Tree
.AbstractTree
provides default implementations for most
read methods of Tree
.ProtectedNodeImporter
implementation that handles access control lists,
entries and restrictions.Default implementation of the
JackrabbitAccessControlManager
interface.AccessControlValidatorProvider
aimed to provide a root validator
that makes sure access control related content modifications (adding, modifying
and removing access control policies) are valid according to the
constraints defined by this access control implementation.EventTypeFilter
filters based on the access rights of the observing session.This
EventFilter
implementation excludes events for child nodes
of added nodes.Implementation of the
PermissionProvider
interface that grants full
permission everywhere.An AND condition.
This
ThreeWayConflictHandler
implementation resolves conflicts to
ThreeWayConflictHandler.Resolution.THEIRS
and in addition marks nodes where a
conflict occurred with the mixin rep:MergeConflict
:A factory for syntax tree elements.
A visitor to access all elements.
The base class to visit all elements.
This class is responsible for creating and deleting checkpoints asynchronously.
Index update callback that tries to raise the async status flag when
the first index change is detected.
Manages a node as Atomic Counter: a node which will handle at low level a protected
property (
AtomicCounterEditor.PROP_COUNTER
) in an atomic way.Provide an instance of
AtomicCounterEditor
.Default implementation of the
AuthenticationConfiguration
with the
following characteristics:
LoginContextProvider
: Returns the default implementation of
LoginContextProvider
that handles standard JAAS based logins and
deals with pre-authenticated subjects.Default implementation of the
AccessControlConfiguration
.Implementation of the user management that allows to set the autosave flag.
A bind variable.
An OSGi component that binds to all
CacheStatsMBean
instances and
exposes their counters as Metric
s.A ChangeCollectorProvider can be hooked into Oak thus enabling the collection
of ChangeSets of changed items of a commit, which downstream Observers can
then use at their convenience.
A ChangeSetFilter is capable of inspecting a ChangeSet
and deciding if the corresponding consumer
(eg EventListener) is possibly interested in it
or definitely not.
The "ischildnode(...)" condition.
The "ischildnode(...)" join condition.
This conflict handler instance takes care of properly merging conflicts
occurring by concurrent reorder operations.
The function "coalesce(..)".
A result column expression.
This
CommitHook
can be used to block or delay commits for any length of time.A comparison operation (including "like").
CompositeAuthorizationConfiguration
that combines different
authorization models.Aggregation of a list of editor providers into a single provider.
This commit hook implementation is responsible for resolving
conflicts.
Validator
which checks the presence of conflict markers
in the tree in fails the commit if any are found.TODO document
TODO document
The base class for constraints.
NodeStore
-based implementation of
the ContentRepository
interface.Extension to IndexUpdateCallback which also provides access to
IndexingContext
The copy-on-write (COW) node store implementation allows to temporarily
switch the repository into the "testing" mode, in which all the changes are
stored in a volatile storage, namely the MemoryNodeStore.
Predicate used to filter authorizables based on their declared group membership.
Deprecated.
Default implementation of
EventHandler
that
does nothing.This implementation of a
ThreeWayConflictHandler
always returns the
same resolution.This
EventFilter
implementation excludes events for child nodes
of removed nodes.The "isdescendantnode(...)" condition.
The "isdescendantnode(...)" join condition.
The base class for dynamic operands (such as a function or property).
The "a.x = b.y" join condition.
An EventAggregator can be provided via a FilterProvider
and is then used to 'aggregate' an event at creation time
(ie after filtering).
Filter for determining what changes to report the the event listener.
Continuation-based content diff implementation that generates
EventHandler
callbacks by recursing down a content diff
in a way that guarantees that only a finite number of callbacks
will be made during a EventGenerator.generate()
method call, regardless
of how large or complex the content diff is.Handler of content change events.
EventTypeFilter
filters based on event types as defined
by ObservationManager.addEventListener()
.The presence of this marker interface on a
EventListener
indicates that cluster external observation events must not be reported to that
event listener.An instance of this class provides the context for the execution of a query,
which in essence captures a stable state of the content tree from the time
the execution context was created.
An execution plan for a join or a selector.
A facet result column expression.
A filter is used by the FilteringObserver to decide whether or not a content
change should be forwarded.
Builder for
FilterProvider
instances.Filtered event handler.
A filter or lookup condition.
A FilteringAwareObserver is the stateless-variant of
an Observer which gets an explicit before as well as the
after NodeState.
Part of the FilteringObserver: the FilteringDispatcher is used
to implement the skipping (filtering) of content changes
which the FilteringDispatcher flags as NOOP_CHANGE.
NodeState implementation that decorates another node-state instance
in order to hide subtrees or partial subtrees from the consumer of
the API.
An observer that implements filtering of content changes
while at the same time supporting (wrapping) a BackgroundObserver
underneath.
Filtering iterators that are useful for queries with limit, offset, order by,
or distinct.
Instance of this class provide a
EventFilter
for observation
events and a filter for commits.This utility class provides common
EventFilter
instancesThe function "first(..)".
A fulltext "contains(...)" condition.
A fulltext search score expression.
Name mapper with no local prefix remappings.
This
Filter
implementation supports filtering on paths using
simple glob patterns.TODO document
Simple utility class for lazily tracking the current identifier during
a tree traversal that recurses down a subtree.
Simple implementation of the Root interface that only supports simple read
operations based on the
NodeState
(or ImmutableTree
)
passed to the constructor.Immutable implementation of the
Tree
interface in order to provide
the much feature rich API functionality for a given NodeState
.Implementations of this interface can be notified of progress of
commit that would update the index.
TODO document
Represents the content of a QueryIndex as well as a mechanism for keeping
this content up to date.
Extension point for plugging in different kinds of IndexEditor providers.
Captures information related to index
Service to be provided by various index implementations.
Stores diagnostic and performance information about indexing operations for reporting at the end of the indexing job.
An index name, which possibly contains two version numbers: the product
version number, and the customer version number.
A simple index row implementation.
This class defines the index selection policy constants
TODO document
A "in" comparison operation.
InitialContent
implements a RepositoryInitializer
the creates
the initial JCR/Oak repository structure.This validator checks that all changes are contained within the subtree
rooted at a given path.
Utility class providing conflict handlers used for JCR.
Conflict Handler that merges concurrent updates to
org.apache.jackrabbit.JcrConstants.JCR_LASTMODIFIED
by picking the
older of the 2 conflicting dates and
org.apache.jackrabbit.JcrConstants.JCR_CREATED
by picking the newer
of the 2 conflicting dates.The base class for join conditions.
An execution plan for a join.
A join.
The enumeration of all join types.
The function "length(..)".
A literal of a certain data type, possibly "cast(..)" of a literal.
Name mapper with local namespace mappings.
Deprecated.
Use
LockConstants
insteadA Reporter implementation that logs every nth node
and/or any nth property to the given logger on
info
level.Default login module implementation that authenticates JCR
Credentials
against the repository.The function "lower(..)".
MergingNodeStateDiff...
This filter implementation excludes generating add node
events for child nodes of the destination of a move operation.
TODO document
Deprecated.
Use
NamespaceConstants
instead.Validator service that checks that all node and property names as well
as any name values are syntactically valid and that any namespace prefixes
are properly registered.
Internal static utility class for managing the persisted namespace registry.
Validator service that checks that all node and property names as well
as any name values are syntactically valid and that any namespace prefixes
are properly registered.
A native function condition.
A mutable
Tree
implementation based on an underlying
NodeBuilder
, which tracks all changes recorded through
this tree's mutator methods.The function "localname(..)".
The function "name(..)".
Base class for
Observer
instances that group changes
by node instead of tracking them down to individual properties.The NodeStateCopier and NodeStateCopier.Builder classes allow
recursively copying a NodeState to a NodeBuilder.
The NodeStateCopier.Builder allows configuring a NodeState copy operation with
includePaths
, excludePaths
and mergePaths
.A nodetype info provider that is based on node states.
Callback which invoked for any changed node read by IndexUpdate
as part of diff traversal
Provides a way to lazily construct the path
and provides access to the current path
Deprecated.
Use
NodeTypeConstants
insteadA
NodeTypeDefDiff
represents the result of the comparison of
two node type definitions.A nodetype info mechanism.
A nodetype info mechanism.
BuiltInNodeTypes
is a utility class that registers the built-in
node types required for a JCR repository running on Oak.A "not" condition.
Builder class for constructing
ContentRepository
instances with
a set of specified plugin components.Provides version information about Oak.
The enumeration of all operators.
The enumeration of query column orders (ascending and descending).
Return the childrenNames in the order defined by the orderedChildren iterator, and merges it
with the existing children defined by allChildren.
An element of an "order by" list.
An "or" condition.
The function "path(..)".
Abstract class that simplifies development of a Reporter
that should only report every nth event (node or property seen).
CommitHook
implementation that processes any modification made to
access control content and updates persisted permission store associated
with access control related data stored in the repository.Factory for
PermissionProvider
instances.Validator implementation that asserts that the permission store is read-only.
Utility methods to evaluate permissions.
ValidatorProvider
implementation for permission evaluation associated
with write operations.Default implementation of the
PrincipalConfiguration
Restriction provider implementation used for editing access control by
principal.
Configuration for the privilege management component.
A condition to check if the property exists ("is not null").
A condition to check if the property does not exist ("is null").
Predicate on property values.
A property expression.
A "select" or "union" query.
The query engine implementation.
Used to instruct the
QueryEngineImpl
on how to act with respect of the SQL2
optimisation.Settings of the query engine.
Formatter for JCR queries in order to make them easier to read.
Represents a parsed query.
A query options (or "hints") that are used to customize the way the query is processed.
Query parser interface.
Common utilities used for user/group queries.
A validator for query.
Implementation of the
AuthorizableNodeName
that generates a random
node name that doesn't reveal the ID of the authorizable.Read-only namespace registry.
Base implementation of a
NodeTypeManager
with support for reading
node types from the Tree
returned by ReadOnlyNodeTypeManager.getTypes()
.ReadOnlyVersionManager
provides implementations for read-only
version operations modeled after the ones available in VersionManager
.Writable namespace registry.
ReadWriteNodeTypeManager
extends the ReadOnlyNodeTypeManager
with support for operations that modify node types.Extends the
ReadOnlyVersionManager
with methods to modify the
version store.A selector for selecting a node at a relative path from the node selected by
an initial selector.
A
Reporter
receives callbacks for every NodeState
and PropertyState that was accessed via a {ReportingNodeState}
instance.A decoration layer for NodeState instances that intercepts
all accesses to NodeStates and PropertyStates (getters) and
informs a
Reporter
via its callbacks that the respective
NodeStates or PropertyStates have been accessed.Default implementation of the
RepositoryManagementMBean
based
on a Whiteboard
instance, which is used to look up individual
service providers for backup (FileStoreBackupRestoreMBean
), data store
garbage collections (BlobGCMBean
) and revision store garbage
collections (RevisionGCMBean
).Default restriction provider implementation that supports the following
restrictions:
AccessControlConstants.REP_GLOB
: A simple paths matching pattern.A query result.
Implements a query result iterator which only returns a maximum number of
element from an underlying iterator starting at a given offset.
A query result row that keeps all data (for this row only) in memory.
Deprecated.
Please use
RootProvider
insteadThe exception thrown when traversing too many entries in the result.
The function "issamenode(..)".
The "issamenode(...)" join condition.
Deprecated.
Replaced by
org.apache.jackrabbit.oak.security.internal.SecurityProviderBuilder
An execution plan for one selector in a query.
A selector within a query.
Common
Selector
implementationsOverrides oak.fastQuerySize system property when available.
Support for "similar(...)
The base class of a selector and a join.
Support for "spellcheck(...)
The SQL2 parser can convert a JCR-SQL2 query to a query.
An xpath statement.
The base class for static operands (literal, bind variables).
Factory to create StatisticsProvider depending on setup.
Util class to generate a name for Stats implementations that can be used for creating labels in prometheus.
Support for "suggest(...)
Internal extension of the
MutableRoot
to be used
when an usage of the system internal subject is needed.Default implementation for the
TokenConfiguration
interface.LoginModule
implementation that is able to handle login request
based on TokenCredentials
.An index that traverses over a given subtree.
Deprecated.
Please use
TreeProvider
insteadValidator implementation that check JCR node type constraints.
Extension point that allows pluggable handling of constraint violations
Inheritance-aware node type predicate for
node states
.Represents a union query.
An universal
Filter
implementation, which can be parametrised by
a UniversalFilter.Selector
and a Predicate
.A selector instance maps call backs on
Filters
to NodeState
instances,
which should be used for determining inclusion or exclusion of the associated event.The function "upper(..)".
Default implementation of the
UserConfiguration
.UserManagerImpl...
Query manager for user specific searches.
Utils
provide some utility methods.A predicate for matching against a list of UUIDs.
The VersionableEditor provides two possible ways to handle
versionable nodes:
it can copy the version histories of versionable nodes, or
it can skip copying version histories and remove the
mix:versionable
mixin together with any related
properties (see VersionHistoryUtil.removeVersionProperties(NodeBuilder, TypePredicate)
).Commit hook which is responsible for storing the path of the versionable
node with every version history.
The VersionablePropertiesEditor adds missing versionable properties.
Deprecated.
Use
VersionConstants
insteadThis class allows to copy the version history, optionally filtering it with a
given date.
This class allows to configure the behaviour of the version copier.
This class gathers together editors related to handling version storage:
VersionEditorProvider
VersionEditor
- creates version history, handles
checking-in, checking-out and restoring, prevents a
checked-in node from being modified,
VersionStorageEditor
- validates changes on the
version storage,
VersionableCollector
- collects all existing versionable
UUIDs, so assigned histories won't be removed in the next step,
OrphanedVersionCleaner
- removes all histories that are
empty and have no longer a parent versionable node.Event filter that hides all non-visible content.
Dynamic
AuthorizableActionProvider
based on the available
whiteboard services.Dynamic
AuthorizableNodeName
based on the available
whiteboard services.Dynamic
IndexEditorProvider
based on the available
whiteboard services.Dynamic
RestrictionProvider
based on the available
whiteboard services.Dynamic
UserAuthenticationFactory
based on the available whiteboard services.This class can can convert a XPATH query to a SQL2 query.
DefaultThreeWayConflictHandler
instead.