Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal')
-rw-r--r--plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java12
-rw-r--r--plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/ide_ui_messages.properties1
-rw-r--r--plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/EMFCompareStructureMergeViewer.java8
-rw-r--r--plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/AbstractMergeRunnable.java77
-rw-r--r--plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/MergeNonConflictingRunnable.java33
-rw-r--r--plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/MergeRunnableImpl.java27
6 files changed, 40 insertions, 118 deletions
diff --git a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java
index 76ddd0009..4a02b6039 100644
--- a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java
+++ b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/contentmergeviewer/tree/provider/TreeMergeViewerItemContentProvider.java
@@ -20,6 +20,7 @@ import static com.google.common.collect.Iterables.size;
import static com.google.common.collect.Lists.newArrayList;
import static com.google.common.collect.Lists.newArrayListWithCapacity;
import static java.util.Collections.emptyList;
+import static org.eclipse.emf.compare.merge.AbstractMerger.isInTerminalState;
import static org.eclipse.emf.compare.utils.EMFComparePredicates.CONTAINMENT_REFERENCE_CHANGE;
import static org.eclipse.emf.compare.utils.EMFComparePredicates.anyRefining;
import static org.eclipse.emf.compare.utils.EMFComparePredicates.fromSide;
@@ -46,7 +47,6 @@ import org.eclipse.emf.compare.ConflictKind;
import org.eclipse.emf.compare.Diff;
import org.eclipse.emf.compare.DifferenceKind;
import org.eclipse.emf.compare.DifferenceSource;
-import org.eclipse.emf.compare.DifferenceState;
import org.eclipse.emf.compare.Match;
import org.eclipse.emf.compare.ResourceAttachmentChange;
import org.eclipse.emf.compare.graph.IGraphView;
@@ -343,7 +343,7 @@ public class TreeMergeViewerItemContentProvider implements IMergeViewerItemConte
Match match = comparison.getMatch(value);
if (!isPseudoAddConflict(diff) && (isAddOnOppositeSide(diff, side)
|| isDeleteOnSameSide(diff, side) || isInsertOnBothSides(diff, match))) {
- if (match == null && diff.getState() == DifferenceState.MERGED) {
+ if (match == null && isInTerminalState(diff)) {
EObject bestSideValue = (EObject)getBestSideValue(parent, configuration.getSide());
match = comparison.getMatch(bestSideValue);
match = getMatchWithNullValues(match);
@@ -520,7 +520,7 @@ public class TreeMergeViewerItemContentProvider implements IMergeViewerItemConte
Match match = comparison.getMatch(value);
if (isAddOnOppositeSide(diff, side) || isDeleteOnSameSide(diff, side)
|| isInsertOnBothSides(diff, match)) {
- if (match == null && diff.getState() == DifferenceState.MERGED) {
+ if (match == null && isInTerminalState(diff)) {
EObject bestSideValue = (EObject)getBestSideValue(parent, configuration.getSide());
match = comparison.getMatch(bestSideValue);
match = getMatchWithNullValues(match);
@@ -817,7 +817,7 @@ public class TreeMergeViewerItemContentProvider implements IMergeViewerItemConte
* {@code false} otherwise.
*/
private boolean isInsertOnBothSides(Diff diff, Match match) {
- return diff.getState() == DifferenceState.MERGED
+ return isInTerminalState(diff)
&& (match == null || (match.getLeft() == null && match.getRight() == null));
}
@@ -861,7 +861,7 @@ public class TreeMergeViewerItemContentProvider implements IMergeViewerItemConte
* otherwise.
*/
private boolean isAddOnOppositeSide(Diff diff, MergeViewerSide side) {
- if (diff.getState() != DifferenceState.MERGED && diff.getKind() == DifferenceKind.ADD) {
+ if (!isInTerminalState(diff) && diff.getKind() == DifferenceKind.ADD) {
DifferenceSource source = diff.getSource();
return (source == DifferenceSource.LEFT && side == MergeViewerSide.RIGHT)
|| (source == DifferenceSource.RIGHT && side == MergeViewerSide.LEFT);
@@ -880,7 +880,7 @@ public class TreeMergeViewerItemContentProvider implements IMergeViewerItemConte
* otherwise.
*/
private boolean isDeleteOnSameSide(Diff diff, MergeViewerSide side) {
- if (diff.getState() != DifferenceState.MERGED && diff.getKind() == DifferenceKind.DELETE) {
+ if (!isInTerminalState(diff) && diff.getKind() == DifferenceKind.DELETE) {
DifferenceSource source = diff.getSource();
return (source == DifferenceSource.LEFT && side == MergeViewerSide.LEFT)
|| (source == DifferenceSource.RIGHT && side == MergeViewerSide.RIGHT);
diff --git a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/ide_ui_messages.properties b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/ide_ui_messages.properties
index 2f5eb787c..995c4e0dc 100644
--- a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/ide_ui_messages.properties
+++ b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/ide_ui_messages.properties
@@ -101,6 +101,7 @@ ComparisonScopeBuilder.right = right
ComparisonScopeBuilder.ancestor = ancestor
ComparisonScopeBuilder.resourceSetDiagnostic = Problems occurred while loading resources from the {0} side
ComparisonScopeBuilder.comparisonScopeDiagnostic = Problems occurred while creating the comparison scope
+DiffStateAdapter_WrongAdapterInstalled=Unknown adapter for DiffStateAdapter installed on comparison
SynchronizationModel.diagnosticMesg = Problems occurred while computing the synchronization model
SynchronizationModel.root = Synchronization (EMF Compare)
diff --git a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/EMFCompareStructureMergeViewer.java b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/EMFCompareStructureMergeViewer.java
index a13d292fc..35e0f0f55 100644
--- a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/EMFCompareStructureMergeViewer.java
+++ b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/EMFCompareStructureMergeViewer.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2013, 2016 Obeo and others.
+ * Copyright (c) 2013, 2017 Obeo and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -109,6 +109,7 @@ import org.eclipse.emf.compare.ide.ui.internal.util.CompareHandlerService;
import org.eclipse.emf.compare.ide.ui.internal.util.FilteredIterator;
import org.eclipse.emf.compare.ide.ui.internal.util.JFaceUtil;
import org.eclipse.emf.compare.ide.ui.internal.util.PlatformElementUtil;
+import org.eclipse.emf.compare.internal.merge.MergeDataImpl;
import org.eclipse.emf.compare.internal.merge.MergeMode;
import org.eclipse.emf.compare.merge.AbstractMerger;
import org.eclipse.emf.compare.merge.IMergeOptionAware;
@@ -1243,6 +1244,11 @@ public class EMFCompareStructureMergeViewer extends AbstractStructuredViewerWrap
}
// Bug 501569: The cascading filter does not hide merged cascading diffs
new MatchOfContainmentReferenceChangeProcessor().execute(compareResult);
+
+ // Add a MergeData to handle status decorations on Diffs
+ MergeDataImpl mergeData = new MergeDataImpl(getCompareConfiguration().isLeftEditable(),
+ getCompareConfiguration().isRightEditable());
+ compareResult.eAdapters().add(mergeData);
}
/**
diff --git a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/AbstractMergeRunnable.java b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/AbstractMergeRunnable.java
index 851d36395..cdec275b8 100644
--- a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/AbstractMergeRunnable.java
+++ b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/AbstractMergeRunnable.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2014, 2015 Obeo.
+ * Copyright (c) 2014, 2017 Obeo.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -10,19 +10,20 @@
*******************************************************************************/
package org.eclipse.emf.compare.ide.ui.internal.structuremergeviewer.actions;
+import static org.eclipse.emf.compare.DifferenceState.DISCARDED;
+import static org.eclipse.emf.compare.DifferenceState.MERGED;
+import static org.eclipse.emf.compare.merge.AbstractMerger.isAccepting;
+import static org.eclipse.emf.compare.merge.AbstractMerger.isInTerminalState;
+
import com.google.common.collect.Sets;
import java.util.Collection;
import java.util.Set;
import org.eclipse.emf.compare.Diff;
-import org.eclipse.emf.compare.DifferenceState;
-import org.eclipse.emf.compare.internal.merge.IMergeData;
-import org.eclipse.emf.compare.internal.merge.MergeDataImpl;
import org.eclipse.emf.compare.internal.merge.MergeDependenciesUtil;
import org.eclipse.emf.compare.internal.merge.MergeMode;
import org.eclipse.emf.compare.merge.IMerger.Registry;
-import org.eclipse.emf.ecore.util.EcoreUtil;
/**
* Provides inheritable default behavior for the merge runnables.
@@ -99,60 +100,26 @@ public abstract class AbstractMergeRunnable {
*/
protected void markAsMerged(Diff diff, MergeMode mode, boolean mergeRightToLeft,
Registry mergerRegistry) {
- if (diff.getState() == DifferenceState.MERGED) {
+ if (isInTerminalState(diff)) {
return;
}
-
- final Set<Diff> implied = MergeDependenciesUtil.getAllResultingMerges(diff, mergerRegistry,
- mergeRightToLeft);
- final Set<Diff> rejections = MergeDependenciesUtil.getAllResultingRejections(diff, mergerRegistry,
- mergeRightToLeft);
- for (Diff impliedDiff : Sets.difference(implied, rejections)) {
- impliedDiff.setState(DifferenceState.MERGED);
- addOrUpdateMergeData(impliedDiff, mode);
- }
-
- for (Diff impliedRejection : rejections) {
- impliedRejection.setState(DifferenceState.MERGED);
- if (mergeMode == MergeMode.LEFT_TO_RIGHT || mergeMode == MergeMode.RIGHT_TO_LEFT) {
- addOrUpdateMergeData(impliedRejection, mode);
- } else {
- addOrUpdateMergeData(impliedRejection, mode.inverse());
+ if (isAccepting(diff, mergeRightToLeft)) {
+ final Set<Diff> implied = MergeDependenciesUtil.getAllResultingMerges(diff, mergerRegistry,
+ mergeRightToLeft);
+ final Set<Diff> rejections = MergeDependenciesUtil.getAllResultingRejections(diff, mergerRegistry,
+ mergeRightToLeft);
+ for (Diff impliedDiff : Sets.difference(implied, rejections)) {
+ impliedDiff.setState(MERGED);
+ }
+ for (Diff impliedRejection : rejections) {
+ impliedRejection.setState(DISCARDED);
}
- }
- }
-
- /**
- * Updates the IMergeData adapter for all of the given diffs.
- *
- * @param differences
- * The differences for which to set or update the IMergeData adapter.
- * @param mode
- * Merge mode we wish to keep track of.
- */
- protected void addOrUpdateMergeData(Collection<Diff> differences, MergeMode mode) {
- for (Diff difference : differences) {
- addOrUpdateMergeData(difference, mode);
- }
- }
-
- /**
- * Updates the IMergeData adapter for the given diff.
- *
- * @param diff
- * The difference for which to set or update the IMergeData adapter.
- * @param mode
- * Merge mode we wish to keep track of.
- */
- private void addOrUpdateMergeData(Diff diff, MergeMode mode) {
- IMergeData mergeData = (IMergeData)EcoreUtil.getExistingAdapter(diff, IMergeData.class);
- if (mergeData != null) {
- mergeData.setMergeMode(mode);
- mergeData.setLeftEditable(isLeftEditable);
- mergeData.setRightEditable(isRightEditable);
} else {
- mergeData = new MergeDataImpl(mode, isLeftEditable, isRightEditable);
- diff.eAdapters().add(mergeData);
+ final Set<Diff> implied = MergeDependenciesUtil.getAllResultingMerges(diff, mergerRegistry,
+ mergeRightToLeft);
+ for (Diff impliedDiff : implied) {
+ impliedDiff.setState(DISCARDED);
+ }
}
}
}
diff --git a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/MergeNonConflictingRunnable.java b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/MergeNonConflictingRunnable.java
index 640982da7..de5972c33 100644
--- a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/MergeNonConflictingRunnable.java
+++ b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/MergeNonConflictingRunnable.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2014, 2016 Obeo and others.
+ * Copyright (c) 2014, 2017 Obeo and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -35,7 +35,6 @@ import com.google.common.collect.Lists;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.List;
import java.util.Set;
@@ -48,7 +47,6 @@ import org.eclipse.emf.compare.Diff;
import org.eclipse.emf.compare.DifferenceSource;
import org.eclipse.emf.compare.domain.IMergeRunnable;
import org.eclipse.emf.compare.internal.domain.IMergeAllNonConflictingRunnable;
-import org.eclipse.emf.compare.internal.merge.MergeDependenciesUtil;
import org.eclipse.emf.compare.internal.merge.MergeMode;
import org.eclipse.emf.compare.internal.merge.MergeOperation;
import org.eclipse.emf.compare.internal.utils.ComparisonUtil;
@@ -58,7 +56,6 @@ import org.eclipse.emf.compare.merge.IBatchMerger;
import org.eclipse.emf.compare.merge.IMerger;
import org.eclipse.emf.compare.merge.IMerger.Registry;
import org.eclipse.emf.compare.merge.IMerger.Registry2;
-import org.eclipse.emf.compare.merge.IMerger2;
import org.eclipse.emf.compare.merge.MergeBlockedByConflictException;
/**
@@ -155,16 +152,15 @@ public class MergeNonConflictingRunnable extends AbstractMergeRunnable implement
Registry mergerRegistry) {
final List<Diff> affectedDiffs;
final IBatchMerger merger = new BatchMerger(mergerRegistry);
+
if (getMergeMode() == MergeMode.LEFT_TO_RIGHT) {
affectedDiffs = Lists
.newArrayList(Iterables.filter(differences, fromSide(DifferenceSource.LEFT)));
merger.copyAllLeftToRight(affectedDiffs, new BasicMonitor());
- addOrUpdateMergeData(affectedDiffs, getMergeMode());
} else if (getMergeMode() == MergeMode.RIGHT_TO_LEFT) {
affectedDiffs = Lists
.newArrayList(Iterables.filter(differences, fromSide(DifferenceSource.RIGHT)));
merger.copyAllRightToLeft(affectedDiffs, new BasicMonitor());
- addOrUpdateMergeData(affectedDiffs, getMergeMode());
} else if (getMergeMode() == MergeMode.ACCEPT || getMergeMode() == MergeMode.REJECT) {
affectedDiffs = acceptOrRejectWithoutConflicts(differences, leftToRight, mergerRegistry, merger);
} else {
@@ -210,12 +206,10 @@ public class MergeNonConflictingRunnable extends AbstractMergeRunnable implement
affectedDiffs = Lists
.newArrayList(Iterables.filter(differences, fromSide(DifferenceSource.LEFT)));
merger.copyAllLeftToRight(affectedDiffs, new BasicMonitor());
- addOrUpdateMergeData(affectedDiffs, getMergeMode());
} else if (getMergeMode() == MergeMode.RIGHT_TO_LEFT) {
affectedDiffs = Lists
.newArrayList(Iterables.filter(differences, fromSide(DifferenceSource.LEFT)));
merger.copyAllRightToLeft(affectedDiffs, new BasicMonitor());
- addOrUpdateMergeData(affectedDiffs, getMergeMode());
} else if (getMergeMode() == MergeMode.ACCEPT || getMergeMode() == MergeMode.REJECT) {
affectedDiffs = acceptOrRejectWithoutConflicts(differences, leftToRight, mergerRegistry, merger);
} else {
@@ -242,6 +236,7 @@ public class MergeNonConflictingRunnable extends AbstractMergeRunnable implement
final Monitor emfMonitor = new BasicMonitor();
ComputeDiffsToMerge computer = new ComputeDiffsToMerge(!leftToRight, (Registry2)mergerRegistry)
.failOnRealConflictUnless(alwaysFalse());
+
final Predicate<? super Diff> filter;
if (getMergeMode() == RIGHT_TO_LEFT) {
filter = fromSide(RIGHT);
@@ -265,7 +260,6 @@ public class MergeNonConflictingRunnable extends AbstractMergeRunnable implement
}
}
- addOrUpdateMergeData(affectedDiffs, getMergeMode());
return affectedDiffs;
}
@@ -378,26 +372,5 @@ public class MergeNonConflictingRunnable extends AbstractMergeRunnable implement
} else {
merger.copyAllRightToLeft(differences, emfMonitor);
}
-
- for (Diff difference : differences) {
- final IMerger diffMerger = mergerRegistry.getHighestRankingMerger(difference);
-
- if (LOGGER.isDebugEnabled()) {
- LOGGER.debug("mergeAll - Selected merger for diff " + difference.hashCode() //$NON-NLS-1$
- + ": " + merger.getClass().getSimpleName()); //$NON-NLS-1$
- }
-
- if (diffMerger instanceof IMerger2) {
- final Set<Diff> resultingMerges = MergeDependenciesUtil.getAllResultingMerges(difference,
- mergerRegistry, !leftToRight);
- addOrUpdateMergeData(resultingMerges, getMergeMode());
-
- final Set<Diff> resultingRejections = MergeDependenciesUtil
- .getAllResultingRejections(difference, mergerRegistry, !leftToRight);
- addOrUpdateMergeData(resultingRejections, getMergeMode().inverse());
- } else {
- addOrUpdateMergeData(Collections.singleton(difference), getMergeMode());
- }
- }
}
}
diff --git a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/MergeRunnableImpl.java b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/MergeRunnableImpl.java
index 46b70d23c..f692550b5 100644
--- a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/MergeRunnableImpl.java
+++ b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/actions/MergeRunnableImpl.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2013, 2014 Obeo.
+ * Copyright (c) 2013, 2017 Obeo.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -15,21 +15,16 @@ import static com.google.common.collect.Lists.newArrayList;
import com.google.common.base.Preconditions;
import java.util.Collection;
-import java.util.Collections;
import java.util.List;
-import java.util.Set;
import org.eclipse.emf.common.util.BasicMonitor;
import org.eclipse.emf.compare.Diff;
import org.eclipse.emf.compare.domain.IMergeRunnable;
-import org.eclipse.emf.compare.internal.merge.MergeDependenciesUtil;
import org.eclipse.emf.compare.internal.merge.MergeMode;
import org.eclipse.emf.compare.internal.merge.MergeOperation;
import org.eclipse.emf.compare.merge.BatchMerger;
import org.eclipse.emf.compare.merge.IBatchMerger;
-import org.eclipse.emf.compare.merge.IMerger;
import org.eclipse.emf.compare.merge.IMerger.Registry;
-import org.eclipse.emf.compare.merge.IMerger2;
/**
* @author <a href="mailto:mikael.barbero@obeo.fr">Mikael Barbero</a>
@@ -45,7 +40,6 @@ public final class MergeRunnableImpl extends AbstractMergeRunnable implements IM
public void merge(List<? extends Diff> differences, boolean leftToRight, Registry mergerRegistry) {
Preconditions
.checkState(getMergeMode().isLeftToRight(isLeftEditable(), isRightEditable()) == leftToRight);
-
// Execute merge
if (getMergeMode() == MergeMode.LEFT_TO_RIGHT || getMergeMode() == MergeMode.RIGHT_TO_LEFT) {
mergeAll(differences, leftToRight, mergerRegistry);
@@ -82,24 +76,5 @@ public final class MergeRunnableImpl extends AbstractMergeRunnable implements IM
} else {
merger.copyAllRightToLeft(differences, new BasicMonitor());
}
-
- for (Diff difference : differences) {
- final IMerger diffMerger = mergerRegistry.getHighestRankingMerger(difference);
- if (diffMerger instanceof IMerger2) {
- final Set<Diff> resultingMerges = MergeDependenciesUtil.getAllResultingMerges(difference,
- mergerRegistry, !leftToRight);
- addOrUpdateMergeData(resultingMerges, getMergeMode());
-
- final Set<Diff> resultingRejections = MergeDependenciesUtil
- .getAllResultingRejections(difference, mergerRegistry, !leftToRight);
- if (getMergeMode() == MergeMode.LEFT_TO_RIGHT || getMergeMode() == MergeMode.RIGHT_TO_LEFT) {
- addOrUpdateMergeData(resultingRejections, getMergeMode());
- } else {
- addOrUpdateMergeData(resultingRejections, getMergeMode().inverse());
- }
- } else {
- addOrUpdateMergeData(Collections.singleton(difference), getMergeMode());
- }
- }
}
}

Back to the top