Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf')
-rw-r--r--plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/EMFCompareRCPUIPlugin.java17
-rw-r--r--plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/configuration/IEMFCompareConfiguration.java6
-rw-r--r--plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/MergeViewerItem.java4
-rw-r--r--plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/provider/TreeItemProviderAdapterFactorySpec.java12
-rw-r--r--plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/provider/TreeNodeItemProviderSpec.java22
-rw-r--r--plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/util/ResourceUIUtil.java31
6 files changed, 54 insertions, 38 deletions
diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/EMFCompareRCPUIPlugin.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/EMFCompareRCPUIPlugin.java
index 384ff77cb..a58bdeabd 100644
--- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/EMFCompareRCPUIPlugin.java
+++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/EMFCompareRCPUIPlugin.java
@@ -118,6 +118,7 @@ public class EMFCompareRCPUIPlugin extends AbstractUIPlugin {
private ConfigurationUIRegistryEventListener matchEngineConfiguratorRegistryListener;
+ @Deprecated
private IEMFCompareConfiguration compareConfiguration;
/**
@@ -376,21 +377,29 @@ public class EMFCompareRCPUIPlugin extends AbstractUIPlugin {
}
/**
- * @return the compare configuration object.
+ * The compareConfiguration is not provided by the RCPUI plugin anymore. This plugin provide cross
+ * comparison elements and the compareConfiguration is configuration dependent.
+ *
+ * @return null
+ * @deprecated
* @since 4.1
*/
+ @Deprecated
public IEMFCompareConfiguration getEMFCompareConfiguration() {
- return compareConfiguration;
+ return null;
}
/**
- * Set the compare configuration object.
+ * The compareConfiguration is not provided by the RCPUI plugin anymore. This plugin provide cross
+ * comparison elements and the compareConfiguration is configuration dependent.
*
* @param compareConfiguration
* the compare configuration object
+ * @deprecated
* @since 4.1
*/
+ @Deprecated
public void setEMFCompareConfiguration(IEMFCompareConfiguration compareConfiguration) {
- this.compareConfiguration = compareConfiguration;
+ // Do nothing
}
}
diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/configuration/IEMFCompareConfiguration.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/configuration/IEMFCompareConfiguration.java
index 38f12acfb..c14d27b6a 100644
--- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/configuration/IEMFCompareConfiguration.java
+++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/configuration/IEMFCompareConfiguration.java
@@ -13,12 +13,10 @@ package org.eclipse.emf.compare.rcp.ui.internal.configuration;
import com.google.common.eventbus.EventBus;
import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.compare.Comparison;
import org.eclipse.emf.compare.EMFCompare;
import org.eclipse.emf.compare.domain.ICompareEditingDomain;
import org.eclipse.emf.compare.internal.merge.MergeMode;
-import org.eclipse.emf.compare.internal.utils.ReadOnlyGraph;
import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.filters.StructureMergeViewerFilter;
import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.StructureMergeViewerGrouper;
import org.eclipse.emf.compare.scope.IComparisonScope;
@@ -61,8 +59,4 @@ public interface IEMFCompareConfiguration {
void setMergePreviewMode(MergeMode mergePreviewMode);
boolean getBooleanProperty(String key, boolean dflt);
-
- ReadOnlyGraph<URI> getResourcesGraph();
-
- void setResourcesGraph(ReadOnlyGraph<URI> graph);
}
diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/MergeViewerItem.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/MergeViewerItem.java
index 471c98611..096055502 100644
--- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/MergeViewerItem.java
+++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/MergeViewerItem.java
@@ -51,9 +51,9 @@ import org.eclipse.emf.compare.DifferenceState;
import org.eclipse.emf.compare.Match;
import org.eclipse.emf.compare.ReferenceChange;
import org.eclipse.emf.compare.ResourceAttachmentChange;
+import org.eclipse.emf.compare.graph.IGraphView;
import org.eclipse.emf.compare.internal.spec.EObjectUtil;
import org.eclipse.emf.compare.internal.utils.DiffUtil;
-import org.eclipse.emf.compare.internal.utils.ReadOnlyGraph;
import org.eclipse.emf.compare.match.impl.NotLoadedFragmentMatch;
import org.eclipse.emf.compare.rcp.ui.internal.util.MergeViewerUtil;
import org.eclipse.emf.compare.rcp.ui.internal.util.ResourceUIUtil;
@@ -731,7 +731,7 @@ public class MergeViewerItem extends AdapterImpl implements IMergeViewerItem {
for (Match match : children) {
URI uri = ResourceUIUtil.getDataURI(match, getSide());
if (uri != null) {
- ReadOnlyGraph<URI> graph = ResourceUIUtil.getResourcesURIGraph();
+ IGraphView<URI> graph = ResourceUIUtil.getResourcesURIGraph();
URI parentData = graph.getParentData(uri);
ResourceSet rs = ResourceUIUtil.getDataResourceSet(match, getSide());
Resource resourceParent = ResourceUIUtil.getParent(rs, uri);
diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/provider/TreeItemProviderAdapterFactorySpec.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/provider/TreeItemProviderAdapterFactorySpec.java
index 1d0fe9058..a66d0258c 100644
--- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/provider/TreeItemProviderAdapterFactorySpec.java
+++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/provider/TreeItemProviderAdapterFactorySpec.java
@@ -14,6 +14,7 @@ import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.compare.provider.IItemDescriptionProvider;
import org.eclipse.emf.compare.provider.IItemStyledLabelProvider;
import org.eclipse.emf.compare.provider.ISemanticObjectLabelProvider;
+import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.filters.StructureMergeViewerFilter;
import org.eclipse.emf.edit.provider.IItemColorProvider;
import org.eclipse.emf.edit.provider.IItemFontProvider;
import org.eclipse.emf.edit.tree.provider.TreeItemProviderAdapterFactory;
@@ -26,11 +27,18 @@ import org.eclipse.emf.edit.tree.provider.TreeItemProviderAdapterFactory;
*/
public class TreeItemProviderAdapterFactorySpec extends TreeItemProviderAdapterFactory {
+ /** An instance of {@code StructureMergeViewerFilter}. */
+ private final StructureMergeViewerFilter filter;
+
/**
* Constructor.
+ *
+ * @param filter
+ * The given StructureMergeViewerFilter
*/
- public TreeItemProviderAdapterFactorySpec() {
+ public TreeItemProviderAdapterFactorySpec(StructureMergeViewerFilter filter) {
super();
+ this.filter = filter;
supportedTypes.add(IItemFontProvider.class);
supportedTypes.add(IItemColorProvider.class);
supportedTypes.add(IItemStyledLabelProvider.class);
@@ -45,6 +53,6 @@ public class TreeItemProviderAdapterFactorySpec extends TreeItemProviderAdapterF
*/
@Override
public Adapter createTreeNodeAdapter() {
- return new TreeNodeItemProviderSpec(this);
+ return new TreeNodeItemProviderSpec(this, filter);
}
}
diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/provider/TreeNodeItemProviderSpec.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/provider/TreeNodeItemProviderSpec.java
index 5d89e97c6..acb55cfe1 100644
--- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/provider/TreeNodeItemProviderSpec.java
+++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/provider/TreeNodeItemProviderSpec.java
@@ -27,6 +27,7 @@ import com.google.common.collect.UnmodifiableIterator;
import java.util.Collection;
import java.util.Iterator;
+import org.eclipse.core.runtime.Assert;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.compare.Comparison;
import org.eclipse.emf.compare.Conflict;
@@ -40,7 +41,7 @@ import org.eclipse.emf.compare.provider.IItemStyledLabelProvider;
import org.eclipse.emf.compare.provider.utils.ComposedStyledString;
import org.eclipse.emf.compare.provider.utils.IStyledString.IComposedStyledString;
import org.eclipse.emf.compare.provider.utils.IStyledString.Style;
-import org.eclipse.emf.compare.rcp.ui.EMFCompareRCPUIPlugin;
+import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.filters.StructureMergeViewerFilter;
import org.eclipse.emf.compare.rcp.ui.structuremergeviewer.groups.IDifferenceGroup;
import org.eclipse.emf.compare.rcp.ui.structuremergeviewer.groups.IDifferenceGroupProvider;
import org.eclipse.emf.ecore.EObject;
@@ -61,14 +62,21 @@ public class TreeNodeItemProviderSpec extends TreeNodeItemProvider implements II
/** A map of IDifferenceGroupProvider, GroupItemProviderAdapter. */
private Multimap<IDifferenceGroupProvider, GroupItemProviderAdapter> groupItemProviderAdapters;
+ /** An instance of {@code StructureMergeViewerFilter}. */
+ private StructureMergeViewerFilter structureMergeViewerFilter;
+
/**
* This constructs an instance from a factory.
*
* @param adapterFactory
* the given factory
+ * @param structureMergeViewerFilter
+ * the given structure merge viewer filter
*/
- public TreeNodeItemProviderSpec(AdapterFactory adapterFactory) {
+ public TreeNodeItemProviderSpec(AdapterFactory adapterFactory,
+ StructureMergeViewerFilter structureMergeViewerFilter) {
super(adapterFactory);
+ this.structureMergeViewerFilter = structureMergeViewerFilter;
itemDelegator = new ExtendedAdapterFactoryItemDelegator(getRootAdapterFactory());
}
@@ -244,9 +252,9 @@ public class TreeNodeItemProviderSpec extends TreeNodeItemProvider implements II
/**
* Due to filters (especially UML & Diagram Refined elements filters), refining & refined elements are
- * store in the same conflicts. But refining & refined elements will never be display together. It leads
- * to have a number of unresolved diffs who is confusing because it counts refining & refined unresolved
- * diffs together. So only counts visible unresolved nodes.
+ * store in the same conflicts. But refining & refined elements will never be displayed together. It leads
+ * to have a number of unresolved diffs that is confusing because it counts refining & refined unresolved
+ * diffs together. This method makes sure to only count visible unresolved nodes.
*
* @param conflict
* the conflict for which we want to get the text to display.
@@ -255,8 +263,8 @@ public class TreeNodeItemProviderSpec extends TreeNodeItemProvider implements II
private IComposedStyledString getTreeNodeText(TreeNode treeNode, Conflict conflict) {
final ComposedStyledString ret = new ComposedStyledString();
- final Predicate<? super EObject> unfilteredNode = EMFCompareRCPUIPlugin.getDefault()
- .getEMFCompareConfiguration().getStructureMergeViewerFilter().getAggregatedPredicate();
+ Assert.isNotNull(structureMergeViewerFilter);
+ final Predicate<? super EObject> unfilteredNode = structureMergeViewerFilter.getAggregatedPredicate();
final UnmodifiableIterator<EObject> visibleNodes = Iterators.filter(treeNode.eAllContents(),
unfilteredNode);
diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/util/ResourceUIUtil.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/util/ResourceUIUtil.java
index d49e1cac3..518b06c53 100644
--- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/util/ResourceUIUtil.java
+++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/util/ResourceUIUtil.java
@@ -25,10 +25,9 @@ import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.compare.Comparison;
import org.eclipse.emf.compare.Match;
-import org.eclipse.emf.compare.internal.utils.ReadOnlyGraph;
+import org.eclipse.emf.compare.graph.IGraphView;
import org.eclipse.emf.compare.match.impl.NotLoadedFragmentMatch;
-import org.eclipse.emf.compare.rcp.ui.EMFCompareRCPUIPlugin;
-import org.eclipse.emf.compare.rcp.ui.internal.configuration.IEMFCompareConfiguration;
+import org.eclipse.emf.compare.rcp.EMFCompareRCPPlugin;
import org.eclipse.emf.compare.rcp.ui.internal.mergeviewer.item.impl.MergeViewerItem;
import org.eclipse.emf.compare.rcp.ui.mergeviewer.IMergeViewer.MergeViewerSide;
import org.eclipse.emf.compare.rcp.ui.mergeviewer.item.IMergeViewerItem;
@@ -44,6 +43,9 @@ import org.eclipse.emf.edit.tree.TreeNode;
*/
public class ResourceUIUtil {
+ /** ID of the graph of EMF resources used by EMFCompare to compute the logical model. */
+ public static final String RESOURCES_GRAPH_ID = "org.eclipse.emf.compare.resources.graph"; //$NON-NLS-1$
+
/**
* Function that retrieve the data of the given TreeNode.
*/
@@ -64,13 +66,8 @@ public class ResourceUIUtil {
*
* @return the graph if it exists, <code>null</code> otherwise.
*/
- public static ReadOnlyGraph<URI> getResourcesURIGraph() {
- final IEMFCompareConfiguration configuration = EMFCompareRCPUIPlugin.getDefault()
- .getEMFCompareConfiguration();
- if (configuration != null) {
- return configuration.getResourcesGraph();
- }
- return null;
+ public static IGraphView<URI> getResourcesURIGraph() {
+ return EMFCompareRCPPlugin.getDefault().getGraphView(RESOURCES_GRAPH_ID);
}
/**
@@ -94,7 +91,7 @@ public class ResourceUIUtil {
* @return <code>true</code> if the given URI is a fragment of a model, <code>false</code> otherwise.
*/
public static boolean isFragment(URI uri) {
- final ReadOnlyGraph<URI> graph = getResourcesURIGraph();
+ final IGraphView<URI> graph = getResourcesURIGraph();
if (uri != null && graph != null) {
URI parentData = graph.getParentData(uri);
if (parentData != null) {
@@ -137,7 +134,7 @@ public class ResourceUIUtil {
* @return <code>true</code> if the given URI is a fragment of a model, <code>false</code> otherwise.
*/
public static boolean isFirstLevelFragment(URI uri) {
- final ReadOnlyGraph<URI> graph = getResourcesURIGraph();
+ final IGraphView<URI> graph = getResourcesURIGraph();
if (uri != null && graph != null) {
URI parentData = graph.getParentData(uri);
if (parentData != null) {
@@ -162,7 +159,7 @@ public class ResourceUIUtil {
*/
public static URI getRootResourceURI(URI uri) {
final URI uriRoot;
- final ReadOnlyGraph<URI> graph = getResourcesURIGraph();
+ final IGraphView<URI> graph = getResourcesURIGraph();
if (uri != null && graph != null) {
URI parentData = graph.getParentData(uri);
if (parentData == null) {
@@ -222,7 +219,7 @@ public class ResourceUIUtil {
*/
public static Resource getParent(ResourceSet rs, URI uri) {
final Resource resource;
- final ReadOnlyGraph<URI> graph = getResourcesURIGraph();
+ final IGraphView<URI> graph = getResourcesURIGraph();
if (uri != null && graph != null) {
URI parentData = graph.getParentData(uri);
if (parentData != null) {
@@ -282,7 +279,7 @@ public class ResourceUIUtil {
*/
private static Entry<URI, Resource> getResourceParent(ResourceSet rs, URI uri) {
Entry<URI, Resource> entry = null;
- final ReadOnlyGraph<URI> graph = getResourcesURIGraph();
+ final IGraphView<URI> graph = getResourcesURIGraph();
if (uri != null && graph != null) {
URI parentData = graph.getParentData(uri);
if (parentData != null) {
@@ -557,7 +554,7 @@ public class ResourceUIUtil {
MergeViewerSide side) {
final Collection<Match> childrenMatches = Sets.newLinkedHashSet();
final Collection<Match> matches = comparison.getMatches();
- final ReadOnlyGraph<URI> graph = getResourcesURIGraph();
+ final IGraphView<URI> graph = getResourcesURIGraph();
if (graph == null) {
return childrenMatches;
}
@@ -602,7 +599,7 @@ public class ResourceUIUtil {
* otherwise.
*/
public static boolean isChildOf(URI uri, Collection<URI> uris) {
- final ReadOnlyGraph<URI> graph = getResourcesURIGraph();
+ final IGraphView<URI> graph = getResourcesURIGraph();
URI parentData = graph.getParentData(uri);
while (parentData != null) {
URI parent = parentData.trimFragment();

Back to the top