summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Wouters2014-04-04 10:08:44 (EDT)
committerLaurent Wouters2014-04-04 10:08:44 (EDT)
commit473ba87c30d8cf73c9b8612de5be4394902c8b57 (patch)
tree93063ebd99d11d65dbac98fcd542f1debe3c629c
parent7ab641ed1c9dd82fbc36fa6128261c45a785024b (diff)
downloadorg.eclipse.papyrus-473ba87c30d8cf73c9b8612de5be4394902c8b57.zip
org.eclipse.papyrus-473ba87c30d8cf73c9b8612de5be4394902c8b57.tar.gz
org.eclipse.papyrus-473ba87c30d8cf73c9b8612de5be4394902c8b57.tar.bz2
[clean] Retiring org.eclipse.papyrus.conversion.di2todilast/org.eclipse.papyrus.conversion.di2todi
Signed-off-by: Laurent Wouters <laurent.wouters@cea.fr>
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/.classpath7
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/.project34
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/META-INF/MANIFEST.MF28
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassAndProfileDiagEdgeVisualIDs.qvto39
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassAndProfileDiagEdges.qvto280
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassDiagNodes.qvto658
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassDiagVisualIDs.qvto66
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagEdges.qvto162
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagNodes.qvto284
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagVisualIDs.qvto34
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/DiTransformations.qvto103
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/Diagram.qvto213
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ElementType.qvto25
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/GeneralMappingsandHelpers.qvto136
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/NotationQueries.qvto168
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ProfileDiagNodes.qvto273
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ProfileDiagVisualIDs.qvto55
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagEdges.qvto160
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagNodes.qvto308
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagVisualIDs.qvto84
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/Transfo.qvto25
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/build.properties6
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/doc/TutorialConversion.html294
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-di2action.pngbin23573 -> 0 bytes
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-project.pngbin3998 -> 0 bytes
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-result.pngbin5420 -> 0 bytes
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example-composite-diag-mdt.pngbin20800 -> 0 bytes
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example-composite-diag-p1.12.pngbin20127 -> 0 bytes
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example1-class-diagram-mdt.pngbin20393 -> 0 bytes
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example1-class-diagram-p1.12.pngbin20119 -> 0 bytes
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example2-class-diagram-mdt.pngbin27481 -> 0 bytes
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example2-class-diagram-p1.12.pngbin33830 -> 0 bytes
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/plugin.properties12
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/plugin.xml55
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/Activator.java61
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/blackboxes/UtilitiesLibrary.java236
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/popupactions/Di2toDiAction.java253
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/popupactions/PapyrusNamespace.java80
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/toc.xml10
-rw-r--r--deprecated/org.eclipse.papyrus.conversion.di2todi/tocdev.xml7
40 files changed, 0 insertions, 4156 deletions
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/.classpath b/deprecated/org.eclipse.papyrus.conversion.di2todi/.classpath
deleted file mode 100644
index 2d1a430..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/.project b/deprecated/org.eclipse.papyrus.conversion.di2todi/.project
deleted file mode 100644
index afabadc..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.papyrus.conversion.di2todi</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.api.tools.apiAnalysisBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
- </natures>
-</projectDescription>
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/META-INF/MANIFEST.MF b/deprecated/org.eclipse.papyrus.conversion.di2todi/META-INF/MANIFEST.MF
deleted file mode 100644
index bad2bb3..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,28 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.papyrus.conversion.di2todi;singleton:=true
-Bundle-Version: 0.8.0.qualifier
-Bundle-Activator: org.eclipse.papyrus.conversion.di2todi.Activator
-Bundle-Vendor: %pluginProvider
-Require-Bundle: org.eclipse.m2m.qvt.oml;bundle-version="3.0.0",
- org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.core.resources,
- org.eclipse.m2m.qvt.oml.runtime;bundle-version="2.1.0",
- org.eclipse.uml2.uml;bundle-version="3.1.0",
- org.eclipse.gmf.runtime.notation;bundle-version="1.4.0",
- org.eclipse.m2m.qvt.oml.emf.util;bundle-version="2.0.100",
- org.eclipse.papyrus.conversion.di2,
- org.eclipse.papyrus.uml.diagram.clazz;bundle-version="0.10.1"
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Bundle-ActivationPolicy: lazy
-Import-Package: junit.framework,
- org.apache.commons.io,
- org.eclipse.draw2d.geometry,
- org.eclipse.gmf.runtime.diagram.ui.view.factories,
- org.eclipse.m2m.internal.qvt.oml.common,
- org.eclipse.m2m.internal.qvt.oml.common.io,
- org.eclipse.m2m.internal.qvt.oml.project.builder,
- org.eclipse.m2m.internal.qvt.oml.project.nature,
- org.eclipse.m2m.qvt.oml.debug.core.launch
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassAndProfileDiagEdgeVisualIDs.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassAndProfileDiagEdgeVisualIDs.qvto
deleted file mode 100644
index f0837e1..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassAndProfileDiagEdgeVisualIDs.qvto
+++ /dev/null
@@ -1,39 +0,0 @@
-
---Author Manel Fredj-CEA LIST
-
-library VisualIDs;
-
---for an association
-property VisualId_Edge_Association : String = "4001";
-property VisualId_Edge_Association_DecoNode1 : String = "6001";
-property VisualId_Edge_Association_DecoNode2 : String = "6002";
-property VisualId_Edge_Association_DecoNode3 : String = "6003";
-property VisualId_Edge_Association_DecoNode4 : String = "6005";
-property VisualId_Edge_Association_DecoNode5 : String = "6033";
-property VisualId_Edge_Association_DecoNode6 : String = "6034";
-
---for a generalization within class diagram
-property VisualId_Edge_Generalization : String = "4002";
-property VisualId_Edge_Generalization_DecoNode : String = "6007";
-
---for a dependency
-property VisualId_Edge_Dependency : String = "4008";
-property VisualId_Edge_Dependency_DecoNode1 : String = "6026";
-property VisualId_Edge_Dependency_DecoNode2 : String = "6027";
-
---for a realization
-property VisualId_Edge_Realization : String = "4005";
-
-property VisualId_Edge_Realization_DecoNode1 : String = "6012";
-property VisualId_Edge_Realization_DecoNode2 : String = "6013";
-
---for a link (different for profile and class!)
-property VisualId_CEdge_Link : String = "4013";
-property VisualId_PEdge_Link : String = "1022";
-
---for a package import
-property VisualId_Edge_PackageImport : String = "1065";
-property VisualId_Edge_PackageImport_DecoNode : String = "6022";
-
---for an extension
-property VisualId_Edge_Extension : String = "1013"; \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassAndProfileDiagEdges.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassAndProfileDiagEdges.qvto
deleted file mode 100644
index 046a85c..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassAndProfileDiagEdges.qvto
+++ /dev/null
@@ -1,280 +0,0 @@
---Author Manel Fredj-CEA LIST
-
-library HelpersEdge;
-import GeneralMappingsandHelpers;
-import NotationQueries;
-import ClassAndProfileDiagEdgeVisualIDs;
-
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype uml uses 'http://www.eclipse.org/uml2/2.1.0/UML';
-
---class and profile have identical visual IDs for relationships
---Since the profile diagram has been developed starting with a class diagram. This
---is not the case for other diagram types
-mapping di2::GraphEdge::classAndProfileDiagEdge2Edge() : notation::Connector inherits di2::GraphEdge::edge2Connector
-{
- --setting the type and children
- if (self.getElement() != null) then {
-
- if (self.getElement().isGeneralization()) then {
- type := VisualId_Edge_Generalization;
- --adding children
- children := setChildrenForGeneralization();
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Extension)) then {
- type := VisualId_Edge_Extension;
- --adding children
- // children := setChildrenForExtension();
- } else {
- // extension is also an association, use "else" (else if is unfortunatley not supported in QVTO)
- if (self.getElement().isAssociation()) then {
- type := VisualId_Edge_Association;
- children := setChildrenForAssociation();
- } endif;
- } endif;
- if (self.getElement().oclIsTypeOf(uml::PackageImport)) then {
- type := VisualId_Edge_PackageImport;
- children := setChildrenForPackageImport();
- } endif;
- if (self.getElement().isDependency()) then {
- type := VisualId_Edge_Dependency;
- --adding children
- children := setChildrenForDependency();
- } endif;
- if (self.getElement().isRealization()) then {
- type := VisualId_Edge_Realization;
- --adding children
- children := setChildrenForRealization();
- } endif;
- }
- else {
- --it is a link
- var diagType : String = self.getDiagramtype ();
- if (diagType = ClassDiagram_P2) then {
- type := VisualId_CEdge_Link;
- }
- else {
- if (diagType = ProfileDiagram_P2) then {
- type := VisualId_PEdge_Link;
- } endif;
- } endif;
- element := null;
- } endif;
-
- --setting the source and target Anchors
- var anchors : OrderedSet (di2::GraphConnector) := self.anchor;
- anchors->forEach (gc) {
- --log("the anchor is "+ gc.graphElement.repr());
- gc.graphElement;
- };
- source := anchors->first().graphElement.oclAsType(di2::GraphNode).late resolveone(notation::Shape);
- target := anchors->last().graphElement.oclAsType(di2::GraphNode).late resolveone(notation::Shape);
- --adding style
- styles := setStyleForEdge();
-
- --adding element: already done in View
-
- --adding the bend points
- bendpoints := setBendpointsForEdge();
-
- --adding the source and target Anchor
- sourceAnchor := setSourceAnchor();
- targetAnchor := setTargetAnchor();
-}
-
-
---Helpers related to an Edge
---------------------------------
-
-
---generic helper for an edge with two children
---takes as input the visual ids of the the two children
-
-helper setChildrenForEdge2Children(in VisualId1: String, in VisualId2: String): OrderedSet(notation::Node)
-{
- var child1 := object notation::DecorationNode {
- --the id is set automatically
- type := VisualId1;
- layoutConstraint := object notation::Location {
- y := 40;
- };
- };
-
- --second child
- var child2 :=object notation::DecorationNode {
- --the id is set automatically
- type := VisualId2;
- layoutConstraint := object notation::Location {
- y := 60;
- };
- };
-
- return OrderedSet {child1,child2};
-}
-
-helper setChildrenForRealization(): OrderedSet(notation::Node)
-{
- return setChildrenForEdge2Children(VisualId_Edge_Realization_DecoNode1, VisualId_Edge_Realization_DecoNode2);
-
-}
-
-helper setChildrenForDependency(): OrderedSet(notation::Node)
-{
- --<children xmi:type="notation:DecorationNode" type="6026">
- -- <layoutConstraint xmi:type="notation:Location" y="40"/>
- -- </children>
- -- <children xmi:type="notation:DecorationNode" type="6027">
- -- <layoutConstraint xmi:type="notation:Location" y="60"/>
- -- </children>
- return setChildrenForEdge2Children(VisualId_Edge_Dependency_DecoNode1, VisualId_Edge_Dependency_DecoNode2);
-
-}
-
-helper setChildrenForGeneralization(): OrderedSet(notation::Node)
-{
- --<children xmi:type="notation:DecorationNode" type="6007">
- -- <layoutConstraint xmi:type="notation:Location" y="40"/>
- --</children>
-
- var child1 := object notation::DecorationNode {
- --the id is set automatically
- --type := VisualId_DecoNodeGeneralization;
- type := VisualId_Edge_Generalization_DecoNode;
- layoutConstraint := object notation::Location {
- y := 40;
- };
- };
-
- return OrderedSet {child1};
-}
-
-
-helper setChildrenForAssociation(): OrderedSet(notation::Node)
-{
- ----------------------------------------------------------------------
- --under an Edge "association"
- -----------------------------------------------------------------------
- --In the case that we have an association we will have:
- --1 edge with a xmi:type:="notation:Connector", a geneerated Id, type= "4001", a target and a source that includes:
- -- 6 "children" typed with decoration nodes
- -- 1 "styles
- -- 1 element
- -- 1 bendpoints
- -- 1 sourceAnchor
- -- 1 targetAnchor
- -----------------------------------------------------------------------
-
- --first child
- var child1 := object notation::DecorationNode {
- --the id is set automatically
- type := VisualId_Edge_Association_DecoNode1;
- layoutConstraint := object notation::Location {
- y := -20;
- };
- };
-
- --second child
- var child2 :=object notation::DecorationNode {
- --association label
- type := VisualId_Edge_Association_DecoNode2;
- layoutConstraint := object notation::Location {
- y := 20;
- };
- // make label of association itself (not its endpoints) non visible by default
- visible := false;
- };
-
- --third child
- var child3 := object notation::DecorationNode {
- --label first association end
- type := VisualId_Edge_Association_DecoNode3;
- layoutConstraint := object notation::Location {
- y := -20;
- };
- eAnnotations += noTypeEAnnotation();
- };
-
- --fourth child
- var child4 := object notation::DecorationNode {
- --label 2nd association end
- type := VisualId_Edge_Association_DecoNode4;
- layoutConstraint := object notation::Location {
- y := 20;
- };
- eAnnotations += noTypeEAnnotation();
- };
-
- --fifth child
- var child5 := object notation::DecorationNode {
- --multiplicity first association end
- type := VisualId_Edge_Association_DecoNode5;
- visible := false;
- --layoutConstraint := object notation::Location{
- --y := 20;
- --x := 20;
- --};
- };
-
- --sixth child
- var child6 := object notation::DecorationNode {
- --the id is set automatically
- --multiplicity 2nd association end
- type := VisualId_Edge_Association_DecoNode6;
- visible := false;
- --layoutConstraint := object notation::Location {
- --y := -20;
- --x := -20;
- --};
- };
-
- --add the set of children to the node
- return OrderedSet {
- child1, child2, child3, child4, child5, child6
- };
-}
-
-
-helper setStyleForEdge() : OrderedSet(notation::Style)
-{
- --<styles xmi:type="notation:FontStyle" fontName="Sans Serif"/>
- var style := object notation::FontStyle {
- --the id is set automatically
- --fontName="Sans Serif";
- };
-
- return OrderedSet{style};
-}
-
-helper setSourceAnchor() : notation::Anchor
-{
- return object notation::IdentityAnchor { };
-}
-
-
-helper setTargetAnchor():notation::Anchor
-{
- return object notation::IdentityAnchor { };
-}
-
-
-helper setBendpointsForEdge():notation::RelativeBendpoints
-{
- --<bendpoints xmi:type="notation:RelativeBendpoints" points="[-7, -2, 323, 58]$[-282, -65, 48, -5]"/>
- // var pts : notation::RelativeBendpointList;
- // var bendpoints:=object notation::RelativeBendpoints { };
- var bendpoints := createBendpoints().oclAsType (notation::RelativeBendpoints);
-
- return bendpoints;
-}
-
-helper setChildrenForPackageImport(): OrderedSet(notation::Node)
-{
- var child1 := object notation::DecorationNode {
- --the id is set automatically
- --type := VisualId_DecoNodeGeneralization;
- type := VisualId_Edge_PackageImport_DecoNode;
- };
-
- return OrderedSet {child1};
-} \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassDiagNodes.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassDiagNodes.qvto
deleted file mode 100644
index 8c7168f..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassDiagNodes.qvto
+++ /dev/null
@@ -1,658 +0,0 @@
---Author Manel Fredj-CEA LIST
-library HelpersClassDiagram;
-
-
-import ClassDiagVisualIDs;
-import NotationQueries;
-import GeneralMappingsandHelpers;
-
-
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype ecore uses 'http://www.eclipse.org/emf/2002/Ecore';
-modeltype uml uses 'http://www.eclipse.org/uml2/2.1.0/UML';
-
-
-mapping di2::GraphNode::classDiagNode2Shape() : notation::Shape inherits di2::GraphNode::node2Shape
-{
- eAnnotations := setEAnnotations ();
-
- if (self.getElement().oclIsTypeOf(uml::Class)) then {
- type := VisualId_Class;
- children := setChildrenForClass(self);
- styles := setStylesForClass();
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Comment)) then {
- type := VisualId_Comment;
- children := setChildrenForComment();
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Profile)) then {
- type := VisualId_Profile;
- children := setChildrenForProfile(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Stereotype)) then {
- type := VisualId_Stereotype;
- children := setChildrenForStereotype();
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Package)) then {
- type := VisualId_Package;
- children := setChildrenForPackage(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Enumeration)) then {
- type := VisualId_Enum;
- children := setChildrenForEnum(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Interface)) then {
- type := VisualId_Interface;
- children := setChildrenForInterface(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::PrimitiveType)) then {
- type := VisualId_PrimitiveType;
- children := setChildrenForPrimitiveType(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::DataType)) then {
- type := VisualId_DataType;
- children := setChildrenForDataType(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Model)) then {
- type := VisualId_Package;
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Component)) then {
- type := VisualId_Component;
- children := setChildrenForComponent(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::RedefinableTemplateSignature)) then {
- type := VisualId_RedefinableTemplateSig;
- children := setChildrenForRedefinableTemplateSignature(self);
- } endif;
-}
-
-
---for a class
---first argument is related to the contained operations which are integrated in the third child, i.e. the
---basic compartment typed 7018
-helper setChildrenForClass (in node:di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Class_Label;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type:=VisualId_Class_Attributes;
- --the id is set automatically
- --set the properties
- children := setAttributesForClass(node);
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint:=object notation::Bounds {};
- };
-
- -- third child includes operations
- var child3 := object notation::BasicCompartment {
- type := VisualId_Class_Operations;
- --the id is set automatically
- --set the operations
- children := setOperationsForClass(node);
- --set the styles
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
- };
-
- -- fourth child
- var child4 := object notation::BasicCompartment {
- type := VisualId_Class_UseCase;
- --the id is set automatically
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1,
- style2
- };
- layoutConstraint := object notation::Bounds {};
- };
-
- return OrderedSet {
- child1, child2, child3, child4
- };
-}
-
-
-
---for a ForRedefinableTemplateSignature
-
-helper setChildrenForRedefinableTemplateSignature (in node:di2::GraphNode) : OrderedSet(notation::Node)
-{
- var containedCTP:= object notation::DecorationNode {
- type:=VisualId_ContainerofCTP;
-
- children:= setClassifierTemplateParameters(node);
-
- var style1 := object notation::SortingStyle {
- };
- var style2 := object notation::FilteringStyle {
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint:=object notation::Bounds {};
-
- };
- var containedCTPs : OrderedSet(notation::Node);
- containedCTPs += containedCTP;
- return containedCTPs;
-}
-
-helper setClassifierTemplateParameters(in node:di2::GraphNode):OrderedSet (notation::Node){
- var CTPShapes : OrderedSet(notation::Shape);
- var containedCTPs : OrderedSet(ecore::EObject) := node.getClassifierTemplateParameter();
- containedCTPs->forEach (CTP) {
- -- <children xmi:type="notation:Shape" type="3031" fontHeight="8" lineColor="0">
- -- <element xmi:type="uml:ClassifierTemplateParameter" href="model.uml#_tisGcNxYEd-VL4dXZB1kyw"/>
- -- <layoutConstraint xmi:type="notation:Location" />
- -- </children>
-
- var CTPShape := object notation::Shape {
- type := VisualId_ClassifierTemplateParameter;
- element := CTP;
- layoutConstraint := object notation::Location {};
- };
-
- CTPShapes += CTPShape;
- };
-
- return CTPShapes;
-}
-
---for a primitive type
-helper setChildrenForPrimitiveType (in node:di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- <children xmi:type="notation:DecorationNode" xmi:id="_i40XxNMjEd-9-ci4J3MfKg" type="5020"/>
- -- <children xmi:type="notation:DecorationNode" xmi:id="_i40XxdMjEd-9-ci4J3MfKg" type="7009">
- -- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_i40XxtMjEd-9-ci4J3MfKg"/>
- -- </children>
-
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_PrimitiveTypeChild;
- --the id is set automatically
- };
-
- --add the set of children to the node
- return OrderedSet {
- child1
- };
-}
-
---for a data type
-helper setChildrenForDataType (in node:di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := "5035";
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type := "7020";
- --the id is set automatically
- --set the operations
- children := setAttributesForClass(node);
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint:=object notation::Bounds {};
- };
-
- -- third child includes operations
- var child3 := object notation::BasicCompartment {
- type := "7021";
- --the id is set automatically
- --set the operations
- children := setOperationsForClass(node);
- --set the styles
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
- };
- --add the set of children to the node
- return OrderedSet {
- child1, child2, child3
- };
-}
-
---for an interface
-helper setChildrenForInterface (in node:di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := "5011";
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type := "7006";
- --the id is set automatically
- --set the operations
- children := setAttributesForClass(node);
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint:=object notation::Bounds {};
- };
-
- -- third child includes operations
- var child3 := object notation::BasicCompartment {
- type := "7007";
- --the id is set automatically
- --set the operations
- children := setOperationsForClass(node);
- --set the styles
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
- };
-
- -- third child includes operations
- var child4 := object notation::BasicCompartment {
- type := "7008";
- --the id is set automatically
- --set the operations
- --children := setOperationsForClass(node);
- --set the styles
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
- };
-
- --add the set of children to the node
- return OrderedSet {
- child1, child2, child3, child4
- };
-}
-
---for an enumeration
-helper setChildrenForEnum (in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Enum_Label;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type := VisualId_Enum_Literals;
- --set the literals
- children := getLiterals(node);
- var style1 := object notation::SortingStyle { };
- var style2 := object notation::FilteringStyle { };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
- --the id is set automatically
- };
-
- --add the set of children to the node
- return OrderedSet {
- child1, child2
- };
-}
-
-
-helper setStylesForClass() : OrderedSet(notation::Style)
-{
- var style:=object notation::HintedDiagramLinkStyle {
- --the id is set automatically
- };
-
- return OrderedSet{style};
-}
-
-
---reusable Helpers
-helper setOperations(in node:di2::GraphNode,in VisualId:String): OrderedSet(notation::Node)
-{
- var operationsShape : OrderedSet(notation::Node);
- var containedOp : OrderedSet(ecore::EObject) := node.getOperations();
- containedOp->forEach (operation) {
- var operationShape := object notation::Shape {
- --an operation is typed 3013
- type := VisualId;
- --fontHeight="8";
- --lineColor="0";
- element := operation;
- layoutConstraint := object notation::Location{};
- };
-
- operationsShape += operationShape;
- };
-
- return operationsShape;
-}
-
-helper setAttributes(in node : di2::GraphNode, in VisualId:String) : OrderedSet(notation::Node)
-{
- var attributesShape : OrderedSet(notation::Node);
- var attributes : OrderedSet(ecore::EObject) := node.getProperties();
- attributes->forEach (attribute) {
- var attributeShape := object notation::Shape {
- -- an attribute is type 3012
- type := VisualId;
- --fontName="Sans Serif";
- --lineColor="0";
- element := attribute;
- layoutConstraint := object notation::Location{};
- };
- attributesShape += attributeShape;
- };
-
- return attributesShape;
-}
-
---in containedOp:OrderedSet(ecore::EObject)
-helper setOperationsForClass(in node:di2::GraphNode): OrderedSet(notation::Node)
-{
- return setOperations(node,VisualId_Class_Operation);
-}
-
---in containedAttr:OrderedSet (ecore::EObject)
-helper setAttributesForClass(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- return setAttributes(node,VisualId_Class_Attribute);
-}
-
---for Enumeration
---in containedAttr:OrderedSet (ecore::EObject)
-helper getLiterals(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- var enumLiteralsShape : OrderedSet(notation::Node);
- var enumLiterals : OrderedSet(ecore::EObject) := node.getEnumLiterals();
- enumLiterals->forEach (enumLiteral) {
- var enumLiteralShape := object notation::Shape {
- -- an attribute is typed 3017
- type := VisualId_EnumLiteral;
- --fontName="Sans Serif";
- --lineColor="0";
- element := enumLiteral;
- layoutConstraint := object notation::Location{};
- };
- enumLiteralsShape += enumLiteralShape;
- };
-
- return enumLiteralsShape;
-}
-
---for a component
-helper setChildrenForComponent (in node:di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Component_child1;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type := VisualId_Component_child2;
- --the id is set automatically
- --set the properties
- children := setAttributesForComponent(node);
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
- };
-
- -- third child
- var child3 := object notation::BasicCompartment {
- type := VisualId_Component_child3;
- --the id is set automatically
- --set the operations
- children := setOperationsForComponent(node);
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
- };
-
- -- fourth child
- var child4 := object notation::BasicCompartment {
- type := VisualId_Component_child4;
- --the id is set automatically
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
- };
-
- return OrderedSet {
- child1, child2,child3,child4
- };
-}
-
---in containedOp:OrderedSet(ecore::EObject)
-helper setOperationsForComponent(in node:di2::GraphNode): OrderedSet(notation::Node)
-{
- return setOperations(node,VisualId_Component_Operation);
-}
-
---in containedAttr:OrderedSet (ecore::EObject)
-helper setAttributesForComponent(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- return setAttributes(node, VisualId_Component_Attribute);
-}
-
-
---for a stereotype
-helper setChildrenForStereotype() : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Stereotype_child1;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type := VisualId_Stereotype_child2;
- --the id is set automatically
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
-
- };
-
- -- third child
- var child3 := object notation::BasicCompartment {
- type := VisualId_Stereotype_child3;
- --the id is set automatically
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
- };
-
- -- fourth child
- var child4 := object notation::BasicCompartment {
- type := VisualId_Stereotype_child4;
- --the id is set automatically
- var style1 := object notation::SortingStyle {
- --the id is set automatically
- };
- var style2 := object notation::FilteringStyle {
- --the id is set automatically
- };
- styles := OrderedSet {
- style1, style2
- };
- layoutConstraint := object notation::Bounds {};
- };
-
- return OrderedSet {
- child1, child2, child3, child4
- };
-}
-
-
---for a profile in a class diagram
-helper setChildrenForProfile (in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Profile_child1;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::DecorationNode {
- type := VisualId_Profile_child2;
- children := addStereotypestoProfile(node);
- layoutConstraint := object notation::Bounds {};
- --the id is set automatically
- };
-
- --add the set of children to the node
- return OrderedSet {child1, child2};
-}
-
---stereotype
-helper addStereotypestoProfile (in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
-
- var SetofStereotypes : OrderedSet(notation::Node);
- node.contained->forEach (elem|elem.oclIsTypeOf(di2::GraphNode)) {
- if (elem.oclAsType(di2::GraphNode).getElement().oclIsTypeOf(uml::Stereotype))then{
- --create a new stereotype
- var stereo:notation::Shape:=elem.oclAsType(di2::GraphNode).map classDiagNode2Shape();
- SetofStereotypes += stereo;
- } endif;
- };
-
- return SetofStereotypes;
-}
-
---for a package
-helper setChildrenForPackage (in node:di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Package_Label;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::DecorationNode {
- type := VisualId_Package_Label2;
- var containedElements : OrderedSet(di2::GraphNode) := node.getSubElementsOfPackage();
- containedElements->forEach (containedElement) {
- var shape : notation::Shape ::= containedElement.map classDiagNode2Shape();
- children += shape;
- };
- };
-
- return OrderedSet {
- child1, child2
- };
-}
-
-
---Helpers related to a Comment
---------------------------------
-
-helper setChildrenForComment () : OrderedSet(notation::Node)
-{
- -- <children xmi:type="notation:DecorationNode" xmi:id="_OVAHGNhVEd-Fo-h2aSJB1A" type="5038"/>
- var child1 := object notation::DecorationNode {
- type:=VisualId_Comment_Child;
-
- };
- return OrderedSet {child1};
-} \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassDiagVisualIDs.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassDiagVisualIDs.qvto
deleted file mode 100644
index 9b5def3..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ClassDiagVisualIDs.qvto
+++ /dev/null
@@ -1,66 +0,0 @@
-
---Author Manel Fredj-CEA LIST
-
-library VisualIDs;
-
--- for an interface
-property VisualId_Interface : String = "2004";
-
--- for a package
-property VisualId_Package : String = "2005";
-
---for a profile
-property VisualId_Profile : String = "2007";
-property VisualId_Profile_child1 : String = "5026";
-property VisualId_Profile_child2 : String = "7016";
-
---for a stereotype
-property VisualId_Stereotype : String = "3010";
-property VisualId_Stereotype_child1 : String = "5014";
-property VisualId_Stereotype_child2 : String = "7011";
-property VisualId_Stereotype_child3 : String = "7012";
-property VisualId_Stereotype_child4 : String = "7013";
-
--- for a class
-property VisualId_Class : String = "2008";
-
---for a comment
-property VisualId_Comment : String = "2012";
-property VisualId_Comment_Child : String = "5038";
--- for a data type
-property VisualId_DataType : String = "2010";
-
--- for a primitive type
-property VisualId_PrimitiveType : String = "2009";
-property VisualId_PrimitiveTypeChild : String = "5032";
-
--- for an enumeration
-property VisualId_Enum : String = "2006";
-property VisualId_EnumLiteral : String = "3017";
-
--- for a redefinable Template signature
-property VisualId_RedefinableTemplateSig : String = "3015";
-property VisualId_ClassifierTemplateParameter : String = "3031";
-property VisualId_ContainerofCTP : String = "7014";
-
---for a component
-property VisualId_Component : String ="2002";
-property VisualId_Component_child1 : String ="5005";
-property VisualId_Component_child2 : String ="7002";
-property VisualId_Component_child3 : String ="7003";
-property VisualId_Component_child4 : String ="7004";
-property VisualId_Component_Attribute : String = "3002";
-property VisualId_Component_Operation : String = "3003";
-
---for a class
-property VisualId_Class_Label : String = "5029";
-property VisualId_Class_Attributes : String = "7017";
-property VisualId_Class_Operations : String = "7018";
-property VisualId_Class_UseCase : String = "7019";
-
-property VisualId_Package_Label : String = "5020";
-property VisualId_Package_Label2 : String = "7009";
-property VisualId_Enum_Label : String = "5023";
-property VisualId_Enum_Literals : String = "7015";
-property VisualId_Class_Operation : String = "3013";
-property VisualId_Class_Attribute : String = "3012";
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagEdges.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagEdges.qvto
deleted file mode 100644
index 1e20a54..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagEdges.qvto
+++ /dev/null
@@ -1,162 +0,0 @@
---Author Manel Fredj-CEA LIST
-
-library HelpersEdge;
-import GeneralMappingsandHelpers;
-import CompositeDiagVisualIDs;
-
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype uml uses 'http://www.eclipse.org/uml2/2.1.0/UML';
-
-mapping di2::GraphEdge::compositeDiagEdge2Edge() : notation::Connector inherits di2::GraphEdge::edge2Connector
-{
- -----------------------------------------------------------------------
- --under an Edge "association"
- -----------------------------------------------------------------------
- --In the case that we have an association we will have:
- --1 edge with a xmi:type:="notation:Connector", a geneerated Id, type= "4001", a target and a source that includes:
- -- 6 "children" typed with decoration nodes
- -- 1 "styles
- -- 1 element
- -- 1 bendpoints
- --1 sourceAnchor
- --1targetAnchor
- -----------------------------------------------------------------------
-
- --setting the type and children
- if (self.getElement() != null) then {
-
- if (self.getElement().isGeneralization()) then {
- type := VisualId_Edge_GeneralizationComp;
- --adding children
- children := setChildrenForGeneralization();
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Connector)) then {
- type := VisualId_Edge_Link;
- --adding children
- children:=setChildrenForConnector();
- } endif;
- } endif;
-
- --setting the source and target Anchors
- var anchors : OrderedSet (di2::GraphConnector) := self.anchor;
- anchors->forEach (gc) {
- --log("the anchor is "+ gc.graphElement.repr());
- gc.graphElement;
- };
- source := anchors->first().graphElement.oclAsType(di2::GraphNode).late resolveone(notation::Shape);
- target := anchors->last().graphElement.oclAsType(di2::GraphNode).late resolveone(notation::Shape);
- --adding style
- styles := setStyleForEdge();
-
- --adding element: already done in View
-
- --adding the bend points
- bendpoints := setBendpointsForEdge();
-
- --adding the source and target Anchor
- sourceAnchor := setSourceAnchor();
- targetAnchor := setTargetAnchor();
-}
-
-
---Helpers related to an Edge
---------------------------------
-
-
---generic helper for an edge with two children
---takes as input the visual ids of the the two children
-
-helper setChildrenForEdge2Children(in VisualId1: String, in VisualId2: String): OrderedSet(notation::Node)
-{
- var child1 := object notation::DecorationNode {
- --the id is set automatically
- type := VisualId1;
- layoutConstraint := object notation::Location {
- y := 40;
- };
- };
-
- --second child
- var child2 :=object notation::DecorationNode {
- --the id is set automatically
- type := VisualId2;
- layoutConstraint := object notation::Location {
- y := 60;
- };
- };
-
- return OrderedSet {child1,child2};
-}
-
-
-helper setChildrenForGeneralization(): OrderedSet(notation::Node)
-{
- --<children xmi:type="notation:DecorationNode" type="6007">
- -- <layoutConstraint xmi:type="notation:Location" y="40"/>
- --</children>
-
- var child1 := object notation::DecorationNode {
- --the id is set automatically
- --type := VisualId_DecoNodeGeneralization;
- type := VisualId_DecoNodeGeneralizationComp;
- layoutConstraint := object notation::Location {
- y := 40;
- };
- };
-
- return OrderedSet {child1};
-}
-
-
-
-helper setChildrenForConnector(): OrderedSet(notation::Node)
-{
- --<children xmi:type="notation:DecorationNode" type="6025">
- -- <layoutConstraint xmi:type="notation:Location" y="60"/>
- --</children>
-
- var child1 := object notation::DecorationNode {
- --the id is set automatically
- type := VisualId_Edge_Connector_Child;
- layoutConstraint := object notation::Location {
- y := 60;
- };
- };
-
- return OrderedSet {child1};
-}
-
-
-helper setStyleForEdge() : OrderedSet(notation::Style)
-{
- --<styles xmi:type="notation:FontStyle" fontName="Sans Serif"/>
- var style := object notation::FontStyle {
- --the id is set automatically
- --fontName="Sans Serif";
- };
-
- return OrderedSet{style};
-}
-
-helper setSourceAnchor() : notation::Anchor
-{
- return object notation::IdentityAnchor { };
-}
-
-
-helper setTargetAnchor():notation::Anchor
-{
- return object notation::IdentityAnchor { };
-}
-
-
-helper setBendpointsForEdge():notation::RelativeBendpoints
-{
- --<bendpoints xmi:type="notation:RelativeBendpoints" points="[-7, -2, 323, 58]$[-282, -65, 48, -5]"/>
- // var pts : notation::RelativeBendpointList;
- // var bendpoints:=object notation::RelativeBendpoints { };
- var bendpoints := createBendpoints().oclAsType (notation::RelativeBendpoints);
-
- return bendpoints;
-} \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagNodes.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagNodes.qvto
deleted file mode 100644
index 4ba6c5d..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagNodes.qvto
+++ /dev/null
@@ -1,284 +0,0 @@
---Author Manel Fredj-CEA LIST
-library CompositeStructureDiagram;
-
-import Converter.Utils.ConverterLibs;
-import CompositeDiagVisualIDs;
-import GeneralMappingsandHelpers;
-
-
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype ecore uses 'http://www.eclipse.org/emf/2002/Ecore';
-modeltype uml uses 'http://www.eclipse.org/uml2/2.1.0/UML';
-
-
-mapping di2::GraphNode::compositeDiagNode2Shape() : notation::Shape inherits di2::GraphNode::node2Shape
-{
- if (self.getElement().oclIsTypeOf(uml::Class)) then {
- type := VisualId_Class_Composite;
- } endif;
-
- layoutConstraint := object notation::Bounds {
- var size : notation::Size :=
- self.size.map dimension2Size();
- var relativeLocation: notation::Location :=null;
- var location : notation::Location :=
- self.position.map point2Location();
- if (self.container.oclIsTypeOf(di2::GraphNode))then{
- relativeLocation:=self.container.position. map point2Location();
- x := location.x + relativeLocation.x;
- y := location.y + relativeLocation.y;
- }else{
- x := location.x;
- y := location.y;
- }endif;
- width := size.width;
- height := size.height;
- };
-
- --adding 3 eAnnotations as in class diagram
- eAnnotations := setEAnnotations ();
-
- if (type = VisualId_Class_Composite) then {
- --adding children
- children := setChildrenForClassComposite(self);
- --adding style
- styles := setStylesForClass();
- } endif;
-}
-
-
----------------------------------------------------------------------------
---set children for composite class
-
-helper setChildrenForClassComposite(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- var childrenOfCompositeClass: OrderedSet(notation::Node);
-
- --<children xmi:type="notation:DecorationNode" type="5156"/>
-
- --<children xmi:type="notation:BasicCompartment" type="7073">
- -- <layoutConstraint xmi:type="notation:Bounds" />
- --</children>
-
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Class_Composite_Label;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type := VisualId_Class_Composite_Compartment;
- --set children as properties
- children := setPropertiesForCompositeClass(node.contained);
- layoutConstraint:=object notation::Bounds {};
- };
-
-
- childrenOfCompositeClass := OrderedSet{child1, child2};
-
-
- --convert ports of contained classes
- var childport : notation::Node;
- var itsParent : notation::Node;
- node.contained->forEach (elem|elem.oclIsTypeOf(di2::GraphNode)) {
-
- if (elem.oclAsType(di2::GraphNode).getElement().oclIsTypeOf(uml::Port)) then {
- childport := elem.oclAsType(di2::GraphNode).map compositeDiagPort2Shape();
- var temp: di2::DiagramElement:=elem.oclAsType(di2::GraphNode).getSemanticParent();
- itsParent:= temp.oclAsType(di2::GraphNode).resolveone (notation::Node);
- --add the child to the semantic parent
- itsParent.children+= childport;
- } endif;
- };
-
- --convert edges in the composite
- return childrenOfCompositeClass;
-}
-
---in contrained attributes: properties or nested classes
-helper setPropertiesForCompositeClass(in contained:OrderedSet(di2::DiagramElement)) : OrderedSet(notation::Node)
-{
- var setOfChildren:OrderedSet(notation::Node);
- var child:notation::Node;
- contained ->forEach (node|node.oclIsTypeOf(di2::GraphNode)) {
-
- if(node.oclAsType(di2::GraphNode).getElement().oclIsTypeOf(uml::Property)) then {
- child := node.oclAsType(di2::GraphNode).map ComponentClass2Property();
- setOfChildren += child;
- } endif;
- if (node.oclAsType(di2::GraphNode).getElement().oclIsTypeOf(uml::Class)) then {
- child := node.oclAsType(di2::GraphNode).map ComponentClass2Class(node.oclAsType(di2::GraphNode));
- setOfChildren += child;
- } endif;
- };
-
- return setOfChildren;
-}
-
-
------------------------------------------------------------------------------
--- case of properties
-mapping di2::GraphNode::ComponentClass2Property() : notation::Shape {
-
- type := VisualId_Component_Property ;
- --seteAnnotation
- eAnnotations := setEAnnotations ();
- --setchildren
- children:=setChildrenForComponentProperty();
-
- --set size and width and high
- layoutConstraint := object notation::Bounds {
- var size : notation::Size := self.size.map dimension2Size();
- var location : notation::Location := self.oclAsType(di2::GraphNode).position.map point2Location();
- x := location.x;
- y := location.y;
- width := size.width;
- height := size.height;
- };
- --set element
- element := self.getElement().oclAsType(ecore::EObject);
-}
-
-helper setChildrenForComponentProperty() : OrderedSet(notation::Node)
-{
- --<children xmi:type="notation:DecorationNode" type="5126"/>
- --<children xmi:type="notation:BasicCompartment" type="7077">
- -- <layoutConstraint xmi:type="notation:Bounds" />
- --</children>
-
- -- first child
- var child1 := object notation::DecorationNode {
- type:=VisualId_Component_Property_Label;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type:=VisualId_Component_Property_Compartiment;
- layoutConstraint:=object notation::Bounds {};
- };
-
- return OrderedSet {child1, child2};
-}
-
-
------------------------------------------------------------------------------
--- case of nested classes
-
-mapping di2::GraphNode::ComponentClass2Class(in node:di2::GraphNode) : notation::Shape {
-
- type := VisualId_Component_Class;
- --seteAnnotation
- eAnnotations := setEAnnotations ();
- --setchildren
- children:=setChildrenForComponentClass(node);
-
- --set size and width and high
- layoutConstraint := object notation::Bounds {
- var size : notation::Size := self.size.map dimension2Size();
- var location : notation::Location := self.oclAsType(di2::GraphNode).position.map point2Location();
- x := location.x;
- y := location.y;
- width := size.width;
- height := size.height;
- };
-
- --set element
- element := self.getElement().oclAsType(ecore::EObject);
-}
-
-helper setChildrenForComponentClass(in node:di2::GraphNode) : OrderedSet(notation::Node)
-{
- --<children xmi:type="notation:DecorationNode" type="5126"/>
- --<children xmi:type="notation:BasicCompartment" type="7077">
- -- <layoutConstraint xmi:type="notation:Bounds" />
- --</children>
-
- -- first child
- var child1 := object notation::DecorationNode {
- type:=VisualId_Component_Class_Label;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type:=VisualId_Component_Class_Compartiment;
-
- --set children as properties in the case that the nested class contains properties
- children:= setPropertiesForCompositeClass(node.contained);
- layoutConstraint:=object notation::Bounds {};
- };
-
- return OrderedSet{child1, child2};
-}
-
-
---------------------------------
---ports
-
-mapping di2::GraphNode::compositeDiagPort2Shape() : notation::Shape {
-
- type := VisualId_Port;
- --seteAnnotation
- eAnnotations := setEAnnotations ();
- --setchildren
- children:=setChildrenForPort();
- --set size and width and high
- layoutConstraint := object notation::Bounds {
- var size : notation::Size := self.size.map dimension2Size();
- var parentLocation: notation::Location :=null;
- var location : notation::Location := self.oclAsType(di2::GraphNode).position.map point2Location();
- var itsparent: di2::DiagramElement:=self.oclAsType(di2::GraphNode).getSemanticParent();
- parentLocation:=itsparent.oclAsType(di2::GraphNode).position. map point2Location();
- x := location.x - parentLocation.x;
- y := location.y - parentLocation.y;
- width := size.width;
- height := size.height;
- };
- --set element
- element := self.getElement().oclAsType(ecore::EObject);
-}
-
-
-helper setChildrenForPort() : OrderedSet(notation::Node)
-{
- --<children xmi:type="notation:DecorationNode" xmi:id="_p5DiKOtSEd-dYdLgjrDxiA" type="5125">
- -- <layoutConstraint xmi:type="notation:Location" xmi:id="_p5DiKetSEd-dYdLgjrDxiA" x="25" y="3"/>
- --</children>
- --<children xmi:type="notation:DecorationNode" xmi:id="_p5DiKutSEd-dYdLgjrDxiA" type="6029">
- -- <layoutConstraint xmi:type="notation:Location" xmi:id="_p5DiK-tSEd-dYdLgjrDxiA" x="25" y="-10"/>
- --</children>
-
- -- first child
- var child1 := object notation::DecorationNode {
- type:=VisualId_Port_child1;
- layoutConstraint:=object notation::Location {
- x:=25;
- y:=3;
- };
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type:=VisualId_Port_child2;
- layoutConstraint:=object notation::Location {
- x:=25;
- y:=-10;
- };
- };
-
- return OrderedSet{child1, child2};
-}
-
-
-helper setStylesForClass() : OrderedSet(notation::Style)
-{
- var style:=object notation::HintedDiagramLinkStyle {
- --the id is set automatically
- };
-
- return OrderedSet{style};
-} \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagVisualIDs.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagVisualIDs.qvto
deleted file mode 100644
index 3383a9a..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/CompositeDiagVisualIDs.qvto
+++ /dev/null
@@ -1,34 +0,0 @@
-
---Author Manel Fredj-CEA LIST
-
-library CompositeDiagVisualIDs;
-
---for a generalization within composite diagram
-property VisualId_Edge_GeneralizationComp : String = "4015";
-property VisualId_DecoNodeGeneralizationComp : String = "6024";
-
---for a link
-property VisualId_Edge_Link : String = "4013";
-
---for a connector
-property VisualId_Edge_Connector_Child : String = "6025";
-
---class in a composite diagram
-property VisualId_Class_Composite : String = "2073";
-property VisualId_Class_Composite_Label : String = "5156";
-property VisualId_Class_Composite_Compartment : String = "7073";
-
---Property in composite diagram
-property VisualId_Component_Property_Label : String = "5126";
-property VisualId_Component_Property_Compartiment : String = "7077";
-property VisualId_Component_Property : String = "3070";
-
---nested Class in composite diagram
-property VisualId_Component_Class : String = "3085";
-property VisualId_Component_Class_Label : String = "5155";
-property VisualId_Component_Class_Compartiment : String = "7060";
-
---Port in composite diagram
-property VisualId_Port : String = "3069";
-property VisualId_Port_child1 : String = "5125";
-property VisualId_Port_child2 : String = "6029";
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/DiTransformations.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/DiTransformations.qvto
deleted file mode 100644
index 950b5d2..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/DiTransformations.qvto
+++ /dev/null
@@ -1,103 +0,0 @@
-
---Author Manel Fredj-CEA LIST
-
-
-modeltype di uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype ecore uses 'http://www.eclipse.org/emf/2002/Ecore';
-
-
-transformation Transfo(in src : di2, out target1 : notation, out target2:di);
-
-
-mapping di2::Diagram::diagram2SashWindowsMngr(): di::SashWindowsMngr
-{
- --pageRefsclassandOp
- var pageRefs: Set(di::PageRef) := setPageRef();
- --pageList
- pageList := setPageList(pageRefs);
-
- --sashModel
- sashModel := setSashModel();
-}
-
-mapping notation::Diagram::diagram2PageRef(): di::PageRef
-{
- emfPageIdentifier := self.oclAsType(ecore::EObject);
-}
-
-
--------------------------------------------------------------------------------------------------------------------------
----------------------------------------- Helpers for di ---------------------------------------
--------------------------------------------------------------------------------------------------------------------------
-
-helper setPageList(in pagerefs:Set(di::PageRef)): di::PageList
-{
- var pageList := object di::PageList {
- availablePage := pagerefs;
- };
-
- return pageList;
-};
-
-
-helper setPageRef(): Set(di::PageRef)
-{
- var setPages : Set(di::PageRef) := Set{};
- var page: di::PageRef;
- target1.rootObjects()->forEach(diagram|diagram.oclIsTypeOf(notation::Diagram)) {
- --avoid empty pages for unsupported diagrams (currently deployment diagram)
- if (diagram.oclAsType(notation::Diagram).type != null) then {
- page := diagram.oclAsType(notation::Diagram).map diagram2PageRef();
- setPages += page;
- } endif;
- };
- return setPages;
-};
-
-
-helper setSashModel(): di::SashModel
-{
- var sm := object di::SashModel{
- currentSelection:= object di::TabFolder{} ;
- windows := setWindows();
- };
- return sm;
-};
-
-helper setWindows(): Set(di::Window)
-{
- var setwindows : Set(di::Window);
- setwindows += setWindow();
- return setwindows;
-};
-
-helper setWindow() : di::Window {
-
- var child := object di::TabFolder {
-
- target1.rootObjects()->forEach(diagram|diagram.oclIsTypeOf(notation::Diagram)) {
- --avoid empty pages for unsupported diagrams (currently deployment diagram)
- if (diagram.oclAsType(notation::Diagram).type != null) then {
- var page : di::PageRef = object di::PageRef {
- emfPageIdentifier:= diagram.oclAsType(ecore::EObject)
- };
- children += page;
- } endif;
- };
- };
-
- var window := object di::Window {
- children := Set { child };
- };
- return window;
-};
-
---helper SetChildren(): Set(di::PageRef){
-
- --var setchildren:Set(di::PageRef):=Set{};
- --var page: di::PageRef;
-
- --return setchildren;
---};
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/Diagram.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/Diagram.qvto
deleted file mode 100644
index f88e968..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/Diagram.qvto
+++ /dev/null
@@ -1,213 +0,0 @@
---Author Manel Fredj-CEA LIST
-library Diagram;
-
-import ClassDiagNodes;
-import StateDiagNodes;
-import ProfileDiagNodes;
-import ClassAndProfileDiagEdges;
-import CompositeDiagNodes;
-import StateDiagEdges;
-import CompositeDiagEdges;
-
---import VisualIDs;
-import NotationQueries;
-import GeneralMappingsandHelpers;
-
-modeltype di uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype ecore uses 'http://www.eclipse.org/emf/2002/Ecore';
-modeltype uml uses 'http://www.eclipse.org/uml2/2.1.0/UML';
-
-
-mapping di2::Diagram::diagram2diagram() : notation::Diagram inherits di2::GraphElement::element2View
-{
- --the id is set automatically
- --assign type
- type := self.getDiagramtype();
- --assign name
- name := self.name;
-
- --assign element
- measurementUnit := notation::MeasurementUnit::Pixel;
-
- --transform contained nodes and edges
-
- if (type = ClassDiagram_P2) then {
- children := setChildrenForClassDiagram(self.contained);
- edges := setEdgesForClassAndProfileDiagram(self.contained);
- } endif;
- if (type = ProfileDiagram_P2) then {
- children := setChildrenForProfileDiagram(self.contained);
- edges := setEdgesForClassAndProfileDiagram(self.contained);
- } endif;
- if (type = CompositeStructure_P2) then {
- children := setChildrenForCompositeDiagram(self.contained);
- edges := setEdgesForCompositeDiagram(self.contained);
- } endif;
- if (type = StateMachineDiagram_P2) then {
- children := setChildrenForStateDiagram(self.contained);
- edges := setEdgesForStateDiagram(self.contained);
- } endif;
-
- --Set Style of diagram
- if (type != null) then {
- styles := setStylesForDiagram();
- } endif;
-}
-
-
---------------------------------------------------------------
---converting a composite diagram
-helper setChildrenForCompositeDiagram(in contained:OrderedSet(di2::DiagramElement)) : OrderedSet(notation::Node)
-{
- var setOfChildren:OrderedSet(notation::Node);
- var child:notation::Node;
- var itsParent: notation::Shape;
- contained ->forEach (node|node.oclIsTypeOf(di2::GraphNode)) {
- --case of containing a class
- if (node.oclAsType(di2::GraphNode).getElement().oclIsTypeOf(uml::Class) ) then {
- child := node.oclAsType(di2::GraphNode).map compositeDiagNode2Shape();
- setOfChildren += child;
- } endif;
- --case of containing a port : map the potr and attach it to the semantic parent
- if (node.oclAsType(di2::GraphNode).getElement().oclIsTypeOf(uml::Port) ) then {
- child := node.oclAsType(di2::GraphNode).map compositeDiagPort2Shape();
- var temp: di2::DiagramElement:=node.oclAsType(di2::GraphNode).getSemanticParent();
- itsParent:= temp.oclAsType(di2::GraphNode).resolveone (notation::Shape);
- --add the child to the semantic parent
- itsParent.children+= child;
- } endif;
- };
-
- return setOfChildren;
-}
-
-------------------------------------------------------------
---converting a class diagram
-helper setChildrenForClassDiagram (in contained:OrderedSet(di2::DiagramElement)) : OrderedSet(notation::Node)
-{
- var setOfChildren:OrderedSet(notation::Node);
- var child:notation::Node;
- contained ->forEach (node|node.oclIsTypeOf(di2::GraphNode)) {
- child := node.oclAsType(di2::GraphNode).map classDiagNode2Shape();
- setOfChildren += child;
- };
-
- return setOfChildren;
-}
-
-------------------------------------------------------------
---converting a profile diagram
-helper setChildrenForProfileDiagram (in contained:OrderedSet(di2::DiagramElement)) : OrderedSet(notation::Node)
-{
- var setOfChildren:OrderedSet(notation::Node);
- var child:notation::Node;
- contained ->forEach (node|node.oclIsTypeOf(di2::GraphNode)) {
- child := node.oclAsType(di2::GraphNode).map profileDiagNode2Shape();
- setOfChildren += child;
- };
-
- return setOfChildren;
-}
-
---converting a state diagram
-helper setChildrenForStateDiagram (in contained:OrderedSet(di2::DiagramElement)) : OrderedSet(notation::Node)
-{
- var setOfChildren:OrderedSet(notation::Node);
- var child:notation::Node;
- contained ->forEach (node|node.oclIsTypeOf(di2::GraphNode)) {
- child := node.oclAsType(di2::GraphNode).map stateDiagNode2Shape();
- setOfChildren += child;
- };
-
- return setOfChildren;
-}
-
-helper setEdgesForClassAndProfileDiagram (in contained : OrderedSet(di2::DiagramElement)) : OrderedSet (notation::Edge)
-{
- var setofEdges : OrderedSet(notation::Edge);
- var edge : notation::Edge;
- contained->forEach (node|node.oclIsTypeOf(di2::GraphEdge)) {
- edge := node.oclAsType(di2::GraphEdge).map classAndProfileDiagEdge2Edge();
- setofEdges += edge;
- };
- contained->forEach (composite|composite.oclIsTypeOf(di2::GraphNode)) {
- composite.oclAsType(di2::GraphNode).contained->forEach (elem|elem.oclIsTypeOf(di2::GraphEdge)) {
- edge := elem.oclAsType(di2::GraphEdge).map classAndProfileDiagEdge2Edge();
- setofEdges += edge;
- };
- composite.oclAsType(di2::GraphNode).contained->forEach (prop|prop.oclIsTypeOf(di2::GraphNode)) {
- prop.oclAsType(di2::GraphNode).contained->forEach (connect|connect.oclIsTypeOf(di2::GraphEdge)) {
- edge := connect.oclAsType(di2::GraphEdge).map classAndProfileDiagEdge2Edge();
- setofEdges += edge;
- };
- };
- };
-
- return setofEdges;
-}
-
-helper setEdgesForCompositeDiagram (in contained : OrderedSet(di2::DiagramElement)) : OrderedSet (notation::Edge)
-{
- var setofEdges : OrderedSet(notation::Edge);
- var edge : notation::Edge;
- contained->forEach (node|node.oclIsTypeOf(di2::GraphEdge)) {
- edge := node.oclAsType(di2::GraphEdge).map compositeDiagEdge2Edge();
- setofEdges += edge;
- };
- contained->forEach (composite|composite.oclIsTypeOf(di2::GraphNode)) {
- composite.oclAsType(di2::GraphNode).contained->forEach (elem|elem.oclIsTypeOf(di2::GraphEdge)) {
- edge := elem.oclAsType(di2::GraphEdge).map compositeDiagEdge2Edge();
- setofEdges += edge;
- };
- composite.oclAsType(di2::GraphNode).contained->forEach (prop|prop.oclIsTypeOf(di2::GraphNode)) {
- prop.oclAsType(di2::GraphNode).contained->forEach (connect|connect.oclIsTypeOf(di2::GraphEdge)) {
- edge := connect.oclAsType(di2::GraphEdge).map compositeDiagEdge2Edge();
- setofEdges += edge;
- };
- };
- };
-
- return setofEdges;
-}
-
-helper setEdgesForStateDiagram (in contained : OrderedSet(di2::DiagramElement)) : OrderedSet (notation::Edge)
-{
- var setofEdges : OrderedSet(notation::Edge);
- var edge : notation::Edge;
- contained->forEach (node|node.oclIsTypeOf(di2::GraphEdge)) {
- edge := node.oclAsType(di2::GraphEdge).map stateDiagEdge2Edge();
- setofEdges += edge;
- };
- contained->forEach (composite|composite.oclIsTypeOf(di2::GraphNode)) {
- composite.oclAsType(di2::GraphNode).contained->forEach (elem|elem.oclIsTypeOf(di2::GraphEdge)) {
- edge := elem.oclAsType(di2::GraphEdge).map stateDiagEdge2Edge();
- setofEdges += edge;
- };
- composite.oclAsType(di2::GraphNode).contained->forEach (prop|prop.oclIsTypeOf(di2::GraphNode)) {
- prop.oclAsType(di2::GraphNode).contained->forEach (connect|connect.oclIsTypeOf(di2::GraphEdge)) {
- edge := connect.oclAsType(di2::GraphEdge).map stateDiagEdge2Edge();
- setofEdges += edge;
- };
- };
- };
-
- return setofEdges;
-}
-
---------------------------------
---Helpers related to a diagram
-helper setStylesForDiagram() : OrderedSet (notation::Style)
-{
- --<styles xmi:type="notation:DiagramStyle""/>
-
- var setofStyles : OrderedSet(notation::Style);
- var style := object notation::DiagramStyle {
- --the id is set automatically
- };
-
- setofStyles := OrderedSet{style};
-
- return setofStyles;
-} \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ElementType.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ElementType.qvto
deleted file mode 100644
index b54734c..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ElementType.qvto
+++ /dev/null
@@ -1,25 +0,0 @@
---Author Manel Fredj-CEA LIST
-
-library ElementType;
-
---diagram types in notation (Papyrus MDT -- P2)
-property ClassDiagram_P2 : String = "PapyrusUMLClassDiagram";
-property ProfileDiagram_P2 : String = "PapyrusUMLProfileDiagram";
-property CompositeStructure_P2 : String = "CompositeStructure";
-property ActivityDiagram_P2 : String = "PapyrusUMLActivityDiagram";
-property SequenceDiagram_P2 : String = "PapyrusUMLSequenceDiagram"; --todo: check for papyrus 2 the actual name
-property ComponentDiagram_P2 : String = ""; --todo: check for papyrus 1 the actual name
-property StateMachineDiagram_P2 : String = "PapyrusUMLStateMachineDiagram";
-property UseCaseDiagram_P2 : String = "UseCase";
-
---diagram types in di2 (Papyrus 1 -- P1)
-property ClassDiagram_P1 : String = "ClassDiagram";
--- property ProfileDiagram_P1 --no specific diagram in P1 (class diagram), getDiagramType returns code in function of UML model
-property CompositeStructure_P1 : String = "CompositeStructureDiagram";
-property ActivityDiagram_P1 : String = "ActivityDiagram";
-property SequenceDiagram_P1 : String = "SequenceDiagram";
-property ComponentDiagram_P1 : String = "ComponentDiagram";
-property StateMachineDiagram_P1 : String = "StateMachineDiagram";
-property UseCaseDiagram_P1 : String = "UseCaseDiagram";
--- does not exist in MDT
--- property DeploymentDiagram_P1 : String = "DeploymentDiagram"; \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/GeneralMappingsandHelpers.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/GeneralMappingsandHelpers.qvto
deleted file mode 100644
index becc23e..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/GeneralMappingsandHelpers.qvto
+++ /dev/null
@@ -1,136 +0,0 @@
---Author Manel Fredj-CEA LIST
-library GeneralMappings;
-
-import Converter.Utils.ConverterLibs;
-import NotationQueries;
-
-
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype ecore uses 'http://www.eclipse.org/emf/2002/Ecore';
-modeltype uml uses 'http://www.eclipse.org/uml2/2.1.0/UML';
-
-
--------------------------------------------------------------------------------------------------------------------------
----------------------------------------- Generic Mappings ---------------------------------------
--------------------------------------------------------------------------------------------------------------------------
-abstract mapping di2::GraphElement::element2View() : notation::View
-{
- --assign visibility attribute (it seems that this is not supported by Papyrus MDT
- -- if false, diagram is visible but has no contents
- --visible := self.isVisible;
- visible := true;
-
- element := self.getElement().oclAsType(ecore::EObject);
-}
-
-
-mapping di2::GraphEdge::edge2Connector() : notation::Connector inherits di2::GraphElement::element2View
-{
- lineColor := self.borderColor.rgb2int();
-}
-
-mapping di2::GraphNode::node2Shape() : notation::Shape inherits di2::GraphElement::element2View
-{
- --assign colors and bounds
- lineColor := self.borderColor.rgb2int();
- fillColor := self.backgroundColor.rgb2int();
- fontColor := self.fontColor.rgb2int();
-
- layoutConstraint := object notation::Bounds {
- var size : notation::Size := self.oclAsType(di2::GraphNode).size.map dimension2Size();
-
- var relativeLocation: notation::Location :=null;
-
- var location : notation::Location := self.position.map point2Location();
- x := location.x;
- y := location.y;
- width := size.width;
- height := size.height;
- if (self.container.oclIsTypeOf(di2::GraphNode)) then {
- // correct position (why necessary??) of nested items
- y := y - 20;
- } endif;
- }
-}
-
--------------------------------------------------------------------------------------------------------------------------
----------------------------------------- Mappings ---------------------------------------
--------------------------------------------------------------------------------------------------------------------------
-
-mapping di2::Dimension::dimension2Size() : notation::Size
-{
- width := self.dimensionGetWidth();
- height := self.dimensionGetHeight();
-}
-
--- transformation mapping dimension into location
-mapping di2::Point::point2Location() : notation::Location
-{
- x := self.pointGetX();
- y := self.pointGetY();
-
-}
-
--------------------------------------------------------------------------------------------------------------------------
----------------------------------------- Helpers ---------------------------------------
--------------------------------------------------------------------------------------------------------------------------
-
-
---Set EAnnotation: not specific to a diagram (it is used in class diagram and composite diagram)
---------------------------------
-helper setEAnnotations() : OrderedSet (ecore::EAnnotation)
-{
- -- first eAnnotation
- var eAnnot1 := object ecore::EAnnotation {
- --the id is set automatically
- --eAnnot1.eModelElement:=self.resolveone(notation::Node);
- source := "ShadowFigure";
- details := object ecore::EStringToStringMapEntry {
- key := "ShadowFigure_Value";
- value := "false";
- };
- };
-
- -- second annotation
- var eAnnot2 := object ecore::EAnnotation {
- --the id is set automatically
- source := "displayNameLabelIcon";
- details := object ecore::EStringToStringMapEntry {
- key := "displayNameLabelIcon_value";
- value := "false";
- };
- };
-
- -- third annotation
- var eAnnot3 := object ecore::EAnnotation {
- -- the id is set automatically
- source := "QualifiedName";
- details := object ecore::EStringToStringMapEntry {
- key := "QualifiedNameDepth";
- value := "1000";
- };
- };
-
- -- add the set of annotations to the node
- return OrderedSet {
- eAnnot1, eAnnot2, eAnnot3
- };
-}
-
---suppresses showing type information for an element (used for associations by default)
-helper noTypeEAnnotation() : OrderedSet (ecore::EAnnotation)
-{
- var eAnnotationNoType := object ecore::EAnnotation {
- --the id is set automatically
- --eAnnot1.eModelElement:=self.resolveone(notation::Node);
- source := "CustomAppearance_Annotation";
- details := object ecore::EStringToStringMapEntry {
- key := "CustomAppearance_MaskValue";
- value := "14";
- };
- };
- return OrderedSet {
- eAnnotationNoType
- };
-} \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/NotationQueries.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/NotationQueries.qvto
deleted file mode 100644
index 83f1850..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/NotationQueries.qvto
+++ /dev/null
@@ -1,168 +0,0 @@
-
---Author Manel Fredj-CEA LIST
-
-import ElementType;
-import Converter.Utils.ConverterLibs; // for getElement
-
-modeltype di uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype ecore uses 'http://www.eclipse.org/emf/2002/Ecore';
-modeltype uml uses 'http://www.eclipse.org/uml2/2.1.0/UML';
-
-
-transformation Transfo(in src : di2, out target1 : notation, out target2:di);
-
-
--------------------------------------------------------------------------------------------------------------------------
----------------------------------------- QUERIES for notation ---------------------------------------
--------------------------------------------------------------------------------------------------------------------------
-
-// in Java already
---query di2::RGB::RGB2Int() : Integer
---{
--- return 0;
--- -- TODO: check the conversion form RGB to int
---}
-
-
-query di2::Diagram::getDiagramtype() : String
-{
- --class diagram
- if (self.type = ClassDiagram_P1) then {
- if (self.getElement().oclIsTypeOf(uml::Profile)) then {
- return ProfileDiagram_P2.oclAsType(String);
- }
- else {
- return ClassDiagram_P2.oclAsType(String);
- } endif;
- } endif;
- --composite diagram
- if (self.type = CompositeStructure_P1) then {
- return CompositeStructure_P2.oclAsType(String);
- } endif;
- --activity diagram
- if (self.type = ActivityDiagram_P1) then {
- return ActivityDiagram_P2.oclAsType(String);
- } endif; --TODO: check for papyrus 1 le type
- --sequence diagram
- if (self.type = SequenceDiagram_P1) then {
- return SequenceDiagram_P2.oclAsType(String);
- } endif;
- --component diagram
- if (self.type = ComponentDiagram_P1) then {
- return ComponentDiagram_P1.oclAsType(String);
- } endif; --TODO: check for papyrus 2 le type
- --state Machine diagram
- if (self.type = StateMachineDiagram_P1) then {
- return StateMachineDiagram_P2;
- } endif;
- --Use case diagram
- if (self.type = UseCaseDiagram_P1) then {
- return UseCaseDiagram_P2;
- } endif;
- --otherwise
- return null;
-}
-
-query di2::GraphElement::getDiagramtype() : String {
- var parent : Stdlib::Element := self.container();
-
- if (parent.oclIsTypeOf (di2::Diagram)) then {
- return parent.oclAsType (di2::Diagram).getDiagramtype();
- }
- else {
- if (parent.oclIsTypeOf (di2::GraphElement)) then {
- return parent.oclAsType (di2::GraphElement).getDiagramtype();
- } endif;
- } endif;
- return null;
-}
-
-query di2::GraphNode::getOperations() : OrderedSet(ecore::EObject)
-{
- return self.getSubElementsOfType("Operation");
-}
-
-
-query di2::GraphNode::getProperties() : OrderedSet(ecore::EObject)
-{
- return self.getSubElementsOfType("Property");
-}
-
-query di2::GraphNode::getEnumLiterals() : OrderedSet(ecore::EObject)
-{
- return self.getSubElementsOfType("EnumerationLiteral");
-}
-
-query di2::GraphNode::getSubElementsOfType(type : String) : OrderedSet(ecore::EObject)
-{
- var containedSubElements : OrderedSet(ecore::EObject);
- var elem : uml::Element;
-
- self.contained->forEach (node|node.oclIsTypeOf(di2::GraphNode)) {
-
- if (node.oclAsType(di2::GraphNode).contained != null) then
- {
- var contained:OrderedSet(di2::DiagramElement) := node.oclAsType(di2::GraphNode).contained;
- contained->forEach (op|op.oclIsTypeOf(di2::GraphNode)){
- elem := op.oclAsType(di2::GraphNode).semanticModel.oclAsType(di2::Uml1SemanticModelBridge).element;
- if (elem.metaClassName() = type) then {
- containedSubElements += elem.oclAsType(ecore::EObject);
- } endif;
- };
- } endif;
- };
- return containedSubElements;
-}
-
-query di2::GraphNode::getClassifierTemplateParameter():OrderedSet(ecore::EObject){
- --containedCTPs stands for contained "Classifier Template Parameters"
- var containedCTPs: OrderedSet(ecore::EObject);
- var elem : uml::Element;
-
- self.contained->forEach (node|node.oclIsTypeOf(di2::GraphNode)){
- node.oclAsType(di2::GraphNode).contained->forEach(subnode|subnode.oclIsTypeOf(di2::GraphNode)) {
- elem:=subnode.oclAsType(di2::GraphNode).getElement();
- if (elem.oclIsTypeOf(uml::ClassifierTemplateParameter)) then {
- containedCTPs += elem.oclAsType(ecore::EObject);
- } endif;
- };
- };
-
- return containedCTPs;
-}
-
-query di2::GraphNode::getSemanticParent(): di2::DiagramElement {
-
- if (self.getElement().oclIsTypeOf(uml::RedefinableTemplateSignature)) then {
- return self.semanticParent;
- } endif;
-
- if (self.getElement().oclIsTypeOf(uml::Port))then{
- return self.semanticParent;
- } endif;
-
- return null;
-}
-
-query di2::GraphNode::getSubElementsOfPackage() : OrderedSet(di2::GraphNode)
-{
- var containedElements : OrderedSet(di2::GraphNode);
-
- self.contained->forEach (node|node.oclIsTypeOf(di2::GraphNode)) {
- if (node.oclAsType(di2::GraphNode).getElement().oclIsKindOf(uml::Element)) then
- {
- containedElements +=node.oclAsType(di2::GraphNode);
- } endif;
- };
- return containedElements;
-}
-
-query di2::GraphEdge::getAnchors()
-{
- var anchors:OrderedSet (di2::GraphConnector):= self.anchor;
- anchors->forEach (gc) {
- --log("the anchor is " + gc.metaClassName());
- };
-} \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ProfileDiagNodes.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ProfileDiagNodes.qvto
deleted file mode 100644
index 162d0f2..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ProfileDiagNodes.qvto
+++ /dev/null
@@ -1,273 +0,0 @@
---Author Ansgar Radermacher - CEA LIST
-library ProfileDiagram;
-
-import Converter.Utils.ConverterLibs;
-import ProfileDiagVisualIDs;
-import GeneralMappingsandHelpers;
-
-
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype ecore uses 'http://www.eclipse.org/emf/2002/Ecore';
-modeltype uml uses 'http://www.eclipse.org/uml2/2.1.0/UML';
-
-
-mapping di2::GraphNode::profileDiagNode2Shape() : notation::Shape inherits di2::GraphNode::node2Shape
-{
- --add 3 eAnnotations as in class diagram
- eAnnotations := setEAnnotations ();
-
- if (self.getElement().oclIsTypeOf(uml::Stereotype)) then {
- type := VisualId_Stereotype;
- children := setChildrenForStereotype(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::ElementImport)) then {
- // TODO: in Papyrus 1, meta-classes refer to element imports, but not all element imports are meta-classes
- type := VisualId_Metaclass;
- children := setChildrenForMetaclass(self);
- // replace element import by meta-class reference
- element := self.getSemanticModel().getMetaclassRef().oclAsType(ecore::EObject);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Comment)) then {
- type := VisualId_Comment;
- children := setChildrenForComment(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Package)) then {
- type := VisualId_Package;
- children := setChildrenForPackage(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Profile)) then {
- type := VisualId_Profile;
- children := setChildrenForProfile(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::DataType)) then {
- type := VisualId_DataType;
- children := setChildrenForDataType(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Enumeration)) then {
- type := VisualId_Enum;
- children := setChildrenForEnum(self);
- } endif;
-}
-
-
----------------------------------------------------------------------------
---set children for stereotype
-
-helper setChildrenForStereotype(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Stereotype_DecoNode;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type := VisualId_Stereotype_Label;
- styles := OrderedSet {
- object notation::SortingStyle { },
- object notation::FilteringStyle { }
- };
- layoutConstraint := object notation::Bounds {};
- };
-
- -- third child
- var child3 := object notation::BasicCompartment {
- type := VisualId_Stereotype_Compartment;
- --set children as properties
- children:= setPropertiesForStereotype(node.contained);
- layoutConstraint := object notation::Bounds {};
- };
-
- return OrderedSet {
- child1, child2, child3
- };
-}
-
---in contained attributes: properties or nested classes
-helper setPropertiesForStereotype(in contained:OrderedSet(di2::DiagramElement)) : OrderedSet(notation::Node)
-{
- var setOfChildren : OrderedSet(notation::Node);
- --var child : notation::Node;
-
- contained ->forEach (node|node.oclIsTypeOf(di2::GraphNode)) {
- node.oclAsType(di2::GraphNode).contained->forEach (subNode|subNode.oclIsTypeOf(di2::GraphNode)) {
- if(subNode.oclAsType(di2::GraphNode).getElement().oclIsTypeOf(uml::Property)) then {
- var child : notation::Shape := subNode.oclAsType(di2::GraphNode).map stereotype2Property();
- -- var child : notation::Shape;
- setOfChildren += child;
- } endif;
- };
- };
-
- return setOfChildren;
-}
-
------------------------------------------------------------------------------
--- case of properties
-mapping di2::GraphNode::stereotype2Property() : notation::Shape {
-
- type := VisualId_StereotypeProperty;
-
- --set element
- element := self.getElement().oclAsType(ecore::EObject);
-
- --set size and width and high
- layoutConstraint := object notation::Bounds {
- var size : notation::Size := self.size.map dimension2Size();
- var location : notation::Location := self.oclAsType(di2::GraphNode).position.map point2Location();
- x := location.x;
- y := location.y;
- width := size.width;
- height := size.height;
- };
-}
-
-
-helper setChildrenForMetaclass(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Metaclass_DecoNode;
- --the id is set automatically
- };
-
- return OrderedSet {
- child1
- };
-}
-
-helper setChildrenForComment(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Comment_DecoNode;
- --the id is set automatically
- };
-
- return OrderedSet {
- child1
- };
-}
-
-helper setChildrenForProfile(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Profile_DecoNode1;
- };
- var child2 := object notation::DecorationNode {
- type := VisualId_Profile_DecoNode2;
-
- var containedElements : OrderedSet(di2::GraphNode) := node.getSubElementsOfPackage();
- containedElements->forEach (containedElement) {
- var shape : notation::Shape ::= containedElement.map profileDiagNode2Shape();
- children += shape;
- };
- };
-
- return OrderedSet {
- child1, child2
- };
-}
-
-helper setChildrenForPackage(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Package_DecoNode1;
- };
- var child2 := object notation::DecorationNode {
- type := VisualId_Package_DecoNode2;
- var containedElements : OrderedSet(di2::GraphNode) := node.getSubElementsOfPackage();
- containedElements->forEach (containedElement) {
- var shape : notation::Shape ::= containedElement.map profileDiagNode2Shape();
- children += shape;
- };
- };
-
- return OrderedSet {
- child1, child2
- };
-}
-
----------------------------------------------------------------------------
---set children for enumeration
-helper setChildrenForEnum(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- var childrenOfStereotype: OrderedSet(notation::Node);
-
- --<children xmi:type="notation:DecorationNode" type="5156"/>
-
- --<children xmi:type="notation:BasicCompartment" type="7073">
- -- <layoutConstraint xmi:type="notation:Bounds" />
- --</children>
-
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Enum_DecoNode;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type := VisualId_Enum_BasicCompartment;
- children := getEnumLiterals(node);
- layoutConstraint := object notation::Bounds {};
- };
-
- childrenOfStereotype := OrderedSet {
- child1, child2
- };
-
- --convert edges in the composite
-
- return childrenOfStereotype;
-}
-
---for enumeration literals
-helper getEnumLiterals(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- var enumLiteralsShape : OrderedSet(notation::Node);
- var enumLiterals : OrderedSet(ecore::EObject) := node.getEnumLiterals();
- enumLiterals->forEach (enumLiteral) {
- var enumLiteralShape := object notation::Shape {
- type := VisualId_EnumLiteral;
- --fontName="Sans Serif";
- --lineColor="0";
- element := enumLiteral;
- layoutConstraint := object notation::Location{};
- };
- enumLiteralsShape += enumLiteralShape;
- };
-
- return enumLiteralsShape;
-}
-
-helper setChildrenForDataType(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_DataType_DecoNode;
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type := VisualId_DataType_CompartmentAttr;
- --TODO set children
- layoutConstraint := object notation::Bounds {};
- };
-
- -- third child
- var child3 := object notation::BasicCompartment {
- type := VisualId_DataType_CompartmentOper;
- --set children as properties
- --children:= setPropertiesForStereotype(node.contained);
- layoutConstraint := object notation::Bounds {};
- };
-
- return OrderedSet {
- child1, child2, child3
- };
-}
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ProfileDiagVisualIDs.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ProfileDiagVisualIDs.qvto
deleted file mode 100644
index 3fa75c8..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/ProfileDiagVisualIDs.qvto
+++ /dev/null
@@ -1,55 +0,0 @@
-
---Author Ansgar Radermacher-CEA LIST
-
-library ProfileDiagVisualIDs;
-
---profile
-property VisualId_Profile : String = "1030";
-property VisualId_Profile_DecoNode1 : String = "1047";
-property VisualId_Profile_DecoNode2 : String = "1042";
-
---package
-property VisualId_Package : String = "2007";
-property VisualId_Package_DecoNode1 : String = "5026";
-property VisualId_Package_DecoNode2 : String = "1005";
-
---profile in package (currently unused)
-property VisualId_NestedProfile : String = "1024";
-property VisualId_NestedProfile_DecoNode1 : String = "1050";
-property VisualId_NestedProfile_DecoNode2 : String = "1051";
-
---package in package (currently unused)
-property VisualId_NestedPackage : String = "1012";
-property VisualId_NestedPackage_DecoNode1 : String = "1010";
-property VisualId_NestedPackage_DecoNode2 : String = "11";
-
---enumeration
-property VisualId_Enum : String = "2006";
-property VisualId_Enum_DecoNode : String = "5023";
-property VisualId_Enum_BasicCompartment : String = "1063";
-property VisualId_EnumLiteral : String = "1037";
-
---stereotype
-property VisualId_Stereotype : String = "1026";
-property VisualId_Stereotype_DecoNode : String = "1034";
-property VisualId_Stereotype_Label : String = "1019";
-property VisualId_Stereotype_Compartment : String = "1071";
-
---datatype
-property VisualId_DataType : String = "2010";
-property VisualId_DataType_DecoNode : String = "5035";
-property VisualId_DataType_CompartmentAttr : String = "1067";
-property VisualId_DataType_CompartmentOper : String = "1068";
-
---property in stereotype
-property VisualId_StereotypeProperty : String = "3002";
-property VisualId_StereotypeProperty_Label : String = "5001";
-property VisualId_StereotypeProperty_Compartment : String = "5002";
-
---metaclass
-property VisualId_Metaclass : String = "1031";
-property VisualId_Metaclass_DecoNode : String = "1084";
-
---comment
-property VisualId_Comment : String = "1002";
-property VisualId_Comment_DecoNode : String = "3";
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagEdges.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagEdges.qvto
deleted file mode 100644
index bfbe84e..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagEdges.qvto
+++ /dev/null
@@ -1,160 +0,0 @@
---Author Manel Fredj-CEA LIST
-
-library HelpersEdge;
-import GeneralMappingsandHelpers;
-import StateDiagVisualIDs;
-
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype uml uses 'http://www.eclipse.org/uml2/2.1.0/UML';
-
-mapping di2::GraphEdge::stateDiagEdge2Edge() : notation::Connector inherits di2::GraphEdge::edge2Connector
-{
- -----------------------------------------------------------------------
- --under an Edge "association"
- -----------------------------------------------------------------------
- --In the case that we have an association we will have:
- --1 edge with a xmi:type:="notation:Connector", a geneerated Id, type= "4001", a target and a source that includes:
- -- 6 "children" typed with decoration nodes
- -- 1 "styles
- -- 1 element
- -- 1 bendpoints
- --1 sourceAnchor
- --1targetAnchor
- -----------------------------------------------------------------------
-
- --setting the type and children
- if (self.getElement() != null) then {
-
- if (self.getElement().oclIsTypeOf(uml::Transition)) then {
- type := VisualId_Edge_Transition;
- --adding children
- children := setChildrenForTransition();
- } endif;
- }
- else {
- --type := VisualId_Edge_Link;
- --adding children
- } endif;
-
- --setting the source and target Anchors
- var anchors : OrderedSet (di2::GraphConnector) := self.anchor;
- anchors->forEach (gc) {
- --log("the anchor is "+ gc.graphElement.repr());
- gc.graphElement;
- };
- source := anchors->first().graphElement.oclAsType(di2::GraphNode).late resolveone(notation::Shape);
- target := anchors->last().graphElement.oclAsType(di2::GraphNode).late resolveone(notation::Shape);
- --adding style
- styles := setStyleForEdge();
-
- --adding element: already done in View
-
- --adding the bend points
- bendpoints := setBendpointsForEdge();
-
- --adding the source and target Anchor
- sourceAnchor := setSourceAnchor();
- targetAnchor := setTargetAnchor();
-}
-
-
---Helpers related to an Edge
---------------------------------
-
-
---generic helper for an edge with two children
---takes as input the visual ids of the the two children
-
-helper setChildrenForEdge2Children(in VisualId1: String, in VisualId2: String): OrderedSet(notation::Node)
-{
- var child1 := object notation::DecorationNode {
- --the id is set automatically
- type := VisualId1;
- layoutConstraint := object notation::Location {
- y := 40;
- };
- };
-
- --second child
- var child2 :=object notation::DecorationNode {
- --the id is set automatically
- type := VisualId2;
- layoutConstraint := object notation::Location {
- y := 60;
- };
- };
-
- return OrderedSet {child1,child2};
-}
-
-
-helper setChildrenForTransition(): OrderedSet(notation::Node)
-{
- --<children xmi:type="notation:DecorationNode" type="6007">
- -- <layoutConstraint xmi:type="notation:Location" y="40"/>
- --</children>
-
- var child1 := object notation::DecorationNode {
- --the id is set automatically
- --type := VisualId_DecoNodeGeneralization;
- type := VisualId_Edge_Transition_DecoNode1;
- layoutConstraint := object notation::Location {
- y := 10;
- };
- };
- var child2 := object notation::DecorationNode {
- --the id is set automatically
- --type := VisualId_DecoNodeGeneralization;
- type := VisualId_Edge_Transition_DecoNode2;
- layoutConstraint := object notation::Location {
- y := 20;
- };
- };
- var child3 := object notation::DecorationNode {
- --the id is set automatically
- --type := VisualId_DecoNodeGeneralization;
- type := VisualId_Edge_Transition_DecoNode3;
- layoutConstraint := object notation::Location {
- y := 20;
- };
- };
-
- return OrderedSet {
- child1, child2, child3
- };
-}
-
-
-helper setStyleForEdge() : OrderedSet(notation::Style)
-{
- --<styles xmi:type="notation:FontStyle" fontName="Sans Serif"/>
- var style := object notation::FontStyle {
- --the id is set automatically
- --fontName="Sans Serif";
- };
-
- return OrderedSet{style};
-}
-
-helper setSourceAnchor() : notation::Anchor
-{
- return object notation::IdentityAnchor { };
-}
-
-
-helper setTargetAnchor():notation::Anchor
-{
- return object notation::IdentityAnchor { };
-}
-
-
-helper setBendpointsForEdge():notation::RelativeBendpoints
-{
- --<bendpoints xmi:type="notation:RelativeBendpoints" points="[-7, -2, 323, 58]$[-282, -65, 48, -5]"/>
- // var pts : notation::RelativeBendpointList;
- // var bendpoints:=object notation::RelativeBendpoints { };
- var bendpoints := createBendpoints().oclAsType (notation::RelativeBendpoints);
-
- return bendpoints;
-} \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagNodes.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagNodes.qvto
deleted file mode 100644
index 60802fb..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagNodes.qvto
+++ /dev/null
@@ -1,308 +0,0 @@
---Author Manel Fredj-CEA LIST
-library StateDiagram;
-
-import Converter.Utils.ConverterLibs;
-import StateDiagVisualIDs;
-import GeneralMappingsandHelpers;
-
-
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-modeltype ecore uses 'http://www.eclipse.org/emf/2002/Ecore';
-modeltype uml uses 'http://www.eclipse.org/uml2/2.1.0/UML';
-
-
-mapping di2::GraphNode::stateDiagNode2Shape() : notation::Shape inherits di2::GraphNode::node2Shape
-{
- --add 3 eAnnotations as in class diagram
- eAnnotations := setEAnnotations ();
-
- if (self.getElement().oclIsTypeOf(uml::State)) then {
- type := VisualId_State;
- children := setChildrenForState(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::StateMachine)) then {
- type := VisualId_StateMachine;
- children := setChildrenForStateMachine(self);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Comment)) then {
- -- type := VisualId_Comment;
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Region)) then {
- type := VisualId_Region;
- children := setChildrenForRegion(self);
- eAnnotations += object ecore::EAnnotation {
- source := "RegionAnnotationKey";
- details := object ecore::EStringToStringMapEntry {
- key := "RegionZoneKey";
- value := "";
- };
- };
- } endif;
- if (self.getElement().oclIsTypeOf(uml::FinalState)) then {
- type := VisualId_FinalState;
- children := setChildrenForPseudoState (self, VisualId_FinalState_DecoNode1, VisualId_FinalState_DecoNode2);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::ConnectionPointReference)) then {
- type := VisualId_ConnectionPoint;
- children := setChildrenForPseudoState (self, VisualId_ConnectionPoint_DecoNode1, VisualId_ConnectionPoint_DecoNode2);
- } endif;
- if (self.getElement().oclIsTypeOf(uml::Pseudostate)) then {
- var pseudoState := self.getElement().oclAsType(uml::Pseudostate);
- if (pseudoState.kind = uml::PseudostateKind::initial) then {
- type := VisualId_InitialState;
- children := setChildrenForPseudoState (self, VisualId_InitialState_DecoNode1, VisualId_InitialState_DecoNode2);
- } endif;
- if (pseudoState.kind = uml::PseudostateKind::shallowHistory) then {
- type := VisualId_ShallowHistoryState;
- children := setChildrenForPseudoState (self, VisualId_ShallowHistoryState_DecoNode1, VisualId_ShallowHistoryState_DecoNode2);
- } endif;
- if (pseudoState.kind = uml::PseudostateKind::deepHistory) then {
- type := VisualId_DeepHistoryState;
- children := setChildrenForPseudoState (self, VisualId_DeepHistoryState_DecoNode1, VisualId_DeepHistoryState_DecoNode2);
- } endif;
- if (pseudoState.kind = uml::PseudostateKind::choice) then {
- type := VisualId_Choice;
- children := setChildrenForPseudoState (self, VisualId_Choice_DecoNode1, VisualId_Choice_DecoNode2);
- } endif;
- if (pseudoState.kind = uml::PseudostateKind::join) then {
- type := VisualId_Choice;
- children := setChildrenForPseudoState (self, VisualId_Choice_DecoNode1, VisualId_Choice_DecoNode2);
- } endif;
- if (pseudoState.kind = uml::PseudostateKind::fork) then {
- type := VisualId_Fork;
- children := setChildrenForPseudoState (self, VisualId_Fork_DecoNode1, VisualId_Fork_DecoNode2);
- } endif;
- if (pseudoState.kind = uml::PseudostateKind::junction) then {
- type := VisualId_Junction;
- children := setChildrenForPseudoState (self, VisualId_Junction_DecoNode1, VisualId_Junction_DecoNode2);
- } endif;
- if (pseudoState.kind = uml::PseudostateKind::terminate) then {
- type := VisualId_Terminate;
- children := setChildrenForPseudoState (self, VisualId_Terminate_DecoNode1, VisualId_Terminate_DecoNode2);
- } endif;
- if (pseudoState.kind = uml::PseudostateKind::entryPoint) then {
- type := VisualId_EntryPoint;
- children := setChildrenForPseudoState (self, VisualId_EntryPoint_DecoNode1, VisualId_EntryPoint_DecoNode2);
- } endif;
- if (pseudoState.kind = uml::PseudostateKind::exitPoint) then {
- type := VisualId_ExitPoint;
- children := setChildrenForPseudoState (self, VisualId_ExitPoint_DecoNode1, VisualId_ExitPoint_DecoNode2);
- } endif;
- } endif;
-}
-
-
-helper setChildrenForPseudoState(in node : di2::GraphNode, in visualID1 : String, in visualID2 : String) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := visualID1;
- layoutConstraint := object notation::Location {
- x := 20
- };
- };
- var child2 := object notation::DecorationNode {
- type := visualID2;
- layoutConstraint := object notation::Location {
- x := 20
- };
- };
- return OrderedSet {
- child1, child2
- };
-};
-
----------------------------------------------------------------------------
---set children for state
-
-helper setChildrenForState(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type:=VisualId_State_DecoNode1;
- };
-
- -- first child
- var child2 := object notation::DecorationNode {
- type:=VisualId_State_DecoNode2;
- };
- /*
- -- second child
- var child2 := object notation::BasicCompartment {
- type:=VisualId_Class_Composite_Compartiment;
- --set children as properties
- children:= setPropertiesForState(node.contained);
- layoutConstraint:=object notation::Bounds {};
- };
- */
- --convert edges in the composite
-
- return OrderedSet {
- child1, child2
- };
-}
-
-helper setChildrenForStateMachine(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_StateMachine_DecoNode1;
- };
- var child2 := object notation::DecorationNode {
- type := VisualId_StateMachine_DecoNode2;
- var containedElements : OrderedSet(di2::GraphNode) := node.getSubElementsOfPackage();
- containedElements->forEach (containedElement) {
- var shape : notation::Shape ::= containedElement.map stateDiagNode2Shape();
- if (shape.type != "") then {
- --don't add invalid IDs
- children += shape;
- } endif;
- };
- };
-
- return OrderedSet {
- child1, child2
- };
-}
-
-helper setChildrenForRegion(in node : di2::GraphNode) : OrderedSet(notation::Node)
-{
- -- first child
- var child1 := object notation::DecorationNode {
- type := VisualId_Region_DecoNode;
- var containedElements : OrderedSet(di2::GraphNode) := node.getSubElementsOfPackage();
- containedElements->forEach (containedElement) {
- var shape : notation::Shape ::= containedElement.map stateDiagNode2Shape();
- if (shape.type != "") then {
- --don't add invalid IDs
- children += shape;
- } endif;
- };
- };
-
- return OrderedSet {
- child1
- };
-}
-
-/*
---in contrained attributes: properties or nested classes
-helper setPropertiesForState(in contained:OrderedSet(di2::DiagramElement)) : OrderedSet(notation::Node)
-{
- var setOfChildren:OrderedSet(notation::Node);
- var child:notation::Node;
- contained ->forEach (node|node.oclIsTypeOf(di2::GraphNode)) {
-
- if(node.oclAsType(di2::GraphNode).getElement().oclIsTypeOf(uml::Property)) then {
- child := node.oclAsType(di2::GraphNode).map ComponentClass2Property();
- setOfChildren += child;
- } endif;
- if (node.oclAsType(di2::GraphNode).getElement().oclIsTypeOf(uml::Class)) then {
- child := node.oclAsType(di2::GraphNode).map ComponentClass2Class(node.oclAsType(di2::GraphNode));
- setOfChildren += child;
- } endif;
- };
-
- return setOfChildren;
-}
-
-
------------------------------------------------------------------------------
--- case of properties
-mapping di2::GraphNode::ComponentClass2Property() : notation::Shape {
-
- type := VisualId_Component_Property ;
- --seteAnnotation
- eAnnotations := setEAnnotations ();
- --setchildren
- children:=setChildrenForComponentProperty();
-
- --set size and width and high
- layoutConstraint := object notation::Bounds {
- var size : notation::Size := self.size.map dimension2Size();
- var location : notation::Location := self.oclAsType(di2::GraphNode).position.map point2Location();
- x := location.x;
- y := location.y;
- width := size.width;
- height := size.height;
- };
- --set element
- element := self.getElement().oclAsType(ecore::EObject);
-}
-
-helper setChildrenForComponentProperty() : OrderedSet(notation::Node)
-{
- --<children xmi:type="notation:DecorationNode" type="5126"/>
- --<children xmi:type="notation:BasicCompartment" type="7077">
- -- <layoutConstraint xmi:type="notation:Bounds" />
- --</children>
-
- -- first child
- var child1 := object notation::DecorationNode {
- type:=VisualId_Component_Property_Label;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type:=VisualId_Component_Property_Compartiment;
- layoutConstraint:=object notation::Bounds {};
- };
-
- return OrderedSet {child1, child2};
-}
-
-
------------------------------------------------------------------------------
--- case of nested classes
-
-mapping di2::GraphNode::ComponentClass2Class(in node:di2::GraphNode) : notation::Shape {
-
- type := VisualId_Component_Class;
- --seteAnnotation
- eAnnotations := setEAnnotations ();
- --setchildren
- children:=setChildrenForComponentClass(node);
-
- --set size and width and high
- layoutConstraint := object notation::Bounds {
- var size : notation::Size := self.size.map dimension2Size();
- var location : notation::Location := self.oclAsType(di2::GraphNode).position.map point2Location();
- x := location.x;
- y := location.y;
- width := size.width;
- height := size.height;
- };
-
- --set element
- element := self.getElement().oclAsType(ecore::EObject);
-}
-
-helper setChildrenForComponentClass(in node:di2::GraphNode) : OrderedSet(notation::Node)
-{
- --<children xmi:type="notation:DecorationNode" type="5126"/>
- --<children xmi:type="notation:BasicCompartment" type="7077">
- -- <layoutConstraint xmi:type="notation:Bounds" />
- --</children>
-
- -- first child
- var child1 := object notation::DecorationNode {
- type:=VisualId_Component_Class_Label;
- --the id is set automatically
- };
-
- -- second child
- var child2 := object notation::BasicCompartment {
- type:=VisualId_Component_Class_Compartiment;
-
- --set children as properties in the case that the nested class contains properties
- children:= setPropertiesForState(node.contained);
- layoutConstraint:=object notation::Bounds {};
- };
-
- return OrderedSet{child1, child2};
-}
-
-
-*/ \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagVisualIDs.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagVisualIDs.qvto
deleted file mode 100644
index 2ff2ab2..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/StateDiagVisualIDs.qvto
+++ /dev/null
@@ -1,84 +0,0 @@
-
---Author Ansgar Radermacher -CEA LIST
-
-library StateDiagVisualIDs;
-
---transition
-property VisualId_Edge_Transition : String = "7000";
-property VisualId_Edge_Transition_DecoNode1 : String = "7001";
-property VisualId_Edge_Transition_DecoNode2 : String = "7002";
-property VisualId_Edge_Transition_DecoNode3 : String = "7003";
-
---state machine
-property VisualId_StateMachine : String = "2000";
-property VisualId_StateMachine_DecoNode1 : String = "2001";
-property VisualId_StateMachine_DecoNode2 : String = "2002";
-
---region
-property VisualId_Region : String = "3000";
-property VisualId_Region_DecoNode : String = "3002";
-
---final state (pseudo state)
-property VisualId_FinalState : String = "5000";
-property VisualId_FinalState_DecoNode1 : String = "5001";
-property VisualId_FinalState_DecoNode2 : String = "5002";
-
---state
-property VisualId_State : String = "6000";
-property VisualId_State_DecoNode1 : String = "6001";
-property VisualId_State_DecoNode2 : String = "6002";
-
---initial state (pseudo state)
-property VisualId_InitialState : String = "8000";
-property VisualId_InitialState_DecoNode1 : String = "8001";
-property VisualId_InitialState_DecoNode2 : String = "8002";
-
---join (pseudo state)
-property VisualId_Join : String = "9000";
-property VisualId_Join_DecoNode1 : String = "9001";
-property VisualId_Join_DecoNode2 : String = "9002";
-
---fork (pseudo state)
-property VisualId_Fork : String = "10000";
-property VisualId_Fork_DecoNode1 : String = "10001";
-property VisualId_Fork_DecoNode2 : String = "10002";
-
---choice point (pseudo state)
-property VisualId_Choice : String = "11000";
-property VisualId_Choice_DecoNode1 : String = "11001";
-property VisualId_Choice_DecoNode2 : String = "11002";
-
---junction (pseudo state)
-property VisualId_Junction : String = "12000";
-property VisualId_Junction_DecoNode1 : String = "12001";
-property VisualId_Junction_DecoNode2 : String = "12002";
-
---shallow history state (pseudo state)
-property VisualId_ShallowHistoryState : String = "13000";
-property VisualId_ShallowHistoryState_DecoNode1 : String = "13001";
-property VisualId_ShallowHistoryState_DecoNode2 : String = "13002";
-
---deep history state (pseudo state)
-property VisualId_DeepHistoryState : String = "14000";
-property VisualId_DeepHistoryState_DecoNode1 : String = "14001";
-property VisualId_DeepHistoryState_DecoNode2 : String = "14002";
-
---termination (pseudo state)
-property VisualId_Terminate : String = "15000";
-property VisualId_Terminate_DecoNode1 : String = "15001";
-property VisualId_Terminate_DecoNode2 : String = "15002";
-
---entry point (pseudo state)
-property VisualId_EntryPoint : String = "16000";
-property VisualId_EntryPoint_DecoNode1 : String = "16001";
-property VisualId_EntryPoint_DecoNode2 : String = "16002";
-
---exit point (pseudo state)
-property VisualId_ExitPoint : String = "17000";
-property VisualId_ExitPoint_DecoNode1 : String = "17001";
-property VisualId_ExitPoint_DecoNode2 : String = "17002";
-
---connection point (pseudo state)
-property VisualId_ConnectionPoint : String = "18000";
-property VisualId_ConnectionPoint_DecoNode1 : String = "18001";
-property VisualId_ConnectionPoint_DecoNode2 : String = "18002"; \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/Transfo.qvto b/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/Transfo.qvto
deleted file mode 100644
index 5297902..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/TransfoQvtoDi2toDi/Transfo.qvto
+++ /dev/null
@@ -1,25 +0,0 @@
-
---Author Manel Fredj-CEA LIST
-
-import DiTransformations;
---import NotationMappingsandHelpers;
-import Diagram;
-
-modeltype di uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
-modeltype di2 uses 'http://www.papyrusuml.org/di2';
-modeltype notation uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
-
-
-
-transformation Transfo(in src : di2, out target1 : notation, out target2:di);
-
-main() {
- src.rootObjects()->forEach (e|e.oclIsTypeOf(di2::Diagram)) {
- e.oclAsType(di2::Diagram).map diagram2diagram();
- };
-
- src.rootObjects()![di2::Diagram]->map diagram2SashWindowsMngr();
-}
-
-
-
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/build.properties b/deprecated/org.eclipse.papyrus.conversion.di2todi/build.properties
deleted file mode 100644
index 4cc050a..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = plugin.xml,\
- META-INF/,\
- .,\
- TransfoQvtoDi2toDi/
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/TutorialConversion.html b/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/TutorialConversion.html
deleted file mode 100644
index 140e077..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/TutorialConversion.html
+++ /dev/null
@@ -1,294 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<HTML>
-<HEAD>
- <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8">
- <TITLE></TITLE>
- <META NAME="GENERATOR" CONTENT="OpenOffice.org 3.2 (Linux)">
- <META NAME="AUTHOR" CONTENT="mf224205">
- <META NAME="CREATED" CONTENT="20101125;14510000">
- <META NAME="CHANGEDBY" CONTENT="Ansgar Radermacher">
- <META NAME="CHANGED" CONTENT="20110218;17171000">
- <META NAME="AppVersion" CONTENT="12.0000">
- <META NAME="Company" CONTENT="CEA">
- <META NAME="DocSecurity" CONTENT="0">
- <META NAME="HyperlinksChanged" CONTENT="false">
- <META NAME="LinksUpToDate" CONTENT="false">
- <META NAME="ScaleCrop" CONTENT="false">
- <META NAME="ShareDoc" CONTENT="false">
- <STYLE TYPE="text/css">
- <!--
- @page { margin: 2.5cm }
- P { margin-bottom: 0.21cm; direction: ltr; color: #000000; widows: 2; orphans: 2 }
- H1 { margin-top: 0.85cm; margin-bottom: 0cm; direction: ltr; color: #365f91; widows: 2; orphans: 2 }
- H1.western { font-family: "Cambria", serif; font-size: 14pt }
- H1.cjk { font-family: "Arial"; font-size: 14pt }
- H1.ctl { font-family: ; font-size: 14pt }
- H2 { margin-top: 0.35cm; margin-bottom: 0cm; direction: ltr; color: #4f81bd; widows: 2; orphans: 2 }
- H2.western { font-family: "Cambria", serif; font-size: 13pt }
- H2.cjk { font-family: "Arial"; font-size: 13pt }
- H2.ctl { font-family: ; font-size: 13pt }
- H3 { margin-top: 0.35cm; margin-bottom: 0cm; direction: ltr; color: #4f81bd; widows: 2; orphans: 2 }
- H3.western { font-family: "Cambria", serif; font-size: 11pt }
- H3.cjk { font-family: "Arial"; font-size: 11pt }
- H3.ctl { font-family: ; font-size: 11pt }
- A:link { color: #0000ff; so-language: zxx }
- -->
- </STYLE>
-</HEAD>
-<BODY LANG="fr-FR" TEXT="#000000" LINK="#0000ff" DIR="LTR">
-<H1 LANG="en-US" CLASS="western" ALIGN=CENTER><A NAME="_Toc278473442"></A><A NAME="_Toc278473184"></A><A NAME="_Toc278382563"></A>
-Tutorial</h1>
-<h1> Converter: Diagram Conversion</h1>
-<h1>From Papyrus 1 to Papyrus MDT</h1>
-<p>
-<h2>Specificities</h2>
-
-<table>
-
-<tr>
- <td><h3>Plugin name</h3></td>
- <td><h3>org.eclipse.papyrus.conversion.di2todi</h3></td>
-</tr>
-<tr>
- <td><h3> Papyrus version</h3></td>
- <td><h3>To be used with Papyrus MDT</h3></td>
-</tr>
-<tr>
- <td><h3>Status</h3> </td>
- <td><h3>In progress</h3> (class, composite structure, profile and state diagrams are supported)</td>
-</tr>
-<tr>
- <td><h3>Institution</h3> </td>
- <td><h3>CEA LIST</h3></td>
-</tr>
-<tr>
- <td><h3>Authors</h3></td>
- <td><h3>Manel Fredj (initial development), Ansgar Radermacher (clean-up/extensions)</h3></td>
-</tr>
-<tr>
-<td><h3>Required (Papyrus) plugins</h3></td>
- <td><ul><li><p>org.eclipse.papyrus.conversion.di2</ul></td>
-</tr>
-<tr>
- <td><h3>Other Dependencies</h3></td>
- <td><ul>
- <li>org.eclipse.m2m.qvt.oml =&gt; Install QVT
- <li>org.eclipse.ui
- <li>org.eclipse.core.runtime
- <li>org.eclipse.core.resources
- <li>org.eclipse.uml2.uml
- <li>org.eclipse.gmf.runtime.notation
- <li>org.eclipse.m2m.qvt.oml.emf.util
- </ul></td>
-</tr>
-
-<tr>
-<td><h3>Extensions</h3></td>
- <td><ul>
- <li>org.eclipse.m2m.qvt.oml.javaBlackboxUnits
- <li>org.eclipse.ui.popupMenus
- </ul></td>
-</tr>
-</table>
-
-<p>
-
-<h1 id="gettingStarted">User Guide</h1>
-
-This plugin enables to convert diagrams created using papyrus 1.X version
-into diagram editable by Papyrus MDT. This Tutorial is twofold:
-
-<ul>
-<li>First, it includes a user guide in order to convert your diagrams (created
- with Papyrus 1.X) into diagrams editable by Papyrus MDT
-
-<li>Second, it includes a developer guide in order to help developers to extend the
- conversion to other diagram not already supported.
-</ul>
-
-<p>
-
-<h2>How to use the converter?</h2>
-
-<ul>
-<li>Add the org.eclipse.papyrus.conversion.di2 + di2todi plugins to your
- eclipse configuration. These plugins are provided in the Papyrus SVN
- repository under extraplugins/conversion.
-
-<li>Launch eclipse, including Papyrus MDT. Import your old-version model
- created with Papyrus 1.x, let’s call it “Example”. To this aim
- you need to import two files: “Example.di2” and “Example.uml”,
- as shown in Figure 2.
-
-</ul>
-
-<center>
- <img src="figs/conversion-example-project.png"><br>
- Import Papyrus 1.x Model
-</center>
-
-<ul>
-<li>Convert your model. To this aim:
- Right click on “Example.di2”&gt; in the menu, select “Convert
- Diagram”&gt;then, “Di2 to Di Action”, as shown in Figure 3.
-</ul>
-
-<center>
- <img src="figs/conversion-example-di2action.png"><br>
- Convert Your Model
-</center>
-
-<ul>
-<li>After processing, a new model is created, compatible with Papyrus MDT.
- Indeed, the conversion creates from the di2 file (i.e., Example.di2)
- two new files, namely, “Example.notation” and “Example.di”.
- The uml file (i.e., Example.uml) is used to make reference to the
- uml graphical elements. At the end of the conversion a message
- dialog is opened to inform you of the success or the failure of your
- conversion.
-</ul>
-
-<center>
- <img src="figs/conversion-example-result.png"><br>
- Conversion result
-</center>
-
-<ul>
-<li>Open the generated di file (i.e., Example.di) to show and edit your
- model.
-</ul>
-
-<h2>Internal Process of the conversion</h2>
-
-This process is performed transparently to user, however, this brief description aims
-to provide global overview of the internal process
-
-<h3>1st Step</h3>
-As mentioned in the step2, the diagram
-converter requires the di2 namespace to be uniquely defined. To this
-aim as a first step of the internal process, the converter changed
-the namespace in the di2 file from “<a href="http://www.papyrusuml.org">http://www.papyrusuml.org</a>” to
-“<a href="http://www.papyrusuml.org/di2">http://www.papyrusuml.org/di2</a>”.
-
-
-This step is meant to be transparent to the user, as the converter
-restores the di2 namespace to “<a href="http://www.papyrusuml.org">http://www.papyrusuml.org</a>”
-at the end of the conversion, in order to make your diagram editable
-by Papyrus 1.x. However,
-if the conversion fails before restoring the original name space, the
-old-version model may be no more editable by Papyrus 1.x. Hence, the
-user may need to restore it manually by editing the di2 file using a
-text editor, and removing the “/di2” from the namespace
-<a href="http://www.papyrusuml.org/di2">http://www.papyrusuml.org/di2</a>.
-
-<h3>2nd Step</h3>
-
-As a second step, the converter transforms elements described in the di2
-file into elements in the notation and di files according to their
-respective metamodels.
-
-The di file contains references to the different diagrams in your model.
-The notation file contains a specific description of the elements
-that are represented graphically in each diagram: size, coordinates,
-nested elements, and so on.
-To perform this step, the converter performed a set of QVT
-(Query/View/Transform) Operation mappings.
-
-<h3>3rd Step</h3>
-
-Finally, the converter stores the result of the transformation in to two files,
-namely, notation and di file, and restores the di2 namespace to
-“<a href="http://www.papyrusuml.org">http://www.papyrusuml.org</a>”.
-
-<h2 id="samples">Supported Conversions</h2>
-
-Herein, we present two sample conversions and outline the elements supported by the converter. We start
-first with the class diagram and then, we detail the transformations in the composite diagram.
-
-<h3>Class Diagram</h3>
-
-Tests have been done with class diagrams containing
-<ul>
-<li>Simple classes
-<li>Class with operations and attributes
-<li>Comments
-<li>Relationships between classes
- <ul>
- <li>Dependency
- <li>Association
- <li>Link with a comment
- <li>Realization
- <li>Generalization
- </ul>
-</ul>
-
-The screenshots have been taken with an older version that did not copy color attributes. These are now handled.
-
-<center>
- <img src="figs/example1-class-diagram-p1.12.png"><br>
- Class diagram in Papyrus 1.12 (original)
- <p>
- <img src="figs/example1-class-diagram-mdt.png"><br>
- Class diagram in Papyrus MDT (conversion result)
-</center>
-
-<h3>Composite Diagram</h3>
-
-Tests have been done with composite diagrams containing
-
-<ul>
- <li>Composite classes
- <li>Properties within composite classes
- <li>Nested classes
- <li>Ports
- <li>Connection between ports: connector
-</ul>
-
-<center>
- <img src="figs/example-composite-diag-p1.12.png"><br>
- Composite diagram in Papyrus 1.12 (original)
- <p>
- <img src="figs/example-composite-diag-mdt.png"><br>
- Composite diagram in Papyrus MDT (conversion result)
-</center>
-
-<h1 id="devGuide">Developer guide</h1>
-
-To convert models from Papyrus 1.x to Papyrus MDT, this plugin uses Q/V/T operational mappings.
-The plugin contains additional Java code, it is divided into three parts:
-<ul>
- <li>Model Transformation libraries implemented in QVTO
- <li>Black Boxes implemented in Java and used by the model transformations
- <li>Java code that is used to call the model transformations and extend the eclipse
- context menu with the conversion action, i.e., "Convert Diagram".
-</ul>
-
-The main part of the plugin is the model transformation, which includes
-<ul>
-<li>General libraries:
- <ul>
- <li>ElementType.qvto: names of diagrams in Papyrus 1.12 and MDT.
- <li>GeneralMappingsandHelpers.qvto: collection of utilities
- <li>NotationQueries.qvto
- includes all the queries that are made to the di2 model in order to
- be used in the notation model.
- <li>Diagram.qvto: convert the supported diagrams, make use of diagram specific
- libraries below.
- <li>DiTansformation.qvto
- enable to create the elements of the di model from the di2 model.
- </ul>
-
-<li>Diagram specific libraries, prefixed with name of diagram, i.e. &lt;Class&gt;, &lt;Composite&gt;, &lt;State&gt;,
- &lt;Profile&gt; and &lt;ClassAndProfile&gt; (the letter is a particular case for edges in class and profile
- diagrams which have identical IDs in these two diagram types)
- <ul>
- <li>DiagEdge.qvto
- that converts all sorts of edges (realization, dependency,
- generalization, and so on).
- <li>DiagNodes.qvto that converts the node elements of a diagram
- </ul>
-<li>The main transformation
- <ul>
- <li>Transfo.qvto, which triggers the model transformation.
- </ul>
-</ul>
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-di2action.png b/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-di2action.png
deleted file mode 100644
index 1e1d021..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-di2action.png
+++ /dev/null
Binary files differ
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-project.png b/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-project.png
deleted file mode 100644
index 5c11cc1..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-project.png
+++ /dev/null
Binary files differ
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-result.png b/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-result.png
deleted file mode 100644
index fe3a0e9..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/conversion-example-result.png
+++ /dev/null
Binary files differ
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example-composite-diag-mdt.png b/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example-composite-diag-mdt.png
deleted file mode 100644
index ae6b496..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example-composite-diag-mdt.png
+++ /dev/null
Binary files differ
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example-composite-diag-p1.12.png b/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example-composite-diag-p1.12.png
deleted file mode 100644
index 0a61e8d..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example-composite-diag-p1.12.png
+++ /dev/null
Binary files differ
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example1-class-diagram-mdt.png b/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example1-class-diagram-mdt.png
deleted file mode 100644
index 531381a..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example1-class-diagram-mdt.png
+++ /dev/null
Binary files differ
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example1-class-diagram-p1.12.png b/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example1-class-diagram-p1.12.png
deleted file mode 100644
index 726a558..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example1-class-diagram-p1.12.png
+++ /dev/null
Binary files differ
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example2-class-diagram-mdt.png b/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example2-class-diagram-mdt.png
deleted file mode 100644
index c811252..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example2-class-diagram-mdt.png
+++ /dev/null
Binary files differ
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example2-class-diagram-p1.12.png b/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example2-class-diagram-p1.12.png
deleted file mode 100644
index 8a9e3e5..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/doc/figs/example2-class-diagram-p1.12.png
+++ /dev/null
Binary files differ
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/plugin.properties b/deprecated/org.eclipse.papyrus.conversion.di2todi/plugin.properties
deleted file mode 100644
index 1803ba8..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/plugin.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-#################################################################################
-# Copyright (c) 2011 CEA LIST.
-# 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
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# Manel Fredj, Ansgar Radermacher - Initial API and implementation
-##################################################################################
-pluginName=di2 to di conversion (Papyrus 1.x to Papyrus MDT)
-providerName=Eclipse Modeling Project
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/plugin.xml b/deprecated/org.eclipse.papyrus.conversion.di2todi/plugin.xml
deleted file mode 100644
index 484692c..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/plugin.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.4"?>
-<plugin>
- <extension
- point="org.eclipse.m2m.qvt.oml.javaBlackboxUnits">
- <unit
- name="ConverterLibs" namespace="Converter.Utils">
- <library
- name="ConvertLib"
- class="org.eclipse.papyrus.conversion.di2todi.blackboxes.UtilitiesLibrary">
- <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore"/>
- <metamodel nsURI="http://www.eclipse.org/uml2/2.1.0/UML"/>
- <metamodel nsURI="http://www.papyrusuml.org/di2"/>
- <metamodel nsURI="http://www.eclipse.org/gmf/runtime/1.0.2/notation"/>
- </library>
- </unit>
- </extension>
- <extension
- point="org.eclipse.m2m.qvt.oml.runtime.qvtTransformation">
- <library
- file="TransfoQvtoDi2toDi/"
- id="org.eclipse.papyrus.conversion.di2todi.library1">
- </library>
- </extension>
-
- <extension
- point="org.eclipse.ui.popupMenus">
- <objectContribution
- objectClass="org.eclipse.core.resources.IFile"
- id="org.eclipse.papyrus.conversion.di2todi.contribution">
- <menu
- label="Convert Diagram"
- path="additions"
- id="org.eclipse.papyrus.conversion.di2todi.menu">
- <separator
- name="group1">
- </separator>
- </menu>
- <action
- label="Di2 to Di action"
- class="org.eclipse.papyrus.conversion.di2todi.popupactions.Di2toDiAction"
- menubarPath="org.eclipse.papyrus.conversion.di2todi.menu/group"
- enablesFor="1"
- id="org.eclipse.papyrus.conversion.di2todi.action">
- </action>
- </objectContribution>
- </extension>
-
- <extension point="org.eclipse.help.toc">
- <toc file="toc.xml" primary="false"/>
- </extension>
- <extension point="org.eclipse.help.toc">
- <toc file="tocdev.xml" primary="false"/>
- </extension>
-</plugin>
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/Activator.java b/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/Activator.java
deleted file mode 100644
index c660b3c..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/Activator.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package org.eclipse.papyrus.conversion.di2todi;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-
-/**
- * The activator class controls the plug-in life cycle
- */
-public class Activator extends AbstractUIPlugin {
-
- // The plug-in ID
- public static final String PLUGIN_ID = "org.eclipse.papyrus.conversion.di2todi"; //$NON-NLS-1$
-
- // The shared instance
- private static Activator plugin;
-
- /**
- * The constructor
- */
- public Activator() {
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
- */
- public void start(BundleContext context) throws Exception {
- super.start(context);
- plugin = this;
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
- */
- public void stop(BundleContext context) throws Exception {
- plugin = null;
- super.stop(context);
- }
-
- /**
- * Returns the shared instance
- *
- * @return the shared instance
- */
- public static Activator getDefault() {
- return plugin;
- }
-
- /**
- * Returns an image descriptor for the image file at the given
- * plug-in relative path
- *
- * @param path the path
- * @return the image descriptor
- */
- public static ImageDescriptor getImageDescriptor(String path) {
- return imageDescriptorFromPlugin(PLUGIN_ID, path);
- }
-}
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/blackboxes/UtilitiesLibrary.java b/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/blackboxes/UtilitiesLibrary.java
deleted file mode 100644
index 9138b04..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/blackboxes/UtilitiesLibrary.java
+++ /dev/null
@@ -1,236 +0,0 @@
-/**
- * @author: Manel Fredj - CEA
- * This class includes all the operations that are called in the transformation QVTO from java.
- * These operations are wrapped into a black-box
- */
-
-package org.eclipse.papyrus.conversion.di2todi.blackboxes;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.gmf.runtime.notation.Diagram;
-import org.eclipse.gmf.runtime.notation.NotationFactory;
-import org.eclipse.gmf.runtime.notation.RelativeBendpoints;
-import org.eclipse.gmf.runtime.notation.datatype.RelativeBendpoint;
-import org.eclipse.m2m.qvt.oml.blackbox.java.Operation;
-import org.eclipse.papyrus.conversion.di2.GraphElement;
-import org.eclipse.papyrus.conversion.di2.SemanticModelBridge;
-import org.eclipse.papyrus.conversion.di2.Uml1SemanticModelBridge;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.uml2.uml.Association;
-import org.eclipse.uml2.uml.Dependency;
-import org.eclipse.uml2.uml.Element;
-import org.eclipse.uml2.uml.ElementImport;
-import org.eclipse.uml2.uml.Generalization;
-import org.eclipse.uml2.uml.Realization;
-
-public class UtilitiesLibrary {
-
- @Operation(contextual=true)
- public static String getName(Diagram self)
- {
- return self.getName();
- }
-
- @Operation(contextual=true)
- public static EObject convertElement(Element self)
- {
- return self;
- }
-
- @Operation(contextual=true)
- public static String getElementType(Element self)
- {
- if (self instanceof Association )
- return "Association";
- if (self instanceof Generalization )
- return "Generalization";
- else return null;
- }
-
- @Operation(contextual=true)
- public static boolean isGeneralization(Element self)
- {
- if (self instanceof Generalization)
- return true;
- else return false;
- }
-
-
- @Operation(contextual=true)
- public static boolean isAssociation(Element self)
- {
- if (self instanceof Association)
- return true;
- else
- return false;
- }
-
- @Operation(contextual=true)
- public static boolean isRealization(Element self)
- {
- if (self instanceof Realization)
- return true;
- else
- return false;
- }
- @Operation(contextual=true)
- public static boolean isDependency(Element self)
- {
- if (self instanceof Dependency)
- return true;
- else
- return false;
- }
-
- @Operation(contextual=true)
- public static int dimensionGetWidth(Dimension self)
- {
- if (self!=null)
- return self.width;
- else
- return 0;
- }
-
- @Operation(contextual=true)
- public static int dimensionGetHeight(Dimension self)
- {
- if (self!=null)
- return self.height;
- else
- return 0;
- }
-
- @Operation(contextual=true)
- public static int pointGetX(Point self)
- {
- if (self!=null)
- {
-
- return self.x;
- }else
- return 0;
- }
-
- @Operation(contextual=true)
- public static int pointGetY(Point self)
- {
- if (self!=null)
- {
- return self.y;
- }
- else
- return 0;
- }
-
- @Operation(contextual=true)
- public static String showcoordinates(Point self)
- {
- if (self!=null)
- {
- return "the x is "+ self.x+ "and the y is "+ self.y;
- }
- else
- return "nothing to display";
- }
-
- @Operation(contextual=true)
- public static int rgb2int(RGB self)
- {
- if (self!=null)
- return self.blue * 0x10000 + self.green *0x100 + self.red;
- else
- return 0;
- }
-
- @Operation(contextual=true)
- public static Element getElement(Uml1SemanticModelBridge bridge) {
- // difference to using element attribute directly: getElement will try to resolve proxies
- // and thus detects elements referenced by the di2 model that do not exist (anymore) in the
- // uml model
- Element element = bridge.getElement();
- if ((element != null) && element.eIsProxy()) {
- // is still proxy (the getElement implementation of Uml1SemanticModelBridge already tried to
- // resolve) => return null
- return null;
- }
- else {
- return element;
- }
- }
-
- /**
- * Return the semantic model for a given di2 element
- * @param di2Element existing di2 element
- * @return the associated semantic model or null
- */
- @Operation(contextual=true)
- public static Uml1SemanticModelBridge getSemanticModel(GraphElement di2Element) {
- SemanticModelBridge semanticModel;
- if (di2Element instanceof org.eclipse.papyrus.conversion.di2.Diagram) {
- semanticModel =((org.eclipse.papyrus.conversion.di2.Diagram) di2Element).getOwner();
- }
- else {
- semanticModel = di2Element.getSemanticModel();
- }
- if (semanticModel instanceof Uml1SemanticModelBridge) {
- return (Uml1SemanticModelBridge) semanticModel;
- }
- return null;
- }
-
- @Operation(contextual=true)
- public static Element getElement(GraphElement di2Element) {
-
- Uml1SemanticModelBridge semanticModel = getSemanticModel(di2Element);
- if (semanticModel != null) {
- return getElement (semanticModel);
- }
- else {
- System.err.println("no bridge found for di2Node" + di2Element);
- }
- return null;
- }
-
- // may be useful for debugging (use it instead of getElement in combination with a breakpoint)
- @Operation(contextual=true)
- public static Element getElementDebug(GraphElement di2Element) {
-
- Element element = getElement(di2Element);
- return element;
- }
-
- /**
- * Papyrus 1 profile diagrams do not reference meta-class elements directly, but the
- * associated element imported
- * @param bridge
- * @return
- */
- @Operation(contextual=true)
- public static Element getMetaclassRef(Uml1SemanticModelBridge semanticModel) {
- Element element = getElement (semanticModel);
- if (element != null) {
- if (element instanceof ElementImport) {
- return ((ElementImport) element).getImportedElement();
- }
- }
- else {
- System.err.println("no element found");
- }
- return element;
- }
-
- public Object createBendpoints()
- {
- RelativeBendpoints bendpoints = NotationFactory.eINSTANCE.createRelativeBendpoints();
- List<RelativeBendpoint> points = new ArrayList<RelativeBendpoint>(2);
- points.add(new RelativeBendpoint(0,0,0,0));
- points.add(new RelativeBendpoint(0,0,0,0));
- bendpoints.setPoints(points);
- return bendpoints;
- }
-} \ No newline at end of file
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/popupactions/Di2toDiAction.java b/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/popupactions/Di2toDiAction.java
deleted file mode 100644
index 2c0729c..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/popupactions/Di2toDiAction.java
+++ /dev/null
@@ -1,253 +0,0 @@
-/**
- * @author: Manel Fredj - CEA
- * This class invoke QVTO transformations that convert a diagram from di2 into di+notation
- */
-
-package org.eclipse.papyrus.conversion.di2todi.popupactions;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.URIConverter;
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.m2m.internal.qvt.oml.ast.env.ModelExtentContents;
-import org.eclipse.m2m.internal.qvt.oml.common.MdaException;
-import org.eclipse.m2m.internal.qvt.oml.emf.util.ModelContent;
-import org.eclipse.m2m.internal.qvt.oml.library.Context;
-import org.eclipse.m2m.internal.qvt.oml.runtime.generator.TransformationRunner;
-import org.eclipse.m2m.internal.qvt.oml.runtime.generator.TransformationRunner.In;
-import org.eclipse.m2m.internal.qvt.oml.runtime.generator.TransformationRunner.Out;
-import org.eclipse.m2m.internal.qvt.oml.runtime.project.QvtInterpretedTransformation;
-import org.eclipse.m2m.internal.qvt.oml.runtime.project.TransformationUtil;
-import org.eclipse.m2m.internal.qvt.oml.trace.Trace;
-import org.eclipse.m2m.internal.qvt.oml.trace.TraceRecord;
-import org.eclipse.m2m.qvt.oml.util.IContext;
-import org.eclipse.papyrus.conversion.di2.util.Di2AdapterFactory;
-import org.eclipse.papyrus.conversion.di2todi.Activator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IActionDelegate;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-
-
-@SuppressWarnings("restriction")
-public class Di2toDiAction implements IObjectActionDelegate {
-
- private static final Map<?, ?> options = null;
- private IPath inModelPath; //reference to selected Model
- private String inAbsolutepath;
-
- /**
- * Constructor for Action1.
- */
- public Di2toDiAction() {
- super();
- inModelPath=null;
- inAbsolutepath=null;
- }
-
- /**
- * @see IObjectActionDelegate#setActivePart(IAction, IWorkbenchPart)
- */
- public void setActivePart(IAction action, IWorkbenchPart targetPart) {
- }
-
- /**
- * @see IActionDelegate#run(IAction)
- */
- public void run(IAction action) {
- if (adapterFactory == null) {
- // dummy operation to force loading/initialization of di2 plugin
- adapterFactory = new Di2AdapterFactory();
- }
- // Refer to an existing transformation via URI
- final URI transformationURI =
- URI.createURI("platform:/plugin/" + Activator.PLUGIN_ID + "/TransfoQvtoDi2toDi/Transfo.qvto");
-
- //get the resources from the input URI
- final ResourceSet resourceSet = new ResourceSetImpl();
- Job job = new Job("Convert diagram " + inModelPath.toString()) {
- @Override
- protected IStatus run(IProgressMonitor monitor) {
- // execute the task ...
-
- try {
- monitor.beginTask("converting ...", 4);
-
- URI inURI = URI.createPlatformResourceURI(inModelPath.toString(), true);
- Resource inResource = resourceSet.getResource(inURI, true);
- // create the inputs
- List<EObject> inObjects =inResource.getContents();
- ModelContent input_di2 = new ModelContent (inObjects);
- ModelContent[] inputs = new ModelContent[1];
- inputs[0]=input_di2;
-
- // setup the execution environment details -> context
- IContext mycontext = new Context();
- Trace trace= null;
-
- QvtInterpretedTransformation transformation = new QvtInterpretedTransformation (TransformationUtil.getQvtModule(transformationURI));
- In IntransformationRunner=new TransformationRunner.In(inputs, mycontext);
- Out OuttransformationRunner=new TransformationRunner.Out(null,null, null);
-
- monitor.worked(1);
- // running the transformation
- OuttransformationRunner=transformation.run(IntransformationRunner);
-
- // retrieve the outputs
- List<ModelExtentContents> outputs= OuttransformationRunner.getExtents();
-
- // retrieve the trace
- trace= OuttransformationRunner.getTrace();
-
- if (trace !=null && outputs.size()==2) {
- // processing the trace
- URI Uri_trace = inURI.trimFileExtension().appendFileExtension("trace");
- EList<TraceRecord> outObjects_trace = trace.getTraceRecords();
- Resource outResource_trace = resourceSet.createResource(Uri_trace);
- outResource_trace.getContents().addAll(outObjects_trace);
-
- // processing the outputs
- ModelExtentContents output_notation = outputs.get(0);
- ModelExtentContents output_di = outputs.get(1);
- monitor.worked(1);
-
- URI Uri_notation = inURI.trimFileExtension().appendFileExtension("notation");
- URI Uri_di = inURI.trimFileExtension().appendFileExtension("di");
-
- // the output objects got captured in the output extent
- List<EObject> outObjects_notation = output_notation.getAllRootElements();
- List<EObject> outObjects_di = output_di.getAllRootElements();
-
- //Let's persist them using a resource for notation
- Resource outResource_notation = resourceSet.createResource(Uri_notation );
- outResource_notation.getContents().addAll(outObjects_notation);
-
- // let's persist them using a resource for di
- Resource outResource_di = resourceSet.createResource(Uri_di);
- outResource_di.getContents().addAll(outObjects_di);
-
- monitor.worked(1);
-
- try{
- outResource_notation.save(Collections.emptyMap());
- outResource_di.save(Collections.emptyMap());
- outResource_trace.save(Collections.emptyMap());
- }
- catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- monitor.worked(1);
-
- // remove trace file
- URIConverter uri= resourceSet.getURIConverter();
- uri.delete(Uri_trace, options);
- }
- }
- catch (final MdaException e) {
- Display.getDefault().syncExec(new Runnable() {
- public void run() {
- MessageDialog.openError(
- new Shell(), "Model transformation error during conversion", e.toString ());
- }
- });
- e.printStackTrace();
- }
- catch (final IOException e) {
- Display.getDefault().syncExec(new Runnable() {
- public void run() {
- MessageDialog.openError(
- new Shell(), "IO error during conversion", e.toString ());
- }
- });
- e.printStackTrace();
- }
- catch (final RuntimeException e) {
- Display.getDefault().syncExec(new Runnable() {
- public void run() {
- MessageDialog.openError(
- new Shell(), "Error during conversion", e.toString ());
- }
- });
- e.printStackTrace ();
- }
- finally {
- // when the transformation succeeds
- //1- restore the content of Di2 file i.e., di2 namespace
- PapyrusNamespace.restoreDi2Namespace(inAbsolutepath);
- }
-
- monitor.done();
- return Status.OK_STATUS;
- }
- };
- job.setUser (true);
- job.schedule ();
- }
-
- /**
- * @see IActionDelegate#selectionChanged(IAction, ISelection)
- */
- public void selectionChanged(IAction action, ISelection selection)
- {
- this.inModelPath = null;
-
- if (!(selection instanceof IStructuredSelection)) {
- // no structured-selection
- return;
- }
- IStructuredSelection structuredSelection = (IStructuredSelection) selection;
- if (selection.isEmpty()) {
- return;
- }
-
- Object firstElement = structuredSelection.getFirstElement();
-
- if (firstElement instanceof IFile) {
-
- IFile di2Select = (IFile) firstElement;
- // retrieve the path of the file
- IPath di2Path = di2Select.getFullPath();
- IPath location = di2Select.getLocation();
- if (location != null) {
- // Get the file for the location
- File file = location.toFile();
- if (file != null) {
- // Add the absolute path to the list
- this.inAbsolutepath = file.getAbsolutePath();
- }
-
- // check whether it is a .di2 file
- String di2filename = di2Path.toString();
- if (di2filename.endsWith (".di2")) {
- // change namespace of di2
- PapyrusNamespace.replaceNamespace(this.inAbsolutepath);
- this.inModelPath = di2Path;
- }
- }
- }
- }
-
- Di2AdapterFactory adapterFactory = null;
-}
-
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/popupactions/PapyrusNamespace.java b/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/popupactions/PapyrusNamespace.java
deleted file mode 100644
index 5a17df6..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/src/org/eclipse/papyrus/conversion/di2todi/popupactions/PapyrusNamespace.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/**
- * @author: Manel Fredj - CEA
- * This class enables to change the namespace of di2 metamodel from
- * replace http://www.papyrusuml.org into http://www.papyrusuml.org/di2
- */
-
-package org.eclipse.papyrus.conversion.di2todi.popupactions;
-
-import java.io.BufferedInputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileWriter;
-import java.io.IOException;
-
-public class PapyrusNamespace
-{
- /////////////////////////////////////////////////////////////////////////////////////////////
- //replace http://www.papyrusuml.org -- by -- http://www.papyrusuml.org/di2
-
- public static void replaceNamespace(String absolutepath)
- {
- try {
- String oldNameSpace = "di2=\"http://www.papyrusuml.org\"";
- String newNameSpace="di2=\"http://www.papyrusuml.org/di2\"";
- String oldtext =readFileAsString(absolutepath);
- // replace the namespace in the di2 file
- String newtext = oldtext.replaceAll (oldNameSpace, newNameSpace);
-
- FileWriter writer = new FileWriter(absolutepath);
- writer.write(newtext);writer.close();
- }
- catch (IOException ioe) {
- ioe.printStackTrace();
- }
- }
-
- public static void restoreDi2Namespace(String absolutepath)
- {
- try {
- String oldNameSpace="di2=\"http://www.papyrusuml.org/di2\"";
- String newNameSpace = "di2=\"http://www.papyrusuml.org\"";
-
- String oldtext =readFileAsString(absolutepath);
- // replace the namespace in the di2 file
- String newtext = oldtext.replaceAll (oldNameSpace, newNameSpace);
-
- FileWriter writer = new FileWriter(absolutepath);
- writer.write(newtext);writer.close();
- }
- catch (IOException ioe) {
- ioe.printStackTrace();
- }
- }
-
- /**
- * @param filePath the name of the file to open. Not sure if it can accept
- * cccURLs or just filenames. Path handling could be better, and buffer
- * sizes are hardcoded
- */
- private static String readFileAsString (String filePath)
- throws java.io.IOException
- {
- byte[] buffer = new byte[(int) new File(filePath).length()];
- BufferedInputStream f = null;
- try {
- f = new BufferedInputStream(new FileInputStream(filePath));
- f.read(buffer);
- }
- finally {
- if (f != null) {
- try {
- f.close();
- }
- catch (IOException ignored) {
- }
- }
- }
- return new String(buffer);
- }
-}
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/toc.xml b/deprecated/org.eclipse.papyrus.conversion.di2todi/toc.xml
deleted file mode 100644
index 3057fc2..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/toc.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?NLS TYPE="org.eclipse.help.toc"?>
-
-<toc link_to="../org.eclipse.papyrus.doc/toc.xml#PapyrusDocUser" label="Papyrus 1.12 to Papyrus MDT diagram conversion" >
- <topic label="Papyrus 1.12 to Papyrus MDT diagram conversion">
- <topic label="Convert diagrams" href="doc/TutorialConversion.html#gettingStarted"/>
- <topic label="Sample conversion results" href="doc/TutorialConversion.html#samples"/>
- </topic>
-</toc>
-
diff --git a/deprecated/org.eclipse.papyrus.conversion.di2todi/tocdev.xml b/deprecated/org.eclipse.papyrus.conversion.di2todi/tocdev.xml
deleted file mode 100644
index 5300915..0000000
--- a/deprecated/org.eclipse.papyrus.conversion.di2todi/tocdev.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?NLS TYPE="org.eclipse.help.toc"?>
-
-<toc link_to="../org.eclipse.papyrus.doc/toc.xml#PapyrusDocDev" label="Papyrus 1.12 to Papyrus MDT diagram conversion" >
- <topic label="Diagram conversion from Papyrus 1.12" href="doc/TutorialConversion.html#devGuide"/>
-</toc>
-