# Hierarchy For Package org.apache.cayenne.access

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - org.apache.cayenne.BaseContext (implements org.apache.cayenne.ObjectContext)
    - org.apache.cayenne.access.DataContext
  - org.apache.cayenne.access.ClientServerChannel (implements org.apache.cayenne.DataChannel)
  - org.apache.cayenne.access.DataDomain (implements org.apache.cayenne.DataChannel, org.apache.cayenne.access.QueryEngine)
  - org.apache.cayenne.access.DataNode (implements org.apache.cayenne.access.QueryEngine)
  - org.apache.cayenne.access.DataRowStore (implements java.io.Serializable)
  - org.apache.cayenne.access.DbGenerator
  - org.apache.cayenne.access.DefaultDataRowStoreFactory (implements org.apache.cayenne.access.DataRowStoreFactory)
  - org.apache.cayenne.access.DefaultObjectMapRetainStrategy (implements org.apache.cayenne.access.ObjectMapRetainStrategy)
  - org.apache.cayenne.Fault (implements java.io.Serializable)
    - org.apache.cayenne.access.AttributeFault
    - org.apache.cayenne.access.ToManyListFault
    - org.apache.cayenne.access.ToManyMapFault
    - org.apache.cayenne.access.ToManySetFault
    - org.apache.cayenne.access.ToOneFault
  - org.apache.cayenne.access.IncrementalFaultList<E> (implements java.util.List<E>, java.io.Serializable)
  - org.apache.cayenne.access.LegacyDataDomainFlushAction (implements org.apache.cayenne.access.flush.DataDomainFlushAction)
  - org.apache.cayenne.access.LegacyDataDomainFlushActionFactory (implements org.apache.cayenne.access.flush.DataDomainFlushActionFactory)
  - org.apache.cayenne.graph.NodeDiff (implements java.lang.Comparable<T>, org.apache.cayenne.graph.GraphDiff)
    - org.apache.cayenne.access.ObjectDiff
  - org.apache.cayenne.access.ObjectStore (implements org.apache.cayenne.graph.GraphManager, java.io.Serializable, org.apache.cayenne.access.event.SnapshotEventListener)
    - org.apache.cayenne.access.NoSyncObjectStore
  - org.apache.cayenne.access.ObjectStoreGraphDiff (implements org.apache.cayenne.graph.GraphDiff)
  - org.apache.cayenne.util.RelationshipFault<E>
    - org.apache.cayenne.util.PersistentObjectList<E> (implements java.util.List<E>, org.apache.cayenne.util.PersistentObjectCollection<E>, org.apache.cayenne.ValueHolder<E>)
      - org.apache.cayenne.access.ToManyList<E> (implements java.io.Serializable)
    - org.apache.cayenne.util.PersistentObjectSet<E> (implements org.apache.cayenne.util.PersistentObjectCollection<E>, java.util.Set<E>, org.apache.cayenne.ValueHolder<E>)
      - org.apache.cayenne.access.ToManySet<E> (implements java.io.Serializable)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - org.apache.cayenne.CayenneRuntimeException
          - org.apache.cayenne.access.DomainStoppedException
          - org.apache.cayenne.access.OptimisticLockException

## Interface Hierarchy

- org.apache.cayenne.access.DataContextDelegate
- org.apache.cayenne.access.DataRowStoreFactory
- org.apache.cayenne.access.ObjectMapRetainStrategy
- org.apache.cayenne.access.OperationHints
  - org.apache.cayenne.access.OperationObserver
- org.apache.cayenne.access.QueryEngine