Simplified the API for internal traceability links
diff --git a/org.eclipse.capra.core/src/org/eclipse/capra/core/adapters/AbstractMetaModelAdapter.java b/org.eclipse.capra.core/src/org/eclipse/capra/core/adapters/AbstractMetaModelAdapter.java index 1ff2fd3..1584a37 100644 --- a/org.eclipse.capra.core/src/org/eclipse/capra/core/adapters/AbstractMetaModelAdapter.java +++ b/org.eclipse.capra.core/src/org/eclipse/capra/core/adapters/AbstractMetaModelAdapter.java
@@ -41,16 +41,20 @@ /** * Used to get internal links connected to a selected element. - * @param element - * the selected element + * + * @param element + * the selected element * @param traceModel - * the current trace model + * the current trace model * @param selectedRelationshipTypes - * the selected relationship types from the filter, if the user has selected any + * the selected relationship types from the filter, if the user + * has selected any * @param maximumDepth - * The maximum depth the transitivity should go. 0 means show all the links + * The maximum depth the transitivity should go. 0 means show all + * the links * @param existingTraces - * The trace links that have been created manually by the user, these are obtained from the trace model + * The trace links that have been created manually by the user, + * these are obtained from the trace model */ public List<Connection> getInternalElementsTransitive(EObject element, EObject traceModel, List<String> selectedRelationshipTypes, int maximumDepth, List<Connection> existingTraces) { @@ -64,7 +68,6 @@ List<String> selectedRelationshipTypes, boolean traceLinksTransitive, int transitivityDepth, List<Connection> existingTraces) { List<Connection> allElements = new ArrayList<>(); - ArrayList<Integer> duplicationCheck = new ArrayList<>(); List<Connection> directElements; if (traceLinksTransitive) { directElements = getTransitivelyConnectedElements(element, traceModel, selectedRelationshipTypes, @@ -98,8 +101,8 @@ for (EObject o : conn.getTargets()) { @SuppressWarnings("unchecked") IArtifactHandler<Object> handler = (IArtifactHandler<Object>) artifactHelper.getHandler(o).orElse(null); - handler.addInternalLinks(o, allElements, duplicationCheck, selectedRelationshipTypes); - + allElements.addAll(handler.addInternalLinks(o, selectedRelationshipTypes)); + } } @@ -107,22 +110,22 @@ @SuppressWarnings("unchecked") IArtifactHandler<Object> handler = (IArtifactHandler<Object>) artifactHelper.getHandler(element) .orElse(null); - handler.addInternalLinks(element, allElements, duplicationCheck, selectedRelationshipTypes); + allElements.addAll(handler.addInternalLinks(element, selectedRelationshipTypes)); } return allElements; } @Override public boolean isThereAnInternalTraceBetween(EObject first, EObject second) { - - ResourceSet resourceSet = new ResourceSetImpl(); - TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().get(); - EObject artifactModel = persistenceAdapter.getArtifactWrappers(resourceSet); - ArtifactHelper artifactHelper = new ArtifactHelper(artifactModel); - IArtifactHandler<?> handlerFirstElement = artifactHelper.getHandler(first).orElse(null); - IArtifactHandler<?> handlerSecondElement = artifactHelper.getHandler(second).orElse(null); - return handlerFirstElement.isThereAnInternalTraceBetween(first, second) - || handlerSecondElement.isThereAnInternalTraceBetween(first, second); + ResourceSet resourceSet = new ResourceSetImpl(); + TracePersistenceAdapter persistenceAdapter = ExtensionPointHelper.getTracePersistenceAdapter().get(); + EObject artifactModel = persistenceAdapter.getArtifactWrappers(resourceSet); + ArtifactHelper artifactHelper = new ArtifactHelper(artifactModel); + IArtifactHandler<?> handlerFirstElement = artifactHelper.getHandler(first).orElse(null); + IArtifactHandler<?> handlerSecondElement = artifactHelper.getHandler(second).orElse(null); + + return handlerFirstElement.isThereAnInternalTraceBetween(first, second) + || handlerSecondElement.isThereAnInternalTraceBetween(first, second); } }
diff --git a/org.eclipse.capra.core/src/org/eclipse/capra/core/handlers/IArtifactHandler.java b/org.eclipse.capra.core/src/org/eclipse/capra/core/handlers/IArtifactHandler.java index 39a3cad..1f3fd02 100644 --- a/org.eclipse.capra.core/src/org/eclipse/capra/core/handlers/IArtifactHandler.java +++ b/org.eclipse.capra.core/src/org/eclipse/capra/core/handlers/IArtifactHandler.java
@@ -10,7 +10,6 @@ *******************************************************************************/ package org.eclipse.capra.core.handlers; -import java.util.ArrayList; import java.util.List; import java.util.Optional; import java.util.function.BiFunction; @@ -104,7 +103,6 @@ */ Class<T> getHandledClass(); - /** * When a change in the resource occurs, it generates the message that is to * be displayed by the Capra marker. @@ -113,26 +111,34 @@ * represents changes in the state of a resource * @param wrapperUri * uri of the artifact that is associated with the change - * @return the Capra marker message. Every marker must return a unique message. - * If the message already exists it will be ignoored and a marker will - * not be created. + * @return the Capra marker message. Every marker must return a unique + * message. If the message already exists it will be ignoored and a + * marker will not be created. */ String generateMarkerMessage(IResourceDelta delta, String wrapperUri); - + /** - * Adds internal links related to a given element + * Adds internal links related to a given element. + * <p> + * This is helpful if Eclipse Capra should include links within a DSL, e.g., + * associations between classes, in its visualisations and analysis. A + * handler that implements this method should return a list of + * {@code Connection}. This list will be used in visualisations and + * analysis, but not persisted in Capra's own trace model. * * @param investigatedElement - * Element currently under investigation for links - * @param allElements - * List of all elements for Plant-uml view - * @param duplicationCheck - * List of String for checking for duplication - * @param selectedRelationshipTypes - * relationship types selected by the user to be displayed in the plantUML view + * element currently under investigation for links + * @param selectedRelationshipTypes + * relationship types selected by the user; this ensures that + * Capra only includes specific link types in the visualisation + * and analysis and implementation of the method should filter on + * this list + * + * @return a list of {@link Connection} between the + * {@code investigatedElement} and other elements the handler takes + * care of */ - void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes); + List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes); /** * Decide if two objects have an internal link between them.
diff --git a/org.eclipse.capra.handler.cdt/src/org/eclipse/capra/handler/cdt/CDTHandler.java b/org.eclipse.capra.handler.cdt/src/org/eclipse/capra/handler/cdt/CDTHandler.java index 855eb87..af71df6 100644 --- a/org.eclipse.capra.handler.cdt/src/org/eclipse/capra/handler/cdt/CDTHandler.java +++ b/org.eclipse.capra.handler.cdt/src/org/eclipse/capra/handler/cdt/CDTHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.cdt; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.apache.http.client.utils.URIBuilder; @@ -33,7 +33,8 @@ * Handler to allow tracing to and from elements of C such as files and * functions. Uses CDT as the foundation. * </p> - * This handler encodes a locator to the C element in artifact URI:s in the following way: + * This handler encodes a locator to the C element in artifact URI:s in the + * following way: * {@code platform:/Project_name/path/to/file.c#classOrStructName/memberName} * <p/> * {@code platform:/Project_name/path/to/file.c#functionClassOrStructName}. @@ -43,25 +44,25 @@ @Override public EObject createWrapper(ICElement element, EObject artifactModel) { ICompositeType type = (ICompositeType) element.getParent().getAncestor(ICElement.C_CLASS); - if (type == null) type = (ICompositeType) element.getParent().getAncestor(ICElement.C_STRUCT); - if (type == null) type = (ICompositeType) element.getParent().getAncestor(ICElement.C_UNION); - + if (type == null) + type = (ICompositeType) element.getParent().getAncestor(ICElement.C_STRUCT); + if (type == null) + type = (ICompositeType) element.getParent().getAncestor(ICElement.C_UNION); + // TODO: Will this be unique? I don't know. String typePrefix = type == null ? "" : type.getName() + "/"; - // TODO: This does not take C++ function overloading on argument types into account when + // TODO: This does not take C++ function overloading on argument types + // into account when // constructing the URI - String uri = new URIBuilder() - .setScheme("platform") - .setPath("/resource" + element.getPath()) - .setFragment(typePrefix + element.getElementName()) - .toString(); + String uri = new URIBuilder().setScheme("platform").setPath("/resource" + element.getPath()) + .setFragment(typePrefix + element.getElementName()).toString(); - ArtifactMetaModelAdapter adapter = ExtensionPointHelper.getArtifactWrapperMetaModelAdapter().get(); - EObject wrapper = adapter.createArtifact(artifactModel, this.getClass().getName(), - uri, element.getHandleIdentifier(), element.getElementName(), element.getPath().toString()); + ArtifactMetaModelAdapter adapter = ExtensionPointHelper.getArtifactWrapperMetaModelAdapter().get(); + EObject wrapper = adapter.createArtifact(artifactModel, this.getClass().getName(), uri, + element.getHandleIdentifier(), element.getElementName(), element.getPath().toString()); - return wrapper; + return wrapper; } @Override @@ -78,11 +79,12 @@ @Override public void annotateArtifact(EObject wrapper, String annotation) throws AnnotationException { IEclipsePreferences preferences = CDTPreferences.getPreferences(); - - if (!preferences.getBoolean(CDTPreferences.ANNOTATE_CDT, CDTPreferences.ANNOTATE_CDT_DEFAULT)) return; - + + if (!preferences.getBoolean(CDTPreferences.ANNOTATE_CDT, CDTPreferences.ANNOTATE_CDT_DEFAULT)) + return; + ICElement handle = resolveWrapper(wrapper); - + try { CDTAnnotate.annotateArtifact(handle, annotation); } catch (CoreException e) { @@ -96,9 +98,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for C code + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for C code + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.emf/src/org/eclipse/capra/handler/emf/EMFHandler.java b/org.eclipse.capra.handler.emf/src/org/eclipse/capra/handler/emf/EMFHandler.java index 97b4304..f9581eb 100644 --- a/org.eclipse.capra.handler.emf/src/org/eclipse/capra/handler/emf/EMFHandler.java +++ b/org.eclipse.capra.handler.emf/src/org/eclipse/capra/handler/emf/EMFHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.emf; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.Connection; @@ -45,9 +45,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for EMF models + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for EMF models + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.featureide/src/org/eclipse/capra/handler/featureide/FeatureIdeHandler.java b/org.eclipse.capra.handler.featureide/src/org/eclipse/capra/handler/featureide/FeatureIdeHandler.java index 7758d85..3f0c698 100644 --- a/org.eclipse.capra.handler.featureide/src/org/eclipse/capra/handler/featureide/FeatureIdeHandler.java +++ b/org.eclipse.capra.handler.featureide/src/org/eclipse/capra/handler/featureide/FeatureIdeHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.featureide; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.ArtifactMetaModelAdapter; @@ -49,10 +49,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { // Method currently left empty to wait for user requirements of relevant - // internal links for feature models + // internal links for FeatureIDE models + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.file/src/org/eclipse/capra/handler/file/IFileHandler.java b/org.eclipse.capra.handler.file/src/org/eclipse/capra/handler/file/IFileHandler.java index da4bcba..e2ba325 100644 --- a/org.eclipse.capra.handler.file/src/org/eclipse/capra/handler/file/IFileHandler.java +++ b/org.eclipse.capra.handler.file/src/org/eclipse/capra/handler/file/IFileHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.file; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.ArtifactMetaModelAdapter; @@ -18,9 +18,9 @@ import org.eclipse.capra.core.handlers.AbstractArtifactHandler; import org.eclipse.capra.core.helpers.ExtensionPointHelper; import org.eclipse.core.resources.IFile; +import org.eclipse.core.resources.IResourceDelta; import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.Path; -import org.eclipse.core.resources.IResourceDelta; import org.eclipse.emf.ecore.EObject; /** @@ -57,9 +57,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for Files + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for EMF models + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.gef/src/org/eclipse/capra/handler/gef/GEFHandler.java b/org.eclipse.capra.handler.gef/src/org/eclipse/capra/handler/gef/GEFHandler.java index c8f014a..f5f3826 100644 --- a/org.eclipse.capra.handler.gef/src/org/eclipse/capra/handler/gef/GEFHandler.java +++ b/org.eclipse.capra.handler.gef/src/org/eclipse/capra/handler/gef/GEFHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.gef; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.Connection; @@ -48,9 +48,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for GEF models + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for EMF models + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.hudson/src/org/eclipse/capra/handler/hudson/BuildElementHandler.java b/org.eclipse.capra.handler.hudson/src/org/eclipse/capra/handler/hudson/BuildElementHandler.java index 052d53a..98e5fde 100644 --- a/org.eclipse.capra.handler.hudson/src/org/eclipse/capra/handler/hudson/BuildElementHandler.java +++ b/org.eclipse.capra.handler.hudson/src/org/eclipse/capra/handler/hudson/BuildElementHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.hudson; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.ArtifactMetaModelAdapter; @@ -22,8 +22,8 @@ import org.eclipse.mylyn.builds.internal.core.BuildElement; /** - * A handler to allow tracing to and from build elements handled by the continuous - * integration server Hudson via the integrated Mylyn facilities. + * A handler to allow tracing to and from build elements handled by the + * continuous integration server Hudson via the integrated Mylyn facilities. */ public class BuildElementHandler extends AbstractArtifactHandler<BuildElement> { @@ -53,9 +53,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for Build Elements + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for EMF models + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.hudson/src/org/eclipse/capra/handler/hudson/TestElementHandler.java b/org.eclipse.capra.handler.hudson/src/org/eclipse/capra/handler/hudson/TestElementHandler.java index 6a3f45b..ddba107 100644 --- a/org.eclipse.capra.handler.hudson/src/org/eclipse/capra/handler/hudson/TestElementHandler.java +++ b/org.eclipse.capra.handler.hudson/src/org/eclipse/capra/handler/hudson/TestElementHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.hudson; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.ArtifactMetaModelAdapter; @@ -22,8 +22,8 @@ import org.eclipse.mylyn.builds.internal.core.TestElement; /** - * A handler to allow tracing to and from test elements handled by the continuous - * integration server Hudson via the integrated Mylyn facilities. + * A handler to allow tracing to and from test elements handled by the + * continuous integration server Hudson via the integrated Mylyn facilities. */ public class TestElementHandler extends AbstractArtifactHandler<TestElement> { @@ -54,9 +54,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for Test Elements + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for EMF models + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.jdt/src/org/eclipse/capra/handler/jdt/JavaElementHandler.java b/org.eclipse.capra.handler.jdt/src/org/eclipse/capra/handler/jdt/JavaElementHandler.java index 8c87fb0..0acd3d1 100644 --- a/org.eclipse.capra.handler.jdt/src/org/eclipse/capra/handler/jdt/JavaElementHandler.java +++ b/org.eclipse.capra.handler.jdt/src/org/eclipse/capra/handler/jdt/JavaElementHandler.java
@@ -12,7 +12,7 @@ import java.io.BufferedReader; import java.io.InputStreamReader; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.stream.Collectors; @@ -41,7 +41,8 @@ * A handler to allow creating traces to and from java elements such as classes * and methods based on JDT. * </p> - * This handler encodes a locator to the Java element in artifact URI:s in the following way: + * This handler encodes a locator to the Java element in artifact URI:s in the + * following way: * {@code platform:/Project_name/path/to/file.java#com.pack.ClassName/methodName}. */ public class JavaElementHandler extends AbstractArtifactHandler<IJavaElement> implements IAnnotateArtifact { @@ -49,34 +50,32 @@ @Override public EObject createWrapper(IJavaElement element, EObject artifactModel) { IType type = (IType) element.getParent().getAncestor(IJavaElement.TYPE); - + String fragment; if (type == null) { if (element.getElementType() == IJavaElement.TYPE) { // Top level classes get their fully qualified name fragment = ((IType) element).getFullyQualifiedName(); } else { - // This will probably never happen, if something doesn't + // This will probably never happen, if something doesn't // have a type ancestor it is always a type itself fragment = element.getElementName(); } } else { - // Case for members: A list of '/' separated type names, followed by a member name + // Case for members: A list of '/' separated type names, followed by + // a member name fragment = type.getFullyQualifiedName().replaceAll("\\$", "/") + "/" + element.getElementName(); } - - URIBuilder uriBuilder = new URIBuilder() - .setScheme("platform") - .setPath("/resource" + element.getPath()) - .setFragment(fragment); + + URIBuilder uriBuilder = new URIBuilder().setScheme("platform").setPath("/resource" + element.getPath()) + .setFragment(fragment); ArtifactMetaModelAdapter adapter = ExtensionPointHelper.getArtifactWrapperMetaModelAdapter().get(); String displayName = (type == null ? "" : (type.getElementName() + ".")) + element.getElementName(); - - EObject wrapper = adapter.createArtifact(artifactModel, this.getClass().getName(), - uriBuilder.toString(), element.getHandleIdentifier(), - displayName, element.getPath().toString()); + + EObject wrapper = adapter.createArtifact(artifactModel, this.getClass().getName(), uriBuilder.toString(), + element.getHandleIdentifier(), displayName, element.getPath().toString()); return wrapper; } @@ -161,9 +160,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for Java code + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for EMF models + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.marker/src/org/eclipse/capra/handler/marker/MarkerHandler.java b/org.eclipse.capra.handler.marker/src/org/eclipse/capra/handler/marker/MarkerHandler.java index 9e342d1..70e124a 100644 --- a/org.eclipse.capra.handler.marker/src/org/eclipse/capra/handler/marker/MarkerHandler.java +++ b/org.eclipse.capra.handler.marker/src/org/eclipse/capra/handler/marker/MarkerHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.marker; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.ArtifactMetaModelAdapter; @@ -70,10 +70,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Intentionally do nothing - + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for EMF models + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.mylyn/src/org/eclipse/capra/handler/mylyn/MylynHandler.java b/org.eclipse.capra.handler.mylyn/src/org/eclipse/capra/handler/mylyn/MylynHandler.java index addb961..ee0868a 100644 --- a/org.eclipse.capra.handler.mylyn/src/org/eclipse/capra/handler/mylyn/MylynHandler.java +++ b/org.eclipse.capra.handler.mylyn/src/org/eclipse/capra/handler/mylyn/MylynHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.mylyn; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.ArtifactMetaModelAdapter; @@ -51,9 +51,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for Mylyn tasks + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for EMF models + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.office/src/org/eclipse/capra/handler/office/OfficeHandler.java b/org.eclipse.capra.handler.office/src/org/eclipse/capra/handler/office/OfficeHandler.java index 345a26c..2921717 100644 --- a/org.eclipse.capra.handler.office/src/org/eclipse/capra/handler/office/OfficeHandler.java +++ b/org.eclipse.capra.handler.office/src/org/eclipse/capra/handler/office/OfficeHandler.java
@@ -11,7 +11,7 @@ package org.eclipse.capra.handler.office; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.ArtifactMetaModelAdapter; @@ -62,9 +62,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for Office files + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for Office documents. + return Collections.emptyList(); } @Override @@ -72,5 +73,4 @@ return false; } - }
diff --git a/org.eclipse.capra.handler.papyrus/src/org/eclipse/capra/handler/papyrus/PapyrusHandler.java b/org.eclipse.capra.handler.papyrus/src/org/eclipse/capra/handler/papyrus/PapyrusHandler.java index cf2f413..0e11538 100644 --- a/org.eclipse.capra.handler.papyrus/src/org/eclipse/capra/handler/papyrus/PapyrusHandler.java +++ b/org.eclipse.capra.handler.papyrus/src/org/eclipse/capra/handler/papyrus/PapyrusHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.papyrus; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.Connection; @@ -26,7 +26,6 @@ */ public class PapyrusHandler extends AbstractArtifactHandler<EObjectTreeElement> { - @Override public EObject createWrapper(EObjectTreeElement artifact, EObject artifactModel) { // Returns the EObject corresponding to the input object if the input is @@ -44,17 +43,19 @@ EObject sel = EMFHelper.getEObject(artifact); return org.eclipse.capra.core.helpers.EMFHelper.getIdentifier(sel); // TODO } - + @Override public String generateMarkerMessage(IResourceDelta delta, String wrapperUri) { return null; } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links specific for Papyrus models. - //Currently, UML links such as association and those from the SYSML Profile are handled by the UML Handler + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links specific for Papyrus models. + // Currently, UML links such as association and those from the SYSML + // Profile are handled by the UML Handler. + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.php/src/org/eclipse/capra/handler/php/PhpHandler.java b/org.eclipse.capra.handler.php/src/org/eclipse/capra/handler/php/PhpHandler.java index 2e5981e..b3020fc 100644 --- a/org.eclipse.capra.handler.php/src/org/eclipse/capra/handler/php/PhpHandler.java +++ b/org.eclipse.capra.handler.php/src/org/eclipse/capra/handler/php/PhpHandler.java
@@ -1,6 +1,6 @@ package org.eclipse.capra.handler.php; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.ArtifactMetaModelAdapter; @@ -41,9 +41,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for PHP Code + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for PHP code. + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.reqIf/src/org/eclipse/capra/handler/reqif/ReqIfHandler.java b/org.eclipse.capra.handler.reqIf/src/org/eclipse/capra/handler/reqif/ReqIfHandler.java index 6de0265..fc41431 100644 --- a/org.eclipse.capra.handler.reqIf/src/org/eclipse/capra/handler/reqif/ReqIfHandler.java +++ b/org.eclipse.capra.handler.reqIf/src/org/eclipse/capra/handler/reqif/ReqIfHandler.java
@@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.capra.handler.reqif; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import org.eclipse.capra.core.adapters.Connection; @@ -46,9 +46,10 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { - // Method currently left empty to wait for user requirements of relevant internal links for REQIF requirements + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + // Method currently left empty to wait for user requirements of relevant + // internal links for REQIF requirements. + return Collections.emptyList(); } @Override
diff --git a/org.eclipse.capra.handler.uml/src/org/eclipse/capra/handler/uml/UMLHandler.java b/org.eclipse.capra.handler.uml/src/org/eclipse/capra/handler/uml/UMLHandler.java index bddad2c..fd40013 100644 --- a/org.eclipse.capra.handler.uml/src/org/eclipse/capra/handler/uml/UMLHandler.java +++ b/org.eclipse.capra.handler.uml/src/org/eclipse/capra/handler/uml/UMLHandler.java
@@ -55,8 +55,9 @@ } @Override - public void addInternalLinks(EObject investigatedElement, List<Connection> allElements, - ArrayList<Integer> duplicationCheck, List<String> selectedRelationshipTypes) { + public List<Connection> addInternalLinks(EObject investigatedElement, List<String> selectedRelationshipTypes) { + List<Integer> duplicationCheck = new ArrayList<>(); + List<Connection> allElements = new ArrayList<>(); if (Relationship.class.isAssignableFrom(investigatedElement.getClass())) { if (selectedRelationshipTypes.size() == 0 || selectedRelationshipTypes.contains(investigatedElement.eClass().getName())) { @@ -329,6 +330,7 @@ } } } + return allElements; } @Override
diff --git a/org.eclipse.capra.ui.plantuml/xtend-gen/org/eclipse/capra/ui/plantuml/.VisualizationHelper.xtendbin b/org.eclipse.capra.ui.plantuml/xtend-gen/org/eclipse/capra/ui/plantuml/.VisualizationHelper.xtendbin index 883374b..6901732 100644 --- a/org.eclipse.capra.ui.plantuml/xtend-gen/org/eclipse/capra/ui/plantuml/.VisualizationHelper.xtendbin +++ b/org.eclipse.capra.ui.plantuml/xtend-gen/org/eclipse/capra/ui/plantuml/.VisualizationHelper.xtendbin Binary files differ