Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Barbin2017-07-31 16:03:00 +0000
committerFlorian Barbin2017-08-01 15:06:20 +0000
commitc33f68b72bfc02fb155704f2e419759436f38c58 (patch)
tree02099ec30ab01cd4f2e561cdc0e7592d6e643712
parent6aeef97372b9fea424afde4ae0f7c16883b41d04 (diff)
downloadorg.eclipse.sirius-c33f68b72bfc02fb155704f2e419759436f38c58.tar.gz
org.eclipse.sirius-c33f68b72bfc02fb155704f2e419759436f38c58.tar.xz
org.eclipse.sirius-c33f68b72bfc02fb155704f2e419759436f38c58.zip
[516669] Fixes GotoMarker issue
In the case of a go to marker with a closed session, the Diagram was loaded without using the DRepresentationDescriptor.getRepresentation. As a consequence, the DRepresentationDescriptor#representation feature was not registered in the XReferencer. Bug: 516669 Change-Id: I962b4f2f65e942738448b2f62b4116022a07c474 Signed-off-by: Florian Barbin <florian.barbin@obeo.fr>
-rw-r--r--plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/internal/quickfix/ValidationFixResolution.java17
-rw-r--r--plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/part/ValidateAction.java44
-rw-r--r--plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/marker/SiriusMarkerNavigationProviderSpec.java185
-rw-r--r--plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/resource/NavigationMarkerConstants.java13
4 files changed, 145 insertions, 114 deletions
diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/internal/quickfix/ValidationFixResolution.java b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/internal/quickfix/ValidationFixResolution.java
index 196556ca75..3453b14a14 100644
--- a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/internal/quickfix/ValidationFixResolution.java
+++ b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/internal/quickfix/ValidationFixResolution.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007, 2016 THALES GLOBAL SERVICES and others.
+ * Copyright (c) 2007, 2017 THALES GLOBAL SERVICES 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
@@ -11,6 +11,7 @@
package org.eclipse.sirius.diagram.ui.internal.quickfix;
import java.text.MessageFormat;
+import java.util.Optional;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IMarker;
@@ -34,6 +35,7 @@ import org.eclipse.sirius.diagram.ui.tools.internal.commands.emf.EMFCommandFacto
import org.eclipse.sirius.diagram.ui.tools.internal.resource.NavigationMarkerConstants;
import org.eclipse.sirius.ui.business.api.dialect.DialectEditor;
import org.eclipse.sirius.ui.business.api.session.SessionEditorInput;
+import org.eclipse.sirius.viewpoint.DRepresentationDescriptor;
import org.eclipse.sirius.viewpoint.DSemanticDecorator;
import org.eclipse.sirius.viewpoint.SiriusPlugin;
import org.eclipse.sirius.viewpoint.description.validation.ValidationFix;
@@ -56,8 +58,7 @@ public class ValidationFixResolution implements IMarkerResolution {
private ValidationFix fix;
/**
- * Create a new {@link ValidationFixResolution} from a {@link ValidationFix}
- * .
+ * Create a new {@link ValidationFixResolution} from a {@link ValidationFix} .
*
* @param fix
* {@link ValidationFix} to execute.
@@ -138,16 +139,18 @@ public class ValidationFixResolution implements IMarkerResolution {
private View getMarkedView(Session session, IMarker marker) {
String elementID = marker.getAttribute(org.eclipse.gmf.runtime.common.ui.resources.IMarker.ELEMENT_ID, null);
- String diagramURI = marker.getAttribute(NavigationMarkerConstants.DIAGRAM_URI, null);
+ String diagramDescriptorURI = marker.getAttribute(NavigationMarkerConstants.DIAGRAM_DESCRIPTOR_URI, null);
- if (diagramURI == null || elementID == null) {
+ if (diagramDescriptorURI == null || elementID == null) {
return null;
}
ResourceSet set = session.getTransactionalEditingDomain().getResourceSet();
if (set != null) {
- EObject markedDiagram = set.getEObject(URI.createURI(diagramURI), true);
- EObject markerTarget = markedDiagram instanceof Diagram ? markedDiagram.eResource().getEObject(elementID) : null;
+ EObject markedDiagramDescriptor = set.getEObject(URI.createURI(diagramDescriptorURI), true);
+ EObject markedDiagram = Optional.ofNullable(markedDiagramDescriptor).filter(DRepresentationDescriptor.class::isInstance).map(d -> ((DRepresentationDescriptor) d).getRepresentation())
+ .orElse(null);
+ EObject markerTarget = markedDiagram instanceof DDiagram ? markedDiagram.eResource().getEObject(elementID) : null;
if (markerTarget instanceof View) {
return (View) markerTarget;
}
diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/part/ValidateAction.java b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/part/ValidateAction.java
index 53a983dd15..826b4c2ec2 100644
--- a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/part/ValidateAction.java
+++ b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/part/ValidateAction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007, 2015 THALES GLOBAL SERVICES and others.
+ * Copyright (c) 2007, 2017 THALES GLOBAL SERVICES 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
@@ -16,6 +16,7 @@ import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
+import java.util.Optional;
import java.util.Set;
import org.eclipse.core.resources.IFile;
@@ -43,6 +44,7 @@ import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.action.Action;
import org.eclipse.jface.operation.IRunnableWithProgress;
+import org.eclipse.sirius.business.api.query.DRepresentationQuery;
import org.eclipse.sirius.business.api.session.Session;
import org.eclipse.sirius.business.api.session.SessionManager;
import org.eclipse.sirius.common.ui.tools.api.util.EclipseUIUtil;
@@ -59,6 +61,7 @@ import org.eclipse.sirius.diagram.ui.tools.internal.part.OffscreenEditPartFactor
import org.eclipse.sirius.ext.base.Option;
import org.eclipse.sirius.ext.emf.AllContents;
import org.eclipse.sirius.tools.api.validation.constraint.RuleWrappingStatus;
+import org.eclipse.sirius.viewpoint.DRepresentationDescriptor;
import org.eclipse.sirius.viewpoint.DRepresentationElement;
import org.eclipse.sirius.viewpoint.DSemanticDecorator;
import org.eclipse.sirius.viewpoint.ViewpointPackage;
@@ -169,9 +172,8 @@ public class ValidateAction extends Action {
}
/**
- * @was-generated NOT it is not necessary to call the createMarkers
- * operation since the markers are automatically added for
- * EMF validation. <br/>
+ * @was-generated NOT it is not necessary to call the createMarkers operation since the markers are automatically
+ * added for EMF validation. <br/>
* Validation is run on view elements and its children.<br/>
*/
private static void validate(DiagramEditPart diagramEditPart, View view) {
@@ -209,10 +211,9 @@ public class ValidateAction extends Action {
}
/*
- * The marker should reference the main aird file, to be sure to load all
- * the user session when clicking on the marker if the corresponding session
- * is closed (referenced analysis cases or CDO for which the main aird is
- * local file with information concerning the server).
+ * The marker should reference the main aird file, to be sure to load all the user session when clicking on the
+ * marker if the corresponding session is closed (referenced analysis cases or CDO for which the main aird is local
+ * file with information concerning the server).
* @was-generated NOT
*/
private static IFile getFileToMark(DiagramEditPart diagramEditPart, View view) {
@@ -284,12 +285,8 @@ public class ValidateAction extends Action {
}
// Search diagram URI
Object object = viewer.getFocusEditPart().getModel();
- String diagramUri = null;
- if (object instanceof Diagram) {
- final URI uri = EcoreUtil.getURI((Diagram) object);
- diagramUri = uri.toString();
- }
- SiriusMarkerNavigationProviderSpec.addValidationRuleMarker(nextStatus.getOriginRule(), target, elementId, diagramUri, semanticURI, location, message, statusSeverity);
+ String diagramDescriptorUri = getDRepresentationDescriptorURIFromDiagram(object);
+ SiriusMarkerNavigationProviderSpec.addValidationRuleMarker(nextStatus.getOriginRule(), target, elementId, diagramDescriptorUri, semanticURI, location, message, statusSeverity);
}
/**
@@ -346,12 +343,23 @@ public class ValidateAction extends Action {
}
// Search diagram URI
Object object = viewer.getFocusEditPart().getModel();
- String diagramUri = null;
+ String diagramDescriptorUri = getDRepresentationDescriptorURIFromDiagram(object);
+ SiriusMarkerNavigationProviderSpec.addMarker(target, elementId, diagramDescriptorUri, semanticURI, location, message, statusSeverity);
+ }
+
+ private static String getDRepresentationDescriptorURIFromDiagram(Object object) {
+ String diagramDescriptorUri = null;
if (object instanceof Diagram) {
- final URI uri = EcoreUtil.getURI((Diagram) object);
- diagramUri = uri.toString();
+ Optional<DRepresentationDescriptor> optional = Optional.of((Diagram) object).map(View::getElement).filter(DDiagram.class::isInstance).map(d -> {
+ DRepresentationQuery query = new DRepresentationQuery((DDiagram) d);
+ return query.getRepresentationDescriptor();
+ });
+ if (optional.isPresent()) {
+ final URI uri = EcoreUtil.getURI(optional.get());
+ diagramDescriptorUri = uri.toString();
+ }
}
- SiriusMarkerNavigationProviderSpec.addMarker(target, elementId, diagramUri, semanticURI, location, message, statusSeverity);
+ return diagramDescriptorUri;
}
/**
diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/marker/SiriusMarkerNavigationProviderSpec.java b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/marker/SiriusMarkerNavigationProviderSpec.java
index ff20058139..ae0dde95b1 100644
--- a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/marker/SiriusMarkerNavigationProviderSpec.java
+++ b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/marker/SiriusMarkerNavigationProviderSpec.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009, 2016 THALES GLOBAL SERVICES and others.
+ * Copyright (c) 2009, 2017 THALES GLOBAL SERVICES 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
@@ -12,6 +12,7 @@ package org.eclipse.sirius.diagram.ui.tools.internal.marker;
import java.util.Arrays;
import java.util.Map;
+import java.util.Optional;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IMarker;
@@ -21,6 +22,7 @@ import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.emf.common.ui.URIEditorInput;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.gef.EditPart;
import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.sirius.business.api.modelingproject.AbstractRepresentationsFileJob;
@@ -30,6 +32,7 @@ import org.eclipse.sirius.diagram.DDiagram;
import org.eclipse.sirius.diagram.DSemanticDiagram;
import org.eclipse.sirius.diagram.DiagramPlugin;
import org.eclipse.sirius.diagram.business.api.query.EObjectQuery;
+import org.eclipse.sirius.diagram.ui.business.api.query.DDiagramGraphicalQuery;
import org.eclipse.sirius.diagram.ui.internal.providers.SiriusMarkerNavigationProvider;
import org.eclipse.sirius.diagram.ui.part.SiriusDiagramEditor;
import org.eclipse.sirius.diagram.ui.part.SiriusDiagramEditorUtil;
@@ -40,6 +43,7 @@ import org.eclipse.sirius.ui.business.api.dialect.DialectEditor;
import org.eclipse.sirius.ui.business.api.dialect.DialectUIManager;
import org.eclipse.sirius.ui.business.api.session.SessionEditorInput;
import org.eclipse.sirius.ui.tools.api.project.ModelingProjectManager;
+import org.eclipse.sirius.viewpoint.DRepresentationDescriptor;
import org.eclipse.sirius.viewpoint.description.validation.ValidationRule;
import org.eclipse.ui.IEditorReference;
import org.eclipse.ui.PartInitException;
@@ -55,88 +59,114 @@ public class SiriusMarkerNavigationProviderSpec extends SiriusMarkerNavigationPr
@Override
protected void doGotoMarker(final IMarker marker) {
- final String diagramURI = marker.getAttribute(NavigationMarkerConstants.DIAGRAM_URI, null);
+ final String diagramDescriptorURI = marker.getAttribute(NavigationMarkerConstants.DIAGRAM_DESCRIPTOR_URI, null);
final String elementId = marker.getAttribute(org.eclipse.gmf.runtime.common.core.resources.IMarker.ELEMENT_ID, null);
- if (diagramURI == null || elementId == null || !(getEditor() instanceof SiriusDiagramEditor)) {
+ if (diagramDescriptorURI == null || elementId == null || !(getEditor() instanceof SiriusDiagramEditor)) {
return;
}
final SiriusDiagramEditor defaultEditor = (SiriusDiagramEditor) getEditor();
URI markedResource = URI.createPlatformResourceURI(marker.getResource().getFullPath().toString(), true);
- URI markedDiagramURI = URI.createURI(diagramURI);
- Diagram markedDiagram = (Diagram) defaultEditor.getDiagram().eResource().getEObject(markedDiagramURI.fragment());
- if (markedDiagram == null) {
- markedDiagram = (Diagram) defaultEditor.getEditingDomain().getResourceSet().getEObject(markedDiagramURI, true);
+ URI markedDiagramDescriptorURI = URI.createURI(diagramDescriptorURI);
+ final SiriusDiagramEditor targetEditor = switchToTargetEditor(defaultEditor, markedResource, markedDiagramDescriptorURI);
+ if (targetEditor != null) {
+ final Map<?, ?> editPartRegistry = targetEditor.getDiagramGraphicalViewer().getEditPartRegistry();
+ final EObject targetView = targetEditor.getDiagram().eResource().getEObject(elementId);
+ if (targetView == null) {
+ return;
+ }
+ final EditPart targetEditPart = (EditPart) editPartRegistry.get(targetView);
+ if (targetEditPart != null) {
+ SiriusDiagramEditorUtil.selectElementsInDiagram(targetEditor, Arrays.asList(new EditPart[] { targetEditPart }));
+ }
+ PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().activate(targetEditor);
}
+ }
- if (markedDiagram != null) {
- final SiriusDiagramEditor targetEditor = switchToTargetEditor(defaultEditor, markedResource, markedDiagramURI, markedDiagram);
-
- if (targetEditor != null) {
- final Map<?, ?> editPartRegistry = targetEditor.getDiagramGraphicalViewer().getEditPartRegistry();
- final EObject targetView = targetEditor.getDiagram().eResource().getEObject(elementId);
- if (targetView == null) {
- return;
+ private SiriusDiagramEditor switchToTargetEditor(final SiriusDiagramEditor defaultEditor, final URI sessionResourceUri, URI markedDiagramDescriptorURI) {
+ SiriusDiagramEditor targetEditor = null;
+ DRepresentationDescriptor markedDiagramDescriptor = (DRepresentationDescriptor) defaultEditor.getDiagram().eResource().getEObject(markedDiagramDescriptorURI.fragment());
+ if (markedDiagramDescriptor == null) {
+ markedDiagramDescriptor = (DRepresentationDescriptor) defaultEditor.getEditingDomain().getResourceSet().getEObject(markedDiagramDescriptorURI, true);
+ }
+ Optional<Diagram> optionalDiagram = getGMFDiagramFromDRepresentationDescriptor(markedDiagramDescriptor);
+ if (optionalDiagram.isPresent()) {
+ Diagram markerDiagram = optionalDiagram.get();
+ URI markerDiagramURI = EcoreUtil.getURI(markerDiagram);
+ if (defaultEditor.getDiagram().equals(markerDiagram)) {
+ targetEditor = defaultEditor;
+ } else {
+ URIEditorInput editorInput = null;
+ String editorName = markedDiagramDescriptor.getName();
+ Session session = new EObjectQuery(markedDiagramDescriptor).getSession();
+ if (session != null) {
+ editorInput = new SessionEditorInput(markerDiagramURI, editorName, session);
+ } else {
+ editorInput = new URIEditorInput(markerDiagramURI, editorName);
}
- final EditPart targetEditPart = (EditPart) editPartRegistry.get(targetView);
- if (targetEditPart != null) {
- SiriusDiagramEditorUtil.selectElementsInDiagram(targetEditor, Arrays.asList(new EditPart[] { targetEditPart }));
+ final SiriusDiagramEditor searchEditor = searchEditor(editorInput);
+ if (searchEditor != null) {
+ targetEditor = searchEditor;
+ } else {
+ targetEditor = handleClosedEditorCase(defaultEditor, sessionResourceUri, markedDiagramDescriptorURI, markerDiagram, editorInput);
}
- PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().activate(targetEditor);
}
}
+ return targetEditor;
}
- private SiriusDiagramEditor switchToTargetEditor(final SiriusDiagramEditor defaultEditor, final URI sessionResourceUri, URI markerDiagramURI, Diagram markerDiagram) {
- final SiriusDiagramEditor targetEditor;
- if (defaultEditor.getDiagram().equals(markerDiagram)) {
- targetEditor = defaultEditor;
- } else {
- URIEditorInput editorInput = null;
- String editorName = SiriusMarkerNavigationProviderSpec.resolveSemanticElement(markerDiagram).getName();
- Session session = new EObjectQuery(markerDiagram).getSession();
- if (session != null) {
- editorInput = new SessionEditorInput(markerDiagramURI, editorName, session);
- } else {
- editorInput = new URIEditorInput(markerDiagramURI, editorName);
+ private SiriusDiagramEditor openEditor(final SiriusDiagramEditor defaultEditor, URI markedDiagramDescriptorURI, Diagram markerDiagram, Session session) {
+ DRepresentationDescriptor markedDiagramDescriptor;
+ Diagram diagramToOpen = markerDiagram;
+ if (session.getTransactionalEditingDomain() != null && session.getTransactionalEditingDomain().getResourceSet() != defaultEditor.getEditingDomain().getResourceSet()) {
+ markedDiagramDescriptor = (DRepresentationDescriptor) session.getTransactionalEditingDomain().getResourceSet().getEObject(markedDiagramDescriptorURI, true);
+ Optional<Diagram> optionDiagramToOpen = getGMFDiagramFromDRepresentationDescriptor(markedDiagramDescriptor);
+ if (optionDiagramToOpen.isPresent()) {
+ diagramToOpen = optionDiagramToOpen.get();
}
- final SiriusDiagramEditor searchEditor = searchEditor(editorInput);
- if (searchEditor != null) {
- targetEditor = searchEditor;
- } else {
- session = getOrOpenTargetSession(sessionResourceUri);
+ }
- // Open the corresponding editor
- SiriusDiagramEditor openedEditor = null;
- if (session != null) {
- Diagram diagramToOpen = markerDiagram;
- if (session.getTransactionalEditingDomain() != null && session.getTransactionalEditingDomain().getResourceSet() != defaultEditor.getEditingDomain().getResourceSet()) {
- diagramToOpen = (Diagram) session.getTransactionalEditingDomain().getResourceSet().getEObject(markerDiagramURI, true);
- }
+ if (diagramToOpen != null) {
+ return (SiriusDiagramEditor) DialectUIManager.INSTANCE.openEditor(session, (DDiagram) diagramToOpen.getElement(), new NullProgressMonitor());
+ }
+ return null;
+ }
- if (diagramToOpen != null) {
- openedEditor = (SiriusDiagramEditor) DialectUIManager.INSTANCE.openEditor(session, (DDiagram) diagramToOpen.getElement(), new NullProgressMonitor());
- }
- }
+ private SiriusDiagramEditor handleClosedEditorCase(final SiriusDiagramEditor defaultEditor, final URI sessionResourceUri, URI markedDiagramDescriptorURI, Diagram markerDiagram,
+ URIEditorInput editorInput) {
+ SiriusDiagramEditor targetEditor = null;
+ Session session = getOrOpenTargetSession(sessionResourceUri);
- if (openedEditor != null) {
- targetEditor = openedEditor;
- if (defaultEditor instanceof DialectEditor && ((DialectEditor) defaultEditor).getRepresentation() == null) {
- // Close the error editor.
- defaultEditor.close(false);
- }
- } else {
- // Last chance try to change the input of the default
- // editor.
- targetEditor = defaultEditor;
- targetEditor.setInput(editorInput);
- }
+ // Open the corresponding editor
+ SiriusDiagramEditor openedEditor = null;
+ if (session != null) {
+ openedEditor = openEditor(defaultEditor, markedDiagramDescriptorURI, markerDiagram, session);
+ }
+
+ if (openedEditor != null) {
+ targetEditor = openedEditor;
+ if (defaultEditor instanceof DialectEditor && ((DialectEditor) defaultEditor).getRepresentation() == null) {
+ // Close the error editor.
+ defaultEditor.close(false);
}
+ } else {
+ // Last chance try to change the input of the default
+ // editor.
+ targetEditor = defaultEditor;
+ targetEditor.setInput(editorInput);
}
return targetEditor;
}
+ private Optional<Diagram> getGMFDiagramFromDRepresentationDescriptor(DRepresentationDescriptor markedDiagramDescriptor) {
+ Optional<Diagram> optional = Optional.ofNullable(markedDiagramDescriptor).map(DRepresentationDescriptor::getRepresentation).filter(DDiagram.class::isInstance).map(dd -> {
+ DDiagramGraphicalQuery representationQuery = new DDiagramGraphicalQuery((DDiagram) dd);
+ return representationQuery.getAssociatedGMFDiagram().get();
+ });
+ return optional;
+ }
+
private Session getOrOpenTargetSession(final URI sessionResourceUri) {
Session session = SessionManager.INSTANCE.getExistingSession(sessionResourceUri);
if (session == null) {
@@ -154,8 +184,7 @@ public class SiriusMarkerNavigationProviderSpec extends SiriusMarkerNavigationPr
}
/**
- * Search a {@link SiriusDiagramEditor} with the <code>editorInput</code> in
- * the opened editors.
+ * Search a {@link SiriusDiagramEditor} with the <code>editorInput</code> in the opened editors.
*
* @param editorInput
* The editorInput to find.
@@ -186,25 +215,23 @@ public class SiriusMarkerNavigationProviderSpec extends SiriusMarkerNavigationPr
* The file to add marker
* @param elementId
* the element id (segment of URI)
- * @param diagramURI
- * the URI of the diagram where the element is
+ * @param diagramDescriptorURI
+ * the URI of the {@link DRepresentationDescriptor} where the element is
* @param semanticURI
* the URI of the semantic element
* @param location
- * A human-readable (localized) string which can be used to
- * distinguish between markers on a resource
+ * A human-readable (localized) string which can be used to distinguish between markers on a resource
* @param message
* Describe the problem
* @param statusSeverity
- * A number from the set of high, normal and low priorities
- * defined by the platform.
+ * A number from the set of high, normal and low priorities defined by the platform.
* @return The added marker.
*/
- public static IMarker addMarker(final IFile file, final String elementId, final String diagramURI, final String semanticURI, final String location, final String message,
+ public static IMarker addMarker(final IFile file, final String elementId, final String diagramDescriptorURI, final String semanticURI, final String location, final String message,
final int statusSeverity) {
final IMarker marker = SiriusMarkerNavigationProvider.addMarker(file, elementId, location, message, statusSeverity);
try {
- marker.setAttribute(NavigationMarkerConstants.DIAGRAM_URI, diagramURI);
+ marker.setAttribute(NavigationMarkerConstants.DIAGRAM_DESCRIPTOR_URI, diagramDescriptorURI);
marker.setAttribute(NavigationMarkerConstants.SEMANTIC_URI, semanticURI);
marker.setAttribute(IDE.EDITOR_ID_ATTR, DDiagramEditor.EDITOR_ID);
} catch (final CoreException e) {
@@ -224,25 +251,23 @@ public class SiriusMarkerNavigationProviderSpec extends SiriusMarkerNavigationPr
* The file to add marker
* @param elementId
* the element id (segment of URI)
- * @param diagramURI
- * the URI of the diagram where the element is
+ * @param diagramDescriptorUri
+ * the URI of the diagram DRepresentationDescriptor where the element is
* @param semanticURI
* the URI of the semantic element
* @param location
- * A human-readable (localized) string which can be used to
- * distinguish between markers on a resource
+ * A human-readable (localized) string which can be used to distinguish between markers on a resource
* @param message
* Describe the problem
* @param statusSeverity
- * A number from the set of high, normal and low priorities
- * defined by the platform.
+ * A number from the set of high, normal and low priorities defined by the platform.
* @return The added marker.
*/
- public static IMarker addValidationRuleMarker(final ValidationRule validationRule, final IFile file, final String elementId, final String diagramURI, final String semanticURI,
+ public static IMarker addValidationRuleMarker(final ValidationRule validationRule, final IFile file, final String elementId, final String diagramDescriptorUri, final String semanticURI,
final String location, final String message, final int statusSeverity) {
final IMarker marker = SiriusMarkerNavigationProvider.addValidationRuleMarker(validationRule, file, elementId, location, message, statusSeverity);
try {
- marker.setAttribute(NavigationMarkerConstants.DIAGRAM_URI, diagramURI);
+ marker.setAttribute(NavigationMarkerConstants.DIAGRAM_DESCRIPTOR_URI, diagramDescriptorUri);
marker.setAttribute(NavigationMarkerConstants.SEMANTIC_URI, semanticURI);
marker.setAttribute(IDE.EDITOR_ID_ATTR, DDiagramEditor.EDITOR_ID);
} catch (final CoreException e) {
@@ -254,13 +279,11 @@ public class SiriusMarkerNavigationProviderSpec extends SiriusMarkerNavigationPr
// CHECKSTYLE:ON
/**
- * Returns the target value of the {@link DSemanticDiagram} that is
- * represented by the <code>diagram</code>.
+ * Returns the target value of the {@link DSemanticDiagram} that is represented by the <code>diagram</code>.
*
* @param diagram
* a GMF diagram.
- * @return the target value of the {@link DSemanticDiagram} that is
- * represented by this diagram.
+ * @return the target value of the {@link DSemanticDiagram} that is represented by this diagram.
*/
public static EObject resolveTargetSemanticElement(final Diagram diagram) {
final EObject semanticDiagram = diagram.getElement();
diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/resource/NavigationMarkerConstants.java b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/resource/NavigationMarkerConstants.java
index ad494bc4b3..676de013e0 100644
--- a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/resource/NavigationMarkerConstants.java
+++ b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/resource/NavigationMarkerConstants.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2009 THALES GLOBAL SERVICES.
+ * Copyright (c) 2009, 2017 THALES GLOBAL SERVICES.
* 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
@@ -18,17 +18,14 @@ package org.eclipse.sirius.diagram.ui.tools.internal.resource;
public final class NavigationMarkerConstants {
/**
- * The key for record the diagram info for retrieve the diagram on marker
- * opening.<BR>
- * The URI is like this :
- * platform:/resource/projectName/folderPath/fileName#id
+ * The key for record the diagram descriptor info for retrieve the diagram on marker opening.<BR>
+ * The URI is like this : platform:/resource/projectName/folderPath/fileName#id
*/
- public static final String DIAGRAM_URI = "DIAGRAM_URI"; //$NON-NLS-1$
+ public static final String DIAGRAM_DESCRIPTOR_URI = "DIAGRAM_DESCRIPTOR_URI"; //$NON-NLS-1$
/**
* The key for record the semantic element URI.<BR>
- * The URI is like this :
- * platform:/resource/projectName/folderPath/fileName#id
+ * The URI is like this : platform:/resource/projectName/folderPath/fileName#id
*/
public static final String SEMANTIC_URI = "SEMANTIC_URI"; //$NON-NLS-1$

Back to the top