Interface CDONestedTransaction

All Superinterfaces:
AutoCloseable, CDOBranchPoint, CDOBranchProvider, CDOChangeSetDataProvider, CDOCommitHistory.Provider<CDOObject,CDOObjectHistory>, CDOCommonTransaction, CDOCommonView, CDORevisionProvider, CDORollbackable, CDOTimeProvider, CDOTransaction, CDOUpdatable, CDOUserTransaction, CDOView, org.eclipse.net4j.util.collection.Closeable, IAdaptable, org.eclipse.net4j.util.container.IContainer<CDOResourceNode>, org.eclipse.net4j.util.event.INotifier, org.eclipse.net4j.util.options.IOptionsContainer, org.eclipse.net4j.util.properties.IPropertiesContainer

public interface CDONestedTransaction extends CDOTransaction
A transaction-compatible facade for a transaction scope.

The facade shares the enclosing transaction's object identities, object cache, resource set, dirty state, locks, and repository session. Changes made through the facade are immediately part of the enclosing transaction's effective state.

The facade's transaction commit operations are unsupported. A nested scope is accepted with CDOTransactionScope.commit(), which does not persist changes, assign permanent IDs, establish a repository baseline, or start a repository commit epoch. Only a commit on the containing root CDOTransaction persists the effective changes.

CDOTransactionScope.rollback() restores the shared transaction to the state at the beginning of the scope. Nested scopes are stack-disciplined, and a root transaction commit remains unavailable while a nested scope is open.

Since:
4.30
Author:
Eike Stepper
No Implement
This interface is not intended to be implemented by clients.
No Extend
This interface is not intended to be extended by clients.
  • Method Details

    • getScope

      Returns the lifecycle scope represented by this transaction-like facade.
      Returns:
      the represented scope.