diff options
| author | cbrun | 2017-05-16 14:17:43 +0000 |
|---|---|---|
| committer | Pierre-Charles David | 2017-05-16 14:37:50 +0000 |
| commit | 6eea0a95fbcc795a2a1d52355a6ec217d5ecdb28 (patch) | |
| tree | 7fcfa6b3eca220faefde3b768143f824c5b79e21 | |
| parent | 6fd07f201a733c61f964d1c5894c1e0f511486ad (diff) | |
| download | org.eclipse.sirius-6eea0a95fbcc795a2a1d52355a6ec217d5ecdb28.tar.gz org.eclipse.sirius-6eea0a95fbcc795a2a1d52355a6ec217d5ecdb28.tar.xz org.eclipse.sirius-6eea0a95fbcc795a2a1d52355a6ec217d5ecdb28.zip | |
[516734] Adapt SiriusToolServices to use Set<> and List<>
Changing SiriusToolServices and SiriusContext to expose the actual type
of the collection being either Set or List.
Note that getAllSemanticElements() returns a Set and
allSemanticElements() returns a List which is unexpected but matches the
actual implementation in order to avoid any change at runtime so late in
the release cycle.
Bug: 516734
Change-Id: I26036819255c103bcc6b225534589d8b015d419f
Signed-off-by: Cedric Brun <cedric.brun@obeo.fr>
3 files changed, 12 insertions, 9 deletions
diff --git a/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/api/SiriusInputDescriptor.java b/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/api/SiriusInputDescriptor.java index 728603e64e..b22c4e2463 100644 --- a/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/api/SiriusInputDescriptor.java +++ b/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/api/SiriusInputDescriptor.java @@ -10,8 +10,9 @@ *******************************************************************************/ package org.eclipse.sirius.properties.core.api; -import java.util.Collection; import java.util.LinkedHashSet; +import java.util.List; +import java.util.Set; import org.eclipse.eef.core.api.InputDescriptor; import org.eclipse.emf.ecore.EObject; @@ -60,10 +61,10 @@ public class SiriusInputDescriptor implements InputDescriptor { * * @return all the semantic model element associated with the current selection. */ - public Collection<EObject> getAllSemanticElements() { - Collection<EObject> result = new LinkedHashSet<>(); + public Set<EObject> getAllSemanticElements() { + Set<EObject> result = new LinkedHashSet<>(); result.add(getSemanticElement()); - Option<Collection<EObject>> additional = context.getAdditionalSemanticElements(); + Option<List<EObject>> additional = context.getAdditionalSemanticElements(); if (additional.some()) { result.addAll(additional.get()); } diff --git a/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/internal/SiriusContext.java b/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/internal/SiriusContext.java index d32b8214a6..213d031f44 100644 --- a/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/internal/SiriusContext.java +++ b/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/internal/SiriusContext.java @@ -11,6 +11,7 @@ package org.eclipse.sirius.properties.core.internal; import java.util.Collection; +import java.util.List; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.emf.ecore.EObject; @@ -218,9 +219,9 @@ public final class SiriusContext { * * @return the additional semantic elements associated to the input. */ - public Option<Collection<EObject>> getAdditionalSemanticElements() { + public Option<List<EObject>> getAdditionalSemanticElements() { if (semanticDecorator instanceof DRepresentationElement) { - return Options.newSome((Collection<EObject>) ((DRepresentationElement) semanticDecorator).getSemanticElements()); + return Options.newSome((List<EObject>) ((DRepresentationElement) semanticDecorator).getSemanticElements()); } else { return Options.newNone(); } diff --git a/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/internal/SiriusToolServices.java b/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/internal/SiriusToolServices.java index 78b396b2c7..a4105c3dff 100644 --- a/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/internal/SiriusToolServices.java +++ b/plugins/org.eclipse.sirius.properties.core/src/org/eclipse/sirius/properties/core/internal/SiriusToolServices.java @@ -12,6 +12,7 @@ package org.eclipse.sirius.properties.core.internal; import java.util.Collection; import java.util.LinkedHashSet; +import java.util.List; import java.util.Set; import org.eclipse.emf.common.util.URI; @@ -153,7 +154,7 @@ public class SiriusToolServices { * The input descriptor * @return The semantic element for the given input descriptor */ - public Collection<EObject> getAllSemanticElements(SiriusInputDescriptor sid) { + public Set<EObject> getAllSemanticElements(SiriusInputDescriptor sid) { return sid.getAllSemanticElements(); } @@ -239,8 +240,8 @@ public class SiriusToolServices { * * @return all the semantic elements associated to a given context. */ - public Collection<EObject> allSemanticElements(SiriusContext ctx) { - Option<Collection<EObject>> elements = ctx.getAdditionalSemanticElements(); + public List<EObject> allSemanticElements(SiriusContext ctx) { + Option<List<EObject>> elements = ctx.getAdditionalSemanticElements(); if (elements.some()) { return elements.get(); } else { |
