Package org.eclipse.emf.cdo.transaction
Interface CDOTransactionHandler1
- 
- All Superinterfaces:
- CDOTransactionHandlerBase
 - All Known Subinterfaces:
- CDOTransactionHandler,- CDOTransactionHandler1.WithUndo
 - All Known Implementing Classes:
- CDOAsyncTransactionHandler,- CDOAutoAttacher,- CDOAutoCommitter,- CDOAutoLocker,- CDOAutoLocker.ForSingleValuedChanges,- CDODefaultTransactionHandler,- CDODefaultTransactionHandler1,- CDOPostEventTransactionHandler,- CDOPostEventTransactionHandler.Default
 
 public interface CDOTransactionHandler1 extends CDOTransactionHandlerBase A call-back interface that is called by atransactionbeforeobjectsare attached, modified or detached.- Since:
- 4.0
- Author:
- Eike Stepper
- See Also:
- CDOPostEventTransactionHandler
 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Interface Description static interfaceCDOTransactionHandler1.WithUndoA call-back interface that is called by atransactionbeforeobjectsare attached, modified, undone or detached.
 - 
Method SummaryAll Methods Instance Methods Abstract Methods Modifier and Type Method Description voidattachingObject(CDOTransaction transaction, CDOObject object)Called by aCDOTransactionbefore an object is added.voiddetachingObject(CDOTransaction transaction, CDOObject object)Called by aCDOTransactionbefore an object is detached.voidmodifyingObject(CDOTransaction transaction, CDOObject object, CDOFeatureDelta featureDelta)Called by aCDOTransactionbefore an object is modified.
 
- 
- 
- 
Method Detail- 
attachingObjectvoid attachingObject(CDOTransaction transaction, CDOObject object) Called by aCDOTransactionbefore an object is added. The implementor of this method is allowed to throw an unchecked exception that will propagate up to the operation that is about to add the object (thereby preventing the operation from successful completion).Note: Implementors must not start threads which access the viewand 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 theviewyou should useCDOAsyncTransactionHandler.
 - 
detachingObjectvoid detachingObject(CDOTransaction transaction, CDOObject object) Called by aCDOTransactionbefore an object is detached. The implementor of this method is allowed to throw an unchecked exception that will propagate up to the operation that is about to remove the object (thereby preventing the operation from completing successfully).Note: Implementors must not start threads which access the viewand 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 theviewyou should useCDOAsyncTransactionHandler.
 - 
modifyingObjectvoid modifyingObject(CDOTransaction transaction, CDOObject object, CDOFeatureDelta featureDelta) Called by aCDOTransactionbefore 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 viewand 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 theviewyou should useCDOAsyncTransactionHandler.
 
- 
 
-