Package org.eclipse.emf.cdo.transaction
Interface CDOTransactionHandler1.WithUndo
-
- All Superinterfaces:
CDOTransactionHandler1
,CDOTransactionHandlerBase
- All Known Implementing Classes:
CDOAutoAttacher
,CDOAutoLocker
,CDOAutoLocker.ForSingleValuedChanges
,CDODefaultTransactionHandler
,CDODefaultTransactionHandler1
- Enclosing interface:
- CDOTransactionHandler1
public static interface CDOTransactionHandler1.WithUndo extends CDOTransactionHandler1
A call-back interface that is called by atransaction
beforeobjects
are attached, modified, undone or detached.- Since:
- 4.6
- Author:
- Eike Stepper
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.transaction.CDOTransactionHandler1
CDOTransactionHandler1.WithUndo
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
undoingObject(CDOTransaction transaction, CDOObject object, CDOFeatureDelta featureDelta)
Called by aCDOTransaction
before an object is modified.-
Methods inherited from interface org.eclipse.emf.cdo.transaction.CDOTransactionHandler1
attachingObject, detachingObject, modifyingObject
-
-
-
-
Method Detail
-
undoingObject
void undoingObject(CDOTransaction transaction, CDOObject object, CDOFeatureDelta featureDelta)
Called by aCDOTransaction
before an object is modified. The implementor of this method is allowed to throw an unchecked exception that will propagate up to the operation that is about to modify the object (thereby preventing the operation from completing successfully).Note: Implementors must not start threads which access the
view
and wait for their completion since deadlocks can result. The following example causes a deadlock:
getDisplay().syncExec(new Runnable() { public void run() { try { cdoObject.getName(); } catch (Exception ignore) { } } });
If you need to synchronously execute threads which access theview
you should useCDOAsyncTransactionHandler
.
-
-