# Package org.modeshape.jcr.cache

- Interface Summary
  Interface | Description
  --- | ---
  CachedNode | A representation of a node as stored within the cache.
  CachedNode.Properties |
  CachedNodeSupplier |
  ChildReferences | An interface used to access the `ChildReference` instances owned by a parent node.
  ChildReferences.Changes | The representation of a set of changes for the child references.
  ChildReferences.ChildInsertions | A representation of the child references that were inserted before some other node.
  ChildReferences.Context | The context in which the names are evaluated.
  MutableCachedNode |
  MutableCachedNode.NodeChanges | Interface which exposes all the changes that have occurred on a `MutableCachedNode` instance
  MutableCachedNode.PermissionChanges | Interface which exposes the ACL-related changes for mutable cached nodes.
  NodeCache |
  RepositoryCache.ContentInitializer |
  SessionCache |
  SessionCache.PreSave | The definition of a callback that can be implemented and passed to `SessionCache.save(SessionCache, PreSave)` and `SessionCache.save(Set, SessionCache, PreSave)`, allowing the caller to recieve a hook where they can interrogate each of the changed nodes and perform additional logic prior to the actual persisting of the changes.
  SessionCache.SaveContext | The context of a save operation, created during each call to `SessionCache.save()` and passed to the `PreSave#process(MutableCachedNode, SaveContext)` invocations.
  SessionEnvironment | Interface which exposes global repository subsystems/configuration to running sessions.

- Class Summary
  Class | Description
  --- | ---
  AllPathsCache | A simple cache of all valid paths for a given node, where each node may have 1 or more valid paths due to `additional parents`.
  ChildReference | An immutable reference to a child node.
  ChildReferences.BasicContext | A `ChildReferences.Context` implementation that has no changes but maintains the SNS indexes for nodes with any name.
  ChildReferences.NoChanges |
  ChildReferences.NoContext | A `ChildReferences.Changes` implementation that has no changes and that is useful when there are never any siblings with the same names, since it always returns '1' for the SNS index.
  ChildReferences.NoSnsIndexesContext | A `ChildReferences.Context` implementation that has no changes and that always returns '1' for the SNS index.
  ChildReferences.SingleNameContext | A `ChildReferences.Context` implementation that has no changes and can be used to find the SNS indexes for nodes named a single name.
  ChildReferences.WithChanges | A `ChildReferences.Context` implementation that has changes and can be used to find the SNS indexes for nodes named a single name.
  NodeKey | An immutable unique key for a node within the `repository`'s `database`.
  PathCache | A simple cache of node paths, useful when obtaining the path for many nodes on a subgraph.
  PropertyTypeUtil | A utility for working with `JCR property types` and `ModeShape property types`.
  ReferrerCounts | An immutable snapshot of the referrers to a node.
  ReferrerCounts.MutableReferrerCounts |
  RepositoryCache |
  RepositoryPathCache | A set of `PathCache` instances keyed by workspace names.
  SessionCacheWrapper | A `SessionCache` implementation that wraps another and is suitable to extend and overwrite only those methods that are required.
  SiblingCounter | A function interface that determines (potentially lazily) the number of siblings with a given name.

- Enum Summary
  Enum | Description
  --- | ---
  CachedNode.ReferenceType |

- Exception Summary
  Exception | Description
  --- | ---
  DocumentAlreadyExistsException | An exception signalling that a document could not be created because one already exists in the database.
  DocumentNotFoundException | An exception signalling that a node does not exist.
  DocumentStoreException | An exception signalling that a failure occurred within a document store.
  LockFailureException | An exception signalling that a node could not be locked.
  NodeNotFoundException | An exception signalling that a node does not exist.
  NodeNotFoundInParentException | An exception signalling that a node does not exist in the specified parent.
  PathNotFoundException | An exception signalling that a node at a supplied path does not exist.
  ReferentialIntegrityException | An exception signalling that a set of nodes could not be deleted because there are other nodes that contain JCR REFERENCE properties pointing to these nodes, preventing their deletion.
  WorkspaceNotFoundException | An exception signalling that a node does not exist.
  WrappedException | An exception that wraps another non-runtime exception.

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