Package org.eclipse.emf.spi.cdo
Class AbstractChangeSetsConflictResolver
java.lang.Object
org.eclipse.emf.spi.cdo.AbstractConflictResolver
org.eclipse.emf.spi.cdo.AbstractChangeSetsConflictResolver
- All Implemented Interfaces:
CDOConflictResolver,CDOConflictResolver.NonConflictAware
- Direct Known Subclasses:
CDOMergingConflictResolver
public abstract class AbstractChangeSetsConflictResolver
extends AbstractConflictResolver
implements CDOConflictResolver.NonConflictAware
Base for resolvers that compare a transaction's local change set with change sets received through session
invalidations. It tracks transaction edits and queues relevant remote invalidations so subclasses can merge changes
against the transaction's clean revisions and reset that tracking after commit or rollback.
- Since:
- 4.0
- Author:
- Eike Stepper
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.transaction.CDOConflictResolver
CDOConflictResolver.NonConflictAware -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal longvoidhandleNonConflict(long updateTime) Handles an invalidation that did not produce a conflict.protected voidhookTransaction(CDOTransaction transaction) protected voidtransactionAttachingObject(CDOObject object) protected voidtransactionCommitted(CDOCommitContext commitContext) protected voidtransactionCommitting(CDOCommitContext commitContext) protected voidtransactionDetachingObject(CDOObject object) protected voidtransactionModifyingObject(CDOObject object, CDOFeatureDelta featureDelta) protected voidprotected voidunhookTransaction(CDOTransaction transaction) Methods inherited from class org.eclipse.emf.spi.cdo.AbstractConflictResolver
getTransaction, setTransactionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.emf.cdo.transaction.CDOConflictResolver
getTransaction, resolveConflicts, setTransaction
-
Constructor Details
-
AbstractChangeSetsConflictResolver
public AbstractChangeSetsConflictResolver() -
AbstractChangeSetsConflictResolver
public AbstractChangeSetsConflictResolver(boolean ensureRemoteNotifications) - Parameters:
ensureRemoteNotifications- boolean to disable the use ofCDOAdapterPolicyto ensure remote changes reception for conflict resolution, true by default. Can be disabled to limit network traffic whenCDOCommonSession.Options.PassiveUpdateModeis enabled and inCDOCommonSession.Options.PassiveUpdateMode.CHANGESorCDOCommonSession.Options.PassiveUpdateMode.ADDITIONS- Since:
- 4.4
-
-
Method Details
-
getLocalChangeSetData
-
getLocalChangeSet
-
getRemoteChangeSetData
-
getRemoteChangeSet
-
getRemoteTimeStamp
public final long getRemoteTimeStamp()- Since:
- 4.4
-
handleNonConflict
public void handleNonConflict(long updateTime) Description copied from interface:CDOConflictResolver.NonConflictAwareHandles an invalidation that did not produce a conflict.- Specified by:
handleNonConflictin interfaceCDOConflictResolver.NonConflictAware- Parameters:
updateTime- the time of the update.- Since:
- 4.3
-
hookTransaction
- Overrides:
hookTransactionin classAbstractConflictResolver
-
unhookTransaction
- Overrides:
unhookTransactionin classAbstractConflictResolver
-
transactionAttachingObject
- Since:
- 4.4
-
transactionDetachingObject
- Since:
- 4.4
-
transactionModifyingObject
- Since:
- 4.4
-
transactionCommitting
- Since:
- 4.4
-
transactionCommitted
- Since:
- 4.4
-
transactionRolledBack
protected void transactionRolledBack()- Since:
- 4.4
-