Package org.eclipse.emf.spi.cdo
Class AbstractObjectConflictResolver.ThreeWayMerge
- java.lang.Object
-
- org.eclipse.emf.spi.cdo.AbstractConflictResolver
-
- org.eclipse.emf.spi.cdo.AbstractObjectConflictResolver
-
- org.eclipse.emf.spi.cdo.AbstractObjectConflictResolver.ThreeWayMerge
-
- All Implemented Interfaces:
CDOConflictResolver
,CDOConflictResolver2
,CDOAdapterPolicy
- Direct Known Subclasses:
AbstractObjectConflictResolver.MergeLocalChangesPerFeature
- Enclosing class:
- AbstractObjectConflictResolver
public abstract static class AbstractObjectConflictResolver.ThreeWayMerge extends AbstractObjectConflictResolver implements CDOAdapterPolicy
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
Nested Classes Modifier and Type Class Description static class
AbstractObjectConflictResolver.ThreeWayMerge.RevisionDeltaCollector
If the meaning of this type isn't clear, there really should be more of a description here...-
Nested classes/interfaces inherited from class org.eclipse.emf.spi.cdo.AbstractObjectConflictResolver
AbstractObjectConflictResolver.MergeLocalChangesPerFeature, AbstractObjectConflictResolver.TakeRemoteChangesThenApplyLocalChanges, AbstractObjectConflictResolver.ThreeWayMerge
-
Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.transaction.CDOConflictResolver
CDOConflictResolver.NonConflictAware
-
-
Field Summary
-
Fields inherited from interface org.eclipse.emf.cdo.view.CDOAdapterPolicy
ALL, CDO, NONE
-
-
Constructor Summary
Constructors Constructor Description ThreeWayMerge()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
hookTransaction(CDOTransaction transaction)
boolean
isValid(EObject object, Adapter adapter)
Returnstrue
if the given adapter on the given object should trigger a certain operation or behavior,false
otherwise.protected void
resolveConflict(CDOObject conflict, CDORevision oldRemoteRevision, CDORevisionDelta localDelta, CDORevisionDelta remoteDelta, java.util.List<CDORevisionDelta> allRemoteDeltas)
Resolves the conflict of a single object in the current transaction.protected abstract void
resolveConflict(CDOObject conflict, CDORevisionDelta localDelta, java.util.List<CDORevisionDelta> remoteDeltas)
void
resolveConflicts(java.util.Set<CDOObject> conflicts)
Resolves conflicts after remote invalidations arrived for objects that are locally dirty or detached.protected void
unhookTransaction(CDOTransaction transaction)
-
Methods inherited from class org.eclipse.emf.spi.cdo.AbstractObjectConflictResolver
changeObject, readObject, resolveConflict, resolveConflicts, rollbackObject
-
Methods inherited from class org.eclipse.emf.spi.cdo.AbstractConflictResolver
getTransaction, setTransaction
-
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
-
-
-
-
Method Detail
-
isValid
public boolean isValid(EObject object, Adapter adapter)
Description copied from interface:CDOAdapterPolicy
Returnstrue
if the given adapter on the given object should trigger a certain operation or behavior,false
otherwise.- Specified by:
isValid
in interfaceCDOAdapterPolicy
- See Also:
CDOView.Options.addChangeSubscriptionPolicy(CDOAdapterPolicy)
,CDOView.Options.setStrongReferencePolicy(CDOAdapterPolicy)
-
hookTransaction
protected void hookTransaction(CDOTransaction transaction)
- Overrides:
hookTransaction
in classAbstractConflictResolver
-
unhookTransaction
protected void unhookTransaction(CDOTransaction transaction)
- Overrides:
unhookTransaction
in classAbstractConflictResolver
-
resolveConflicts
public void resolveConflicts(java.util.Set<CDOObject> conflicts)
Description copied from interface:CDOConflictResolver
Resolves conflicts after remote invalidations arrived for objects that are locally dirty or detached.- Specified by:
resolveConflicts
in interfaceCDOConflictResolver
- Overrides:
resolveConflicts
in classAbstractObjectConflictResolver
-
resolveConflict
protected void resolveConflict(CDOObject conflict, CDORevision oldRemoteRevision, CDORevisionDelta localDelta, CDORevisionDelta remoteDelta, java.util.List<CDORevisionDelta> allRemoteDeltas)
Description copied from class:AbstractObjectConflictResolver
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
.- Overrides:
resolveConflict
in classAbstractObjectConflictResolver
-
resolveConflict
protected abstract void resolveConflict(CDOObject conflict, CDORevisionDelta localDelta, java.util.List<CDORevisionDelta> remoteDeltas)
-
-