Package org.eclipse.emf.spi.cdo
Class AbstractObjectConflictResolver
java.lang.Object
org.eclipse.emf.spi.cdo.AbstractConflictResolver
org.eclipse.emf.spi.cdo.AbstractObjectConflictResolver
- All Implemented Interfaces:
CDOConflictResolver
,CDOConflictResolver2
- Direct Known Subclasses:
AbstractObjectConflictResolver.TakeRemoteChangesThenApplyLocalChanges
,AbstractObjectConflictResolver.ThreeWayMerge
public abstract class AbstractObjectConflictResolver
extends AbstractConflictResolver
implements CDOConflictResolver2
If the meaning of this type isn't clear, there really should be more of a description here...
- Since:
- 2.0
- Author:
- Eike Stepper
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Deprecated.As of 4.0 use CDOMergingConflictResolverstatic class
Deprecated.static class
If the meaning of this type isn't clear, there really should be more of a description here...Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.transaction.CDOConflictResolver
CDOConflictResolver.NonConflictAware
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
changeObject
(CDOObject object, CDORevisionDelta revisionDelta) TODO SeeCDOObjectMerger
!!!static void
readObject
(CDOObject object) protected void
resolveConflict
(CDOObject conflict, CDORevision oldRemoteRevision, CDORevisionDelta localDelta, CDORevisionDelta remoteDelta, List<CDORevisionDelta> allRemoteDeltas) Resolves the conflict of a single object in the current transaction.protected void
resolveConflict
(CDOObject conflict, CDORevisionDelta localDelta) Resolves the conflict of a single object in the current transaction.void
resolveConflicts
(Map<CDOObject, org.eclipse.net4j.util.collection.Pair<CDORevision, CDORevisionDelta>> conflicts, List<CDORevisionDelta> allRemoteDeltas) Resolves conflicts after remote invalidations arrived for objects that are locally dirty or detached.void
resolveConflicts
(Set<CDOObject> conflicts) Resolves conflicts after remote invalidations arrived for objects that are locally dirty or detached.static void
rollbackObject
(CDOObject object) Deprecated.Don't call this method.Methods inherited from class org.eclipse.emf.spi.cdo.AbstractConflictResolver
getTransaction, hookTransaction, setTransaction, unhookTransaction
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.emf.cdo.transaction.CDOConflictResolver
getTransaction, setTransaction
-
Constructor Details
-
AbstractObjectConflictResolver
public AbstractObjectConflictResolver()
-
-
Method Details
-
resolveConflicts
Description copied from interface:CDOConflictResolver
Resolves conflicts after remote invalidations arrived for objects that are locally dirty or detached.- Specified by:
resolveConflicts
in interfaceCDOConflictResolver
-
resolveConflict
Resolves the conflict of a single object in the current transaction. -
resolveConflicts
public void resolveConflicts(Map<CDOObject, org.eclipse.net4j.util.collection.Pair<CDORevision, CDORevisionDelta>> conflicts, List<CDORevisionDelta> allRemoteDeltas) Description copied from interface:CDOConflictResolver2
Resolves conflicts after remote invalidations arrived for objects that are locally dirty or detached.Depending on the decisions taken to resolve the conflict, it may be necessary to adjust the notifications that will be sent to the adapters in the current transaction. This can be achieved by adjusting the
CDORevisionDelta
indeltas
.- Specified by:
resolveConflicts
in interfaceCDOConflictResolver2
- Parameters:
conflicts
- A map that contains the local objects with conflicts as the keys. Each value in this map is apair
that optionally contains the old local revision (ancestor) as element1 and the remote delta as element2. Any of the pair elements can benull
if it is not possible to determine it locally (depends on local revision caching and server behavior regarding transmission of deltas instead of invalidations).- Since:
- 4.0
-
resolveConflict
protected void resolveConflict(CDOObject conflict, CDORevision oldRemoteRevision, CDORevisionDelta localDelta, CDORevisionDelta remoteDelta, List<CDORevisionDelta> allRemoteDeltas) Resolves the conflict of a single object in the current transaction. Depending on the decision taken to resolve the conflict, it may be necessary to adjust the notification that will be sent to the adapters in the current transaction. This can be achieved by adjusting theCDORevisionDelta
indeltas
.- Since:
- 4.0
-
rollbackObject
Deprecated.Don't call this method. Rolling back single objects is exremely risky. -
readObject
-
changeObject
TODO SeeCDOObjectMerger
!!!
-