Package org.eclipse.emf.spi.cdo
Class DefaultCDOMerger.PerFeature
java.lang.Object
org.eclipse.emf.spi.cdo.DefaultCDOMerger
org.eclipse.emf.spi.cdo.DefaultCDOMerger.PerFeature
- All Implemented Interfaces:
CDOMerger,CDOMergerBaseAware
- Direct Known Subclasses:
DefaultCDOMerger.PerFeature.ManyValued
- Enclosing class:
DefaultCDOMerger
If the meaning of this type isn't clear, there really should be more of a description here...
- Author:
- Eike Stepper
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classPer-feature merger whose many-valued path performs a semantic three-way list merge.static classDeprecated.Nested classes/interfaces inherited from class org.eclipse.emf.spi.cdo.DefaultCDOMerger
DefaultCDOMerger.ChangedInSourceAndDetachedInTargetConflict, DefaultCDOMerger.ChangedInSourceAndTargetConflict, DefaultCDOMerger.ChangedInTargetAndDetachedInSourceConflict, DefaultCDOMerger.Conflict, DefaultCDOMerger.PerFeature, DefaultCDOMerger.ResolutionPreferenceNested classes/interfaces inherited from interface org.eclipse.emf.cdo.transaction.CDOMerger
CDOMerger.ConflictException -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected CDOFeatureDeltachangedInSource(CDOFeatureDelta featureDelta) protected CDOFeatureDeltachangedInSource(CDOFeatureDelta featureDelta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision) Re-encodes a source-only feature change relative to the actual result base.protected ObjectchangedInSource(CDORevisionDelta delta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision, CDORevision sourceEndRevision) Resolves a one-sided source change as a goal relative to the actual result base.protected CDOFeatureDeltachangedInSourceAndTarget(CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta) protected CDOFeatureDeltachangedInSourceAndTarget(CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta, CDORevision ancestorRevision) Resolves concurrent changes of one feature with an optional full common-ancestor revision.protected CDOFeatureDeltachangedInSourceAndTarget(CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision) Resolves concurrent feature changes with explicit result/target/source base revisions.protected ObjectchangedInSourceAndTarget(CDORevisionDelta targetDelta, CDORevisionDelta sourceDelta) protected ObjectchangedInSourceAndTarget(CDORevisionDelta targetDelta, CDORevisionDelta sourceDelta, CDORevision ancestorRevision) Resolves concurrent revision changes with an optional full common-ancestor revision.protected ObjectchangedInSourceAndTarget(CDORevisionDelta targetDelta, CDORevisionDelta sourceDelta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision) Resolves concurrent revision changes with explicit asymmetric branch/remerge base revisions.protected CDOFeatureDeltachangedInSourceAndTargetManyValued(EStructuralFeature feature, CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta) protected CDOFeatureDeltachangedInSourceAndTargetSingleValued(EStructuralFeature feature, CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta) protected CDOFeatureDeltachangedInTarget(CDOFeatureDelta featureDelta) protected CDOFeatureDeltachangedInTarget(CDOFeatureDelta featureDelta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision) Re-encodes a target-only feature change relative to the actual result base.protected ObjectchangedInTarget(CDORevisionDelta delta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision, CDORevision targetEndRevision) Resolves a one-sided target change as a goal relative to the actual result base.Methods inherited from class org.eclipse.emf.spi.cdo.DefaultCDOMerger
addedInSource, addedInSourceAndTarget, addedInTarget, changedInSource, changedInSourceAndDetachedInTarget, changedInSourceAndDetachedInTarget, changedInTarget, changedInTargetAndDetachedInSource, changedInTargetAndDetachedInSource, detachedInSource, detachedInSourceAndTarget, detachedInTarget, getConflicts, getListOrdering, getResolutionPreference, getResult, getSourceMap, getTargetMap, merge, merge, merge, merge, merge, merge
-
Constructor Details
-
PerFeature
public PerFeature() -
PerFeature
- Since:
- 4.2
-
-
Method Details
-
changedInTarget
protected Object changedInTarget(CDORevisionDelta delta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision, CDORevision targetEndRevision) Description copied from class:DefaultCDOMergerResolves a one-sided target change as a goal relative to the actual result base.The base implementation treats the selected target endpoint as the complete object-level goal.
DefaultCDOMerger.PerFeaturerefines this behavior so unchanged features stay unobserved and many-valued changes retain occurrence semantics.- Overrides:
changedInTargetin classDefaultCDOMerger
-
changedInSource
protected Object changedInSource(CDORevisionDelta delta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision, CDORevision sourceEndRevision) Description copied from class:DefaultCDOMergerResolves a one-sided source change as a goal relative to the actual result base.The base implementation treats the selected source endpoint as the complete object-level goal.
DefaultCDOMerger.PerFeaturerefines this behavior so unchanged features stay unobserved and many-valued changes retain occurrence semantics.- Overrides:
changedInSourcein classDefaultCDOMerger
-
changedInSourceAndTarget
protected Object changedInSourceAndTarget(CDORevisionDelta targetDelta, CDORevisionDelta sourceDelta) - Overrides:
changedInSourceAndTargetin classDefaultCDOMerger
-
changedInSourceAndTarget
protected Object changedInSourceAndTarget(CDORevisionDelta targetDelta, CDORevisionDelta sourceDelta, CDORevision ancestorRevision) Description copied from class:DefaultCDOMergerResolves concurrent revision changes with an optional full common-ancestor revision. Subclasses that need only deltas retain the established two-argument hook; semantic many-valued merging overrides this overload.- Overrides:
changedInSourceAndTargetin classDefaultCDOMerger
-
changedInSourceAndTarget
protected Object changedInSourceAndTarget(CDORevisionDelta targetDelta, CDORevisionDelta sourceDelta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision) Description copied from class:DefaultCDOMergerResolves concurrent revision changes with explicit asymmetric branch/remerge base revisions.- Overrides:
changedInSourceAndTargetin classDefaultCDOMerger
-
changedInTarget
- Returns:
- the result feature delta, or
nullto ignore the change.
-
changedInSource
- Returns:
- the result feature delta, or
nullto ignore the change.
-
changedInTarget
protected CDOFeatureDelta changedInTarget(CDOFeatureDelta featureDelta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision) Re-encodes a target-only feature change relative to the actual result base. Single-valued deltas are absolute and therefore already base-independent; many-valued subclasses override this hook.- Since:
- 4.30
-
changedInSource
protected CDOFeatureDelta changedInSource(CDOFeatureDelta featureDelta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision) Re-encodes a source-only feature change relative to the actual result base. Single-valued deltas are absolute and therefore already base-independent; many-valued subclasses override this hook.- Since:
- 4.30
-
changedInSourceAndTarget
protected CDOFeatureDelta changedInSourceAndTarget(CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta) - Returns:
- the result feature delta, or
nullto indicate an unresolved conflict.
-
changedInSourceAndTarget
protected CDOFeatureDelta changedInSourceAndTarget(CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta, CDORevision ancestorRevision) Resolves concurrent changes of one feature with an optional full common-ancestor revision. The default delegates to the established delta-only hook so existing extenders retain their behavior.- Since:
- 4.30
-
changedInSourceAndTarget
protected CDOFeatureDelta changedInSourceAndTarget(CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta, CDORevision resultBaseRevision, CDORevision targetBaseRevision, CDORevision sourceBaseRevision) Resolves concurrent feature changes with explicit result/target/source base revisions. The default preserves the existing common-ancestor hook for extenders that do not need asymmetric list visibility.- Since:
- 4.30
-
changedInSourceAndTargetManyValued
protected CDOFeatureDelta changedInSourceAndTargetManyValued(EStructuralFeature feature, CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta) - Returns:
- the result feature delta, or
nullto indicate an unresolved conflict.
-
changedInSourceAndTargetSingleValued
protected CDOFeatureDelta changedInSourceAndTargetSingleValued(EStructuralFeature feature, CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta) - Returns:
- the result feature delta, or
nullto indicate an unresolved conflict.
-
DefaultCDOMerger.PerFeature.ManyValued.