public class ConflictMerger extends AbstractMerger
AbstractMerger will be used to merge real conflicts.IMerger.Registry, IMerger.Registry2, IMerger.RegistryImplmergeOptions, SUB_DIFF_AWARE_OPTION| Constructor and Description |
|---|
ConflictMerger() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
apply(IMergeCriterion criterion)
Default implementation of apply for mergers that extends this class.
|
void |
copyLeftToRight(Diff target,
Monitor monitor)
Executes the copy from left to right.
|
void |
copyRightToLeft(Diff target,
Monitor monitor)
Executes the copy from right to left.
|
Set<Diff> |
getDirectMergeDependencies(Diff diff,
boolean rightToLeft)
Retrieves the set of directly required diffs needed in order to merge the current one.
|
Set<Diff> |
getDirectResultingMerges(Diff diff,
boolean rightToLeft)
Returns all differences that will be merged because of our merging the given
target
difference. |
protected DelegatingMerger |
getMergerDelegate(Diff diff)
Find the best merger for diff and wrap it in a delegate that will take the current merge criterion into
account.
|
boolean |
isMergerFor(Diff target)
Check if the merger is a good candidate to merge the given difference.
|
accept, addAt, copyDiff, createCopy, getDirectResultingRejections, getImpliedMerges, getLogicallyResultingMerges, getMergeOptions, getMergerDelegate, getRanking, getRegistry, isAccepting, isAdd, isInTerminalState, isSet, isUnset, mergeDiff, reject, setMergeOptions, setRanking, setRegistrypublic boolean isMergerFor(Diff target)
target - The given target difference.IMerger.isMergerFor(org.eclipse.emf.compare.Diff)public boolean apply(IMergeCriterion criterion)
AbstractMergernull or
AdditiveMergeCriterion.INSTANCE.apply in interface IMergeCriterionAwareapply in class AbstractMergercriterion - The merge criteriontrue if the given criterion is null or is AdditiveMergeCriterion.INSTANCE.public void copyLeftToRight(Diff target, Monitor monitor)
copyLeftToRight in interface IMergercopyLeftToRight in class AbstractMergertarget - The difference to handle.monitor - Monitor.IMerger.copyLeftToRight(org.eclipse.emf.compare.Diff,
org.eclipse.emf.common.util.Monitor)public void copyRightToLeft(Diff target, Monitor monitor)
copyRightToLeft in interface IMergercopyRightToLeft in class AbstractMergertarget - The difference to handle.monitor - Monitor.IMerger.copyRightToLeft(org.eclipse.emf.compare.Diff,
org.eclipse.emf.common.util.Monitor)public Set<Diff> getDirectMergeDependencies(Diff diff, boolean rightToLeft)
AbstractMergerrequirements or any other diff that we need to merge
before the given one.getDirectMergeDependencies in interface IMerger2getDirectMergeDependencies in class AbstractMergerdiff - The diff which direct requirements we need.rightToLeft - The direction in which we're considering a merge.public Set<Diff> getDirectResultingMerges(Diff diff, boolean rightToLeft)
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 AbstractMergerdiff - The difference we're considering merging.rightToLeft - The direction in which we're considering a merge.target.protected DelegatingMerger getMergerDelegate(Diff diff)
AbstractMergergetMergerDelegate in class AbstractMergerdiff - The diff
Copyright (c) 2006, 2015 Obeo and others. All rights reserved.