Package org.eclipse.emf.compare.diff
Class DiffBuilder
java.lang.Object
org.eclipse.emf.compare.diff.DiffBuilder
- All Implemented Interfaces:
IDiffProcessor
This default implementation of an
IDiffProcessor will build the necessary differences and attach
them to the appropriate Match.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidattributeChange(Match match, EAttribute attribute, Object value, DifferenceKind kind, DifferenceSource source) This will be called whenever the diff engine detected a difference for a given attribute value.voidfeatureMapChange(Match match, EAttribute attribute, Object value, DifferenceKind kind, DifferenceSource source) This will be called whenever the diff engine detected a difference for a given attribute value.voidreferenceChange(Match match, EReference reference, EObject value, DifferenceKind kind, DifferenceSource source) This will be called whenever the Diff engine detected a difference for a given reference value.voidresourceAttachmentChange(Match match, String uri, DifferenceKind kind, DifferenceSource source) This will be called whenever the diff engine detected the addition (or removal) of a root in a given Resource.voidresourceLocationChange(MatchResource matchResource, String baseLocation, String changedLocation, DifferenceKind kind, DifferenceSource source) Deprecated.
-
Constructor Details
-
DiffBuilder
public DiffBuilder()
-
-
Method Details
-
referenceChange
public void referenceChange(Match match, EReference reference, EObject value, DifferenceKind kind, DifferenceSource source) This will be called whenever the Diff engine detected a difference for a given reference value.- Specified by:
referenceChangein interfaceIDiffProcessor- Parameters:
match- The match to which this difference should be attached.reference- The reference on which we detected a difference.value- The actual value for which we detected a difference.kind- Kind of the detected difference.source- Source of the detected difference. For two way comparisons, this will always beDifferenceSource.LEFT. Otherwise, this will indicate the side on which this difference has been detected.- See Also:
-
attributeChange
public void attributeChange(Match match, EAttribute attribute, Object value, DifferenceKind kind, DifferenceSource source) This will be called whenever the diff engine detected a difference for a given attribute value.- Specified by:
attributeChangein interfaceIDiffProcessor- Parameters:
match- The match to which this difference should be attached.attribute- The attribute on which we detected a difference.value- The actual value for which we detected a difference.kind- Kind of the difference.source- Source of the difference. For two way comparisons, this will always beDifferenceSource.LEFT. Otherwise, this will indicate the side on which this difference has been detected.- See Also:
-
featureMapChange
public void featureMapChange(Match match, EAttribute attribute, Object value, DifferenceKind kind, DifferenceSource source) This will be called whenever the diff engine detected a difference for a given attribute value.- Specified by:
featureMapChangein interfaceIDiffProcessor- Parameters:
match- The match to which this difference should be attached.attribute- The EFeatureMapEntry attribute on which we detected a difference.value- The actual FeatureMap.Entry value for which we detected a difference.kind- Kind of the difference.source- Source of the difference. For two way comparisons, this will always beDifferenceSource.LEFT. Otherwise, this will indicate the side on which this difference has been detected.- Since:
- 3.2
- See Also:
-
resourceAttachmentChange
public void resourceAttachmentChange(Match match, String uri, DifferenceKind kind, DifferenceSource source) This will be called whenever the diff engine detected the addition (or removal) of a root in a given Resource.- Specified by:
resourceAttachmentChangein interfaceIDiffProcessor- Parameters:
match- The match to which this difference should be attached.uri- The uri of the resource we attached this element to in case of anDifferenceKind.ADD, or the uri of the resource it was attached to in case of aDifferenceKind.DELETEdifference.kind- Kind of this difference.source- Source of the difference. For two way comparisons, this will always beDifferenceSource.LEFT. Otherwise, this will indicate the side on which this difference has been detected.- See Also:
-
resourceLocationChange
@Deprecated public void resourceLocationChange(MatchResource matchResource, String baseLocation, String changedLocation, DifferenceKind kind, DifferenceSource source) Deprecated.ResourceLocationChanges have been replaced byResourceAttachmentChanges of kind Move.This will be called whenever the diff engine detects the change of a Resource location.- Specified by:
resourceLocationChangein interfaceIDiffProcessor- Parameters:
matchResource- The matchResource to which this difference should be attached.baseLocation- The base location (left side in case of a two way comparison, origin or left side in case of a three way comparison).changedLocation- The change location (right side in case of a two way comparison, left or right side in case of a three way comparison).kind- Kind of this difference.source- Source of the difference. For two way comparisons, this will always beDifferenceSource.LEFT. Otherwise, this will indicate the side on which this difference has been detected.
-
ResourceLocationChanges have been replaced byResourceAttachmentChanges of kind Move.