Loading plugins/org.etsi.mts.tdl.graphical.viewpoint/META-INF/MANIFEST.MF +2 −1 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ Require-Bundle: org.eclipse.ui, org.etsi.mts.tdl.model, org.eclipse.sirius.diagram.sequence.ui, org.eclipse.sirius.ext.base, org.eclipse.ui.ide org.eclipse.ui.ide, org.eclipse.sirius.diagram.sequence Bundle-ActivationPolicy: lazy Bundle-RequiredExecutionEnvironment: JavaSE-1.6 plugins/org.etsi.mts.tdl.graphical.viewpoint/description/TDL.odesign +13 −1 Original line number Diff line number Diff line <?xml version="1.0" encoding="UTF-8"?> <description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/sequence/description/2.0.0" xmlns:description_2="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" name="TDL" version="12.0.0.2017041100"> <description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/sequence/description/2.0.0" xmlns:description_2="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:tool="http://www.eclipse.org/sirius/diagram/sequence/description/tool/2.0.0" xmlns:tool_1="http://www.eclipse.org/sirius/description/tool/1.1.0" name="TDL" version="12.0.0.2017041100"> <ownedViewpoints name="org.etsi.mts.tdl" label="TDL"> <ownedRepresentations xsi:type="description_1:SequenceDiagramDescription" name="TestDescriptionDiagram" label="TDL Behavior" domainClass="tdl.TestDescription" enablePopupBars="true" endsOrdering="[getOccurrences()->select(e|eventEnds->includes(e))/]" instanceRolesOrdering="[testConfiguration.connection.endPoint->sortedBy(ref|ref.component.name + '.' + ref.gate.name)/]"> <metamodel href="../tdl.ecore#/"/> Loading Loading @@ -454,6 +454,17 @@ <foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='white']"/> </style> </containerMappings> <toolSections name="edit"> <ownedTools xsi:type="tool:ReorderTool" name="messageReorder" mappings="//@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@edgeMappings[name='interaction'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='actionReference'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='assertion'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='assignment'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='combinedBehaviour'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='globalAction'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='inlineAction'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='testDescriptionReference'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='timeOperation'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='timerOperation'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='verdictAssignment']"> <startingEndPredecessorBefore name="startingEndPredecessorBefore"/> <startingEndPredecessorAfter name="startingEndPredecessorAfter"/> <finishingEndPredecessorBefore name="finishingEndPredecessorBefore"/> <finishingEndPredecessorAfter name="finishingEndPredecessorAfter"/> <onEventMovedOperation> <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="[reorderBehaviour(self, startingEndPredecessorAfter)/]"/> </onEventMovedOperation> </ownedTools> </toolSections> </defaultLayer> </ownedRepresentations> <ownedRepresentations xsi:type="description_2:DiagramDescription" name="GenericDiagram" label="Generic TDL" domainClass="tdl.Package" enablePopupBars="true"> Loading Loading @@ -1199,5 +1210,6 @@ <ownedJavaExtensions qualifiedClassName="org.etsi.mts.tdl.graphical.extensions.DataUseLabelProvider"/> <ownedJavaExtensions qualifiedClassName="org.etsi.mts.tdl.graphical.extensions.BehaviourProvider"/> <ownedJavaExtensions qualifiedClassName="org.etsi.mts.tdl.graphical.extensions.ModelHelper"/> <ownedJavaExtensions qualifiedClassName="org.etsi.mts.tdl.graphical.extensions.BehaviourModifications"/> </ownedViewpoints> </description:Group> plugins/org.etsi.mts.tdl.graphical.viewpoint/src/org/etsi/mts/tdl/graphical/extensions/BehaviourModifications.java 0 → 100644 +66 −0 Original line number Diff line number Diff line package org.etsi.mts.tdl.graphical.extensions; import java.util.List; import org.eclipse.emf.ecore.EObject; import org.eclipse.sirius.diagram.DDiagramElement; import org.eclipse.sirius.diagram.DSemanticDiagram; import org.eclipse.sirius.diagram.sequence.ordering.EventEnd; import org.etsi.mts.tdl.Behaviour; import org.etsi.mts.tdl.Block; import org.etsi.mts.tdl.SingleCombinedBehaviour; import org.etsi.mts.tdl.Target; import org.etsi.mts.tdl.TestDescription; public class BehaviourModifications { private ModelHelper helper = new ModelHelper(); public static void addBehaviour(EObject startingEndPredecessor, DDiagramElement diagramElement, Behaviour behaviour) { DSemanticDiagram diagram = (DSemanticDiagram) ((DDiagramElement)diagramElement).getParentDiagram(); TestDescription td = (TestDescription) diagram.getTarget(); addBehaviour(startingEndPredecessor, td, behaviour); } public static void addBehaviour(EObject endPredecessor, TestDescription td, Behaviour behaviour) { if (endPredecessor instanceof EventEnd) endPredecessor = ((EventEnd) endPredecessor).getSemanticEnd(); Block parent = null; Behaviour prev = null; if (endPredecessor instanceof Behaviour) { prev = (Behaviour) endPredecessor; } else if (endPredecessor instanceof Block) { parent = (Block) endPredecessor; } else if (endPredecessor == null) { parent = ((SingleCombinedBehaviour)td.getBehaviourDescription().getBehaviour()).getBlock(); } else prev = (Behaviour) BehaviourProvider.getBegin(endPredecessor); if (parent == null && prev != null) parent = (Block) prev.eContainer(); List<Behaviour> list = parent.getBehaviour(); list.remove(behaviour); int index = 0; if (prev != null) index = parent.getBehaviour().indexOf(prev) + 1; list.add(index, behaviour); } public Object reorderBehaviour(Object selection, Object preAfter) { Behaviour b = null; if (selection instanceof Target) b = (Behaviour) ((Target) selection).eContainer(); else b = (Behaviour) selection; addBehaviour((EObject)preAfter, helper.getTestDescription(b), b); return selection; } } plugins/org.etsi.mts.tdl.graphical.viewpoint/src/org/etsi/mts/tdl/graphical/extensions/BehaviourProvider.java +14 −2 Original line number Diff line number Diff line Loading @@ -130,8 +130,8 @@ public class BehaviourProvider { private EObject createEnd(EObject e) { Resource extResource = getExtensionResource(e); EPackage extPackage = EPackageRegistryImpl.INSTANCE.getEPackage(EXTENSION_URI); EClass endClass = (EClass) extPackage.getEClassifier(END_CLASS); EPackage extPackage = getExtensionPackage(); EClass endClass = getEndClass(); EObject end = extPackage.getEFactoryInstance().create(endClass); end.eSet(endClass.getEStructuralFeature(END_BEGIN_FEATURE), e); Loading @@ -141,6 +141,18 @@ public class BehaviourProvider { return end; } private static EPackage getExtensionPackage() { return EPackageRegistryImpl.INSTANCE.getEPackage(EXTENSION_URI); } private static EClass getEndClass() { return (EClass) getExtensionPackage().getEClassifier(END_CLASS); } public static EObject getBegin(EObject end) { return (EObject) end.eGet(getEndClass().getEStructuralFeature(END_BEGIN_FEATURE)); } private Resource getExtensionResource(EObject e) { Resource mResource = e.eResource(); ResourceSet rs = mResource.getResourceSet(); Loading plugins/org.etsi.mts.tdl.graphical.viewpoint/src/org/etsi/mts/tdl/graphical/extensions/ModelHelper.java +8 −2 Original line number Diff line number Diff line Loading @@ -12,16 +12,22 @@ import org.etsi.mts.tdl.TestConfiguration; import org.etsi.mts.tdl.TestDescription; public class ModelHelper { public TestConfiguration getTestConfiguration(Behaviour b) { public TestDescription getTestDescription(Behaviour b) { EObject c = b; while (c != null) { if (c instanceof TestDescription) return ((TestDescription) c).getTestConfiguration(); return (TestDescription) c; c = c.eContainer(); } return null; } public TestConfiguration getTestConfiguration(Behaviour b) { TestDescription td = getTestDescription(b); return td != null ? td.getTestConfiguration() : null; } public List<EObject> allBehaviours(TestDescription e) { List<EObject> behaviours = new ArrayList<EObject>(); TreeIterator<EObject> iter = e.eAllContents(); Loading Loading
plugins/org.etsi.mts.tdl.graphical.viewpoint/META-INF/MANIFEST.MF +2 −1 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ Require-Bundle: org.eclipse.ui, org.etsi.mts.tdl.model, org.eclipse.sirius.diagram.sequence.ui, org.eclipse.sirius.ext.base, org.eclipse.ui.ide org.eclipse.ui.ide, org.eclipse.sirius.diagram.sequence Bundle-ActivationPolicy: lazy Bundle-RequiredExecutionEnvironment: JavaSE-1.6
plugins/org.etsi.mts.tdl.graphical.viewpoint/description/TDL.odesign +13 −1 Original line number Diff line number Diff line <?xml version="1.0" encoding="UTF-8"?> <description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/sequence/description/2.0.0" xmlns:description_2="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" name="TDL" version="12.0.0.2017041100"> <description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/sequence/description/2.0.0" xmlns:description_2="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:tool="http://www.eclipse.org/sirius/diagram/sequence/description/tool/2.0.0" xmlns:tool_1="http://www.eclipse.org/sirius/description/tool/1.1.0" name="TDL" version="12.0.0.2017041100"> <ownedViewpoints name="org.etsi.mts.tdl" label="TDL"> <ownedRepresentations xsi:type="description_1:SequenceDiagramDescription" name="TestDescriptionDiagram" label="TDL Behavior" domainClass="tdl.TestDescription" enablePopupBars="true" endsOrdering="[getOccurrences()->select(e|eventEnds->includes(e))/]" instanceRolesOrdering="[testConfiguration.connection.endPoint->sortedBy(ref|ref.component.name + '.' + ref.gate.name)/]"> <metamodel href="../tdl.ecore#/"/> Loading Loading @@ -454,6 +454,17 @@ <foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='white']"/> </style> </containerMappings> <toolSections name="edit"> <ownedTools xsi:type="tool:ReorderTool" name="messageReorder" mappings="//@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@edgeMappings[name='interaction'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='actionReference'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='assertion'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='assignment'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='combinedBehaviour'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='globalAction'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='inlineAction'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='testDescriptionReference'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='timeOperation'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='timerOperation'] //@ownedViewpoints[name='org.etsi.mts.tdl']/@ownedRepresentations[name='TestDescriptionDiagram']/@defaultLayer/@containerMappings[name='verdictAssignment']"> <startingEndPredecessorBefore name="startingEndPredecessorBefore"/> <startingEndPredecessorAfter name="startingEndPredecessorAfter"/> <finishingEndPredecessorBefore name="finishingEndPredecessorBefore"/> <finishingEndPredecessorAfter name="finishingEndPredecessorAfter"/> <onEventMovedOperation> <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="[reorderBehaviour(self, startingEndPredecessorAfter)/]"/> </onEventMovedOperation> </ownedTools> </toolSections> </defaultLayer> </ownedRepresentations> <ownedRepresentations xsi:type="description_2:DiagramDescription" name="GenericDiagram" label="Generic TDL" domainClass="tdl.Package" enablePopupBars="true"> Loading Loading @@ -1199,5 +1210,6 @@ <ownedJavaExtensions qualifiedClassName="org.etsi.mts.tdl.graphical.extensions.DataUseLabelProvider"/> <ownedJavaExtensions qualifiedClassName="org.etsi.mts.tdl.graphical.extensions.BehaviourProvider"/> <ownedJavaExtensions qualifiedClassName="org.etsi.mts.tdl.graphical.extensions.ModelHelper"/> <ownedJavaExtensions qualifiedClassName="org.etsi.mts.tdl.graphical.extensions.BehaviourModifications"/> </ownedViewpoints> </description:Group>
plugins/org.etsi.mts.tdl.graphical.viewpoint/src/org/etsi/mts/tdl/graphical/extensions/BehaviourModifications.java 0 → 100644 +66 −0 Original line number Diff line number Diff line package org.etsi.mts.tdl.graphical.extensions; import java.util.List; import org.eclipse.emf.ecore.EObject; import org.eclipse.sirius.diagram.DDiagramElement; import org.eclipse.sirius.diagram.DSemanticDiagram; import org.eclipse.sirius.diagram.sequence.ordering.EventEnd; import org.etsi.mts.tdl.Behaviour; import org.etsi.mts.tdl.Block; import org.etsi.mts.tdl.SingleCombinedBehaviour; import org.etsi.mts.tdl.Target; import org.etsi.mts.tdl.TestDescription; public class BehaviourModifications { private ModelHelper helper = new ModelHelper(); public static void addBehaviour(EObject startingEndPredecessor, DDiagramElement diagramElement, Behaviour behaviour) { DSemanticDiagram diagram = (DSemanticDiagram) ((DDiagramElement)diagramElement).getParentDiagram(); TestDescription td = (TestDescription) diagram.getTarget(); addBehaviour(startingEndPredecessor, td, behaviour); } public static void addBehaviour(EObject endPredecessor, TestDescription td, Behaviour behaviour) { if (endPredecessor instanceof EventEnd) endPredecessor = ((EventEnd) endPredecessor).getSemanticEnd(); Block parent = null; Behaviour prev = null; if (endPredecessor instanceof Behaviour) { prev = (Behaviour) endPredecessor; } else if (endPredecessor instanceof Block) { parent = (Block) endPredecessor; } else if (endPredecessor == null) { parent = ((SingleCombinedBehaviour)td.getBehaviourDescription().getBehaviour()).getBlock(); } else prev = (Behaviour) BehaviourProvider.getBegin(endPredecessor); if (parent == null && prev != null) parent = (Block) prev.eContainer(); List<Behaviour> list = parent.getBehaviour(); list.remove(behaviour); int index = 0; if (prev != null) index = parent.getBehaviour().indexOf(prev) + 1; list.add(index, behaviour); } public Object reorderBehaviour(Object selection, Object preAfter) { Behaviour b = null; if (selection instanceof Target) b = (Behaviour) ((Target) selection).eContainer(); else b = (Behaviour) selection; addBehaviour((EObject)preAfter, helper.getTestDescription(b), b); return selection; } }
plugins/org.etsi.mts.tdl.graphical.viewpoint/src/org/etsi/mts/tdl/graphical/extensions/BehaviourProvider.java +14 −2 Original line number Diff line number Diff line Loading @@ -130,8 +130,8 @@ public class BehaviourProvider { private EObject createEnd(EObject e) { Resource extResource = getExtensionResource(e); EPackage extPackage = EPackageRegistryImpl.INSTANCE.getEPackage(EXTENSION_URI); EClass endClass = (EClass) extPackage.getEClassifier(END_CLASS); EPackage extPackage = getExtensionPackage(); EClass endClass = getEndClass(); EObject end = extPackage.getEFactoryInstance().create(endClass); end.eSet(endClass.getEStructuralFeature(END_BEGIN_FEATURE), e); Loading @@ -141,6 +141,18 @@ public class BehaviourProvider { return end; } private static EPackage getExtensionPackage() { return EPackageRegistryImpl.INSTANCE.getEPackage(EXTENSION_URI); } private static EClass getEndClass() { return (EClass) getExtensionPackage().getEClassifier(END_CLASS); } public static EObject getBegin(EObject end) { return (EObject) end.eGet(getEndClass().getEStructuralFeature(END_BEGIN_FEATURE)); } private Resource getExtensionResource(EObject e) { Resource mResource = e.eResource(); ResourceSet rs = mResource.getResourceSet(); Loading
plugins/org.etsi.mts.tdl.graphical.viewpoint/src/org/etsi/mts/tdl/graphical/extensions/ModelHelper.java +8 −2 Original line number Diff line number Diff line Loading @@ -12,16 +12,22 @@ import org.etsi.mts.tdl.TestConfiguration; import org.etsi.mts.tdl.TestDescription; public class ModelHelper { public TestConfiguration getTestConfiguration(Behaviour b) { public TestDescription getTestDescription(Behaviour b) { EObject c = b; while (c != null) { if (c instanceof TestDescription) return ((TestDescription) c).getTestConfiguration(); return (TestDescription) c; c = c.eContainer(); } return null; } public TestConfiguration getTestConfiguration(Behaviour b) { TestDescription td = getTestDescription(b); return td != null ? td.getTestConfiguration() : null; } public List<EObject> allBehaviours(TestDescription e) { List<EObject> behaviours = new ArrayList<EObject>(); TreeIterator<EObject> iter = e.eAllContents(); Loading