public class AdditiveConflictMerger extends ConflictMerger
AbstractMerger will be used to merge conflicts in an additive merge
context.IMerger.Registry, IMerger.Registry2, IMerger.RegistryImplmergeOptions, SUB_DIFF_AWARE_OPTION| Constructor and Description |
|---|
AdditiveConflictMerger()
The constructor specify the context where this merger can be used.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
apply(IMergeCriterion criterion)
Default implementation of apply for mergers that extends this class.
|
void |
copyRightToLeft(Diff target,
Monitor monitor)
Executes the copy from right to left.
|
Set<Diff> |
getDirectMergeDependencies(Diff target,
boolean mergeRightToLeft)
Retrieves the set of directly required diffs needed in order to merge the current one.
|
Set<Diff> |
getDirectResultingMerges(Diff target,
boolean mergeRightToLeft)
Returns all differences that will be merged because of our merging the given
target
difference. |
copyLeftToRight, getMergerDelegate, isMergerForaccept, addAt, copyDiff, createCopy, getDirectResultingRejections, getImpliedMerges, getLogicallyResultingMerges, getMergeOptions, getMergerDelegate, getRanking, getRegistry, isAccepting, isAdd, isInTerminalState, isSet, isUnset, mergeDiff, reject, setMergeOptions, setRanking, setRegistrypublic AdditiveConflictMerger()
public boolean apply(IMergeCriterion criterion)
AbstractMergernull or
AdditiveMergeCriterion.INSTANCE.apply in interface IMergeCriterionAwareapply in class ConflictMergercriterion - The merge criteriontrue if the given criterion is null or is AdditiveMergeCriterion.INSTANCE.public void copyRightToLeft(Diff target, Monitor monitor)
ConflictMergercopyRightToLeft in interface IMergercopyRightToLeft in class ConflictMergertarget - The difference to handle.monitor - Monitor.IMerger.copyRightToLeft(org.eclipse.emf.compare.Diff,
org.eclipse.emf.common.util.Monitor)public Set<Diff> getDirectMergeDependencies(Diff target, boolean mergeRightToLeft)
AbstractMergerrequirements or any other diff that we need to merge
before the given one.getDirectMergeDependencies in interface IMerger2getDirectMergeDependencies in class ConflictMergertarget - The diff which direct requirements we need.mergeRightToLeft - The direction in which we're considering a merge.public Set<Diff> getDirectResultingMerges(Diff target, boolean mergeRightToLeft)
AbstractMergertarget
difference. This may include the diff's implications, the diff's
equivalences, the diff's refinements or any
other diff that we need to merge together with the given diff.getDirectResultingMerges in interface IMerger2getDirectResultingMerges in class ConflictMergertarget - The difference we're considering merging.mergeRightToLeft - The direction in which we're considering a merge.target.
Copyright (c) 2006, 2015 Obeo and others. All rights reserved.