# Package org.apache.cayenne.access

package org.apache.cayenne.access

Contains classes that make up Cayenne ORM stack. Three main classes from top to bottom are DataContext, DataDomain and DataNode.

- Related Packages
  Package
  Description
  org.apache.cayenne
  Contains persistence APIs directly accessible by users.
  org.apache.cayenne.access.dbsync
  org.apache.cayenne.access.event
  org.apache.cayenne.access.flush
  org.apache.cayenne.access.jdbc
  Contains classes that handle JDBC interactions.
  org.apache.cayenne.access.sqlbuilder
  org.apache.cayenne.access.translator
  org.apache.cayenne.access.types
  Defines an extendable mechanism to map Java types to JDBC types.
- Class
  Description
  AttributeFault
  DataContext
  The most common implementation of `ObjectContext`.
  DataContextDelegate
  Defines API for a DataContext "delegate" - an object that is temporarily passed control by DataContext at some critical points in the normal flow of execution.
  DataDomain
  DataDomain performs query routing functions in Cayenne.
  DataNode
  An abstraction of a single physical data storage.
  DataRowStore
  A fixed size cache of DataRows keyed by ObjectId.
  DataRowStoreFactory
  A factory for creating `DataRowStore`
  DbGenerator
  Utility class that generates database schema based on Cayenne mapping.
  DefaultDataRowStoreFactory
  A default implementation of `DataRowStoreFactory`
  DefaultObjectMapRetainStrategy
  Default implementation of `ObjectMapRetainStrategy`.
  DeferredValue
  A value that is not known until a preceding row of the same transaction has been executed, e.g. a generated PK propagated to a dependent PK or to a foreign key.
  DomainStoppedException
  An exception thrown on attempts to access a DataDomain after it was explicitly shut down by the user.
  IncrementalFaultList<E>
  A synchronized list that serves as a container of Persistent objects.
  NoSyncObjectStore
  An `ObjectStore` which doesn't receive notifications on parent's `DataRowStore` events.
  ObjectDiff
  A dynamic GraphDiff that represents a delta between object simple properties at diff creation time and its current state.
  ObjectMapRetainStrategy
  A strategy for retaining objects in `ObjectStore`.
  ObjectStore
  ObjectStore stores objects using their ObjectId as a key.
  ObjectStoreGraphDiff
  A GraphDiff facade for the ObjectStore changes.
  OperationHints
  Defines API that allows a DataNode to obtain information about query execution strategy.
  OperationObserver
  Defines a set of callback methods that allow `DataNode` to pass back query results and notify caller about exceptions.
  OptimisticLockException
  An exception thrown on optimistic lock failure.
  ToManyList<E>
  A list that holds objects for to-many relationships.
  ToManyListFault
  ToManyMapFault
  ToManySet<E>
  ToManySetFault
  ToOneFault