# Package org.eclipse.emf.spi.cdo

Client service provider interfaces and useful base implementations.

- Interface Summary
  Interface | Description
  --- | ---
  CDOLockStateCache |
  CDOPermissionUpdater | A `pluggable` strategy for updating the permissions of a set of `revisions`.
  CDOSessionProtocol | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOSessionProtocol.RefreshSessionResult.Provider | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOStore | A CDO specific version of an `InternalEObject.EStore`.
  CDOTransactionStrategy | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOLoadable | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOObject | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDORemoteSession | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDORemoteSessionManager | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOResource | Internal protocol for the `CDOResource`.
  InternalCDOSavepoint | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOSession | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOSessionConfiguration | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOSessionInvalidationEvent | A `session invalidation event` with `security impact information`.
  InternalCDOTransaction | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOTransaction.InternalCDOCommitContext | Provides a context for a commit operation.
  InternalCDOUserSavepoint | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOUserTransaction | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOView | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOViewSet | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOXASavepoint | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOXATransaction | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOXATransaction.InternalCDOXACommitContext | If the meaning of this type isn't clear, there really should be more of a description here...

- Class Summary
  Class | Description
  --- | ---
  AbstractChangeSetsConflictResolver | If the meaning of this type isn't clear, there really should be more of a description here...
  AbstractConflictResolver | If the meaning of this type isn't clear, there really should be more of a description here...
  AbstractObjectConflictResolver | If the meaning of this type isn't clear, there really should be more of a description here...
  AbstractObjectConflictResolver.MergeLocalChangesPerFeature | Deprecated. As of 4.0 use CDOMergingConflictResolver
  AbstractObjectConflictResolver.TakeRemoteChangesThenApplyLocalChanges | Deprecated.
  AbstractObjectConflictResolver.ThreeWayMerge | If the meaning of this type isn't clear, there really should be more of a description here...
  AbstractObjectConflictResolver.ThreeWayMerge.RevisionDeltaCollector | If the meaning of this type isn't clear, there really should be more of a description here...
  AbstractQueryIterator<T> | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOChangeSubscriptionAdapter | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOMergingConflictResolver | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOSessionInvalidationAggregator | Deprecated. As of 4.2 use `CDOSessionInvalidationEventQueue`.
  CDOSessionInvalidationEventQueue | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOSessionProtocol.CommitTransactionResult | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOSessionProtocol.CommitTransactionResult.PostCommitReferenceAdjuster | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOSessionProtocol.LockObjectsResult | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOSessionProtocol.MergeDataResult | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOSessionProtocol.OpenSessionResult | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOSessionProtocol.RefreshSessionResult | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOSessionProtocol.RepositoryTimeResult | If the meaning of this type isn't clear, there really should be more of a description here...
  CDOSessionProtocol.UnlockObjectsResult | If the meaning of this type isn't clear, there really should be more of a description here...
  DefaultCDOMerger | If the meaning of this type isn't clear, there really should be more of a description here...
  DefaultCDOMerger.ChangedInSourceAndDetachedInTargetConflict | If the meaning of this type isn't clear, there really should be more of a description here...
  DefaultCDOMerger.ChangedInSourceAndTargetConflict | If the meaning of this type isn't clear, there really should be more of a description here...
  DefaultCDOMerger.ChangedInTargetAndDetachedInSourceConflict | If the meaning of this type isn't clear, there really should be more of a description here...
  DefaultCDOMerger.Conflict | If the meaning of this type isn't clear, there really should be more of a description here...
  DefaultCDOMerger.PerFeature | If the meaning of this type isn't clear, there really should be more of a description here...
  DefaultCDOMerger.PerFeature.ManyValued | If the meaning of this type isn't clear, there really should be more of a description here...
  DefaultCDOMerger.PerFeature.ManyValuedOld | If the meaning of this type isn't clear, there really should be more of a description here...
  DefaultCDOMerger.PerFeature.ManyValuedOld.Element | A virtual list element to establish unique relations between ancestor, source and target sides.
  DefaultCDOMerger.PerFeature.ManyValuedOld.PerSide<T> | Holds data for the source and target sides.
  FSMUtil | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOSession.CommitToken | A token that is maintained during local commits of transactions.
  InternalCDOSession.InvalidationData | A data structure that holds all input values of `InternalCDOSession#invalidate()`.
  InternalCDOSession.MergeData | A data structure that holds all input and output values of `InternalCDOSession.getMergeData()`.
  InternalCDOTransaction.ApplyChangeSetResult | If the meaning of this type isn't clear, there really should be more of a description here...
  InternalCDOView.ViewAndState | Optimizes the storage of `CDOObject.cdoView()` and `CDOObject.cdoState()`.
  InternalCDOView.ViewInvalidationData | A data structure that holds all input values of `InternalCDOView#invalidate()`.
  InternalCDOXATransaction.InternalCDOXACommitContext.CDOXAState | If the meaning of this type isn't clear, there really should be more of a description here...

- Enum Summary
  Enum | Description
  --- | ---
  DefaultCDOMerger.PerFeature.ManyValuedOld.Side | Enumerates the possible sides of a merge, i.e., `DefaultCDOMerger.PerFeature.ManyValuedOld.Side.SOURCE` and `DefaultCDOMerger.PerFeature.ManyValuedOld.Side.TARGET`.
  DefaultCDOMerger.ResolutionPreference | Enumerates the possible resolution preferences that can be used with a `DefaultCDOMerger`.

- Exception Summary
  Exception | Description
  --- | ---
  InternalCDOTransaction.ChangeSetOutdatedException | If the meaning of this type isn't clear, there really should be more of a description here...