Package org.eclipse.emf.cdo.transaction

# Interface CDOTransactionHandler2

All Superinterfaces:
  `CDOTransactionHandlerBase`

All Known Subinterfaces:
  `CDOTransactionHandler`, `CDOTransactionHandler3`

All Known Implementing Classes:
  `CDOAsyncTransactionHandler`, `CDOAutoCommitter`, `CDODefaultTransactionHandler`, `CDODefaultTransactionHandler2`, `CDODefaultTransactionHandler3`, `CDOPostEventTransactionHandler`, `CDOPostEventTransactionHandler.Default`

public interface CDOTransactionHandler2 extends CDOTransactionHandlerBase
A call-back interface that is called by a `transcation` before it is committed and after it has been committed or rolled back.

Since:
  4.0
Author:
  Eike Stepper

## Method Summary

Modifier and Type
Method
Description
`void`
`committedTransaction(CDOTransaction transaction, CDOCommitContext commitContext)`
Called by a `CDOTransaction` after it is being committed.
`void`
`committingTransaction(CDOTransaction transaction, CDOCommitContext commitContext)`
Called by a `CDOTransaction` before it is being committed.
`void`
`rolledBackTransaction(CDOTransaction transaction)`
Called by a `CDOTransaction` after it is rolled back.

## Method Details

### committingTransaction

void committingTransaction(CDOTransaction transaction, CDOCommitContext commitContext)
Called by a `CDOTransaction` before it is being committed. The implementor of this method is allowed to throw an unchecked exception that will propagate up to the operation that is about to commit the transaction (thereby preventing the operation from completing successfully). The implementor of this method is allowed to apply changes to the object graph managed by the transaction.

### committedTransaction

void committedTransaction(CDOTransaction transaction, CDOCommitContext commitContext)
Called by a `CDOTransaction` after it is being committed. The implementor of this method is not allowed to throw an unchecked exception.

If you're interested in the results of the commit operation consider to implement `CDOTransactionHandler3.committedTransaction()`.

### rolledBackTransaction

void rolledBackTransaction(CDOTransaction transaction)
Called by a `CDOTransaction` after it is rolled back. If the implementor of this method throws an exception it will be logged as an error and subsequent handlers will be further called.