# Package org.eclipse.emf.cdo.transaction

Client concepts for dealing with transactions, distributed transactions and their save points.

- Interface Summary
  Interface | Description
  --- | ---
  CDOCommitContext | Provides a context for commit operations.
  CDOConflictResolver | A strategy used to customize the default conflict resolution behavior of `transactions`.
  CDOConflictResolver.NonConflictAware | A mix-in interface for `conflict resolvers` that need to know about non-conflicting invalidations.
  CDOConflictResolver2 | A strategy used to customize the default conflict resolution behavior of `transactions`.
  CDOConflictResolver3 | A strategy used to customize the default conflict resolution behavior of `transactions`.
  CDOMerger | Calculates the changes between a source `change set` and a target `change set` and returns the result relative to their common ancestor.
  CDOMerger2 | Merges the changes between a local `transaction` and a remote `view` into the local transaction.
  CDOSavepoint | One in a sequence of possibly several points in time of a `transaction` that encapsulates the changes to transactional objects and that later changes can be `rolled back` to.
  CDOStaleReferenceCleaner | Interface to externalize the cleaning of stale references created on invalidation.
  CDOTransaction | A read-write view to the current (i.e.
  CDOTransaction.Options | Encapsulates a set of notifying `transaction` configuration options.
  CDOTransaction.Options.AttachedRevisionsMap | An `options event` fired from transaction `options` when the `attached revisions map` option has changed.
  CDOTransaction.Options.AutoReleaseLocksEvent | An `options event` fired from transaction `options` when the `auto release locks enabled` or `auto release locks exemptions` options have changed.
  CDOTransaction.Options.AutoReleaseLocksEvent.AutoReleaseLocksEnabledEvent | An `auto release locks options event` fired from transaction `options` when the `auto release locks enabled` option has changed.
  CDOTransaction.Options.AutoReleaseLocksEvent.AutoReleaseLocksExemptionsEvent | An `auto release locks options event` fired from transaction `options` when the `auto release locks exemptions` option has changed.
  CDOTransaction.Options.CommitInfoTimeout | An `options event` fired from transaction `options` when the `commit info timeout` option has changed.
  CDOTransaction.Options.ConflictResolversEvent | An `options event` fired from transaction `options` when the `conflict resolvers` option has changed.
  CDOTransaction.Options.StaleReferenceCleanerEvent | An `options event` fired from transaction `options` when the `stale reference cleaner` option has changed.
  CDOTransaction.Options.UndoDetectorEvent | An `options event` fired from transaction `options` when the `undo detector` option has changed.
  CDOTransactionConflictEvent | A `view event` fired from a `transaction` for each `object` that enters the `conflict` state.
  CDOTransactionContainer | Can open new `transactions` and provide access to openend transactions.
  CDOTransactionFinishedEvent | A `view event` fired from a `transaction` when it becomes `clean` after a sucessful `commit` or `rollback`.
  CDOTransactionHandler | A combination of `CDOTransactionHandler1` and `CDOTransactionHandler2`.
  CDOTransactionHandler1 | A call-back interface that is called by a `transaction` before `objects` are attached, modified or detached.
  CDOTransactionHandler1.WithUndo | A call-back interface that is called by a `transaction` before `objects` are attached, modified, undone or detached.
  CDOTransactionHandler2 | A call-back interface that is called by a `transcation` before it is committed and after it has been committed or rolled back.
  CDOTransactionHandler3 | A call-back interface that is called by a `transcation` before it is committed and after it has been committed (with result info) or rolled back.
  CDOTransactionHandlerBase | A marker interface for use with `CDOTransaction.addTransactionHandler()` and `CDOTransaction.removeTransactionHandler()`.
  CDOTransactionOpener | Can open new `transactions`.
  CDOTransactionStartedEvent | A `view event` fired from a `transaction` when it first becomes `dirty`.
  CDOUndoDetector | A strategy used to detect whether the feature of an `object` has the original (clean) value after a number of modifications.
  CDOUserSavepoint | Creates a save point in a `CDOUserTransaction` that can be used to roll back a part of the transaction.
  CDOUserTransaction | Provides functionality that is common to both `single` transactions and `distributed` (XA) transactions.
  CDOXASavepoint | Creates a save point in a `CDOXATransaction` that can be used to roll back a part of the transaction.
  CDOXATransaction | A distributed (XA) transaction that can atomically commit the changes to multiple `resource sets`, each represented by a registered `view set`.

- Class Summary
  Class | Description
  --- | ---
  CDOAsyncTransactionHandler | Asynchronously executes a delegate handler's pre-event methods.
  CDOAutoAttacher | A `transaction handler` that automatically attaches cross-referenced objects to the `resource` that contains the referencing `object`.
  CDOAutoCommitter | A `transaction handler` that automatically `commits` the `transaction` after an `object` was modified.
  CDOAutoLocker | A `transaction handler` that automatically acquires `write locks` when `objects` are modified.
  CDOAutoLocker.ForSingleValuedChanges | An `auto locker` that only locks objects when their single-valued features are changed.
  CDODefaultTransactionHandler | An empty default implementation of `CDOTransactionHandler1` and `CDOTransactionHandler2`.
  CDODefaultTransactionHandler1 | An empty default implementation of `CDOTransactionHandler1`.
  CDODefaultTransactionHandler2 | An empty default implementation of `CDOTransactionHandler2`.
  CDODefaultTransactionHandler3 | An empty default implementation of `CDOTransactionHandler3`.
  CDOPostEventTransactionHandler | An abstract call-back class that is called by a `transcation` after `objects` have been attached, modified or detached.
  CDOPostEventTransactionHandler.Default | An empty default implementation of `CDOPostEventTransactionHandler`.
  CDOPushTransaction | A `transaction` that persists changes to the object graph locally on commit and can later load these changes and push them to the `repository`.
  CDOStaleReferenceCleaner.Default | A default `CDOStaleReferenceCleaner` that can be used on invalidation.
  CDOTransaction.CommitResult<T> | A value type that combines the result of a persistable computation and the `commit info` of the final `transaction commit`.
  CDOTransactionCommentator | A utility class that, when associated with a `transaction`, automatically updates the `commit comment` according to local model modifications.

- Enum Summary
  Enum | Description
  --- | ---
  CDOTransactionFinishedEvent.Cause | Enumerates the possible `causes` for a `transaction` to become finished.
  CDOTransactionFinishedEvent.Type | Deprecated. As of 4.3 use `CDOTransactionFinishedEvent.Cause`.

- Exception Summary
  Exception | Description
  --- | ---
  CDOMerger.ConflictException | Thrown from a `merger` in case of conflicting changes in the a source and target `change sets`.