Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaged Elaasar2017-02-21 03:19:48 -0500
committerFlorian Noyrit2017-03-13 12:19:06 -0400
commit7a1e61e4203fcf468a2635b80dd94182a95b588b (patch)
tree804451f2f230c2cb1a4b07815f4ccd2dc1edcf52 /plugins/sysml
parentcb10068854ce727bc5004e997663ae0a3ae2ffd6 (diff)
downloadorg.eclipse.papyrus-7a1e61e4203fcf468a2635b80dd94182a95b588b.tar.gz
org.eclipse.papyrus-7a1e61e4203fcf468a2635b80dd94182a95b588b.tar.xz
org.eclipse.papyrus-7a1e61e4203fcf468a2635b80dd94182a95b588b.zip
Bug 510451 - Reimplement the ISO42010 specification to properly support
architectural contexts and viewpoints Replaced the viewpoint configuration framework by a new architectural context/viewpoint framework. This involves defining architecture contexts and viewpoints in models and contributing them via extension points or via the preferences. Models reference an architecture context and a set of viewpoints at creation time, but can be switched later. Architecture contexts double as client contexts for which elementtypesetconfigurations can be registered. They also define viewpoints, which reference representation kinds (diagrams or tables). This contribution defines three architecture contexts: UML, Profile, and SysML corresponding to what Papyrus used to call diagram categories. Change-Id: I203b58d9e97afdffc45c2674683c0281eb8a7c5b Signed-off-by: Maged Elaasar <melaasar@gmail.com>
Diffstat (limited to 'plugins/sysml')
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.classpath7
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.project28
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/META-INF/MANIFEST.MF36
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/about.html28
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/build.properties6
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/icons/sysml.gifbin0 -> 992 bytes
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/model/sysml.architecture182
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/plugin.properties14
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/plugin.xml65
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/pom.xml13
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/SysMLArchitectureContextIds.java26
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/internal/NoContextEnablementMatcher.java29
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/migration/SysMLDiagramReconciler_1_3_0.java90
-rw-r--r--plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/migration/SysMLTableReconciler_1_3_0.java113
-rw-r--r--plugins/sysml/architecture/pom.xml17
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/model/BlockDefinitionDiagram.configuration27
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/plugin.xml20
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/plugin.xml5
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintLabelParser.java5
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/NamedElementLabelParser.java5
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/commands/CreateSysMLModelCommand.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/model/InternalBlockDiagram.configuration26
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/plugin.xml26
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src-gen/org/eclipse/papyrus/sysml/diagram/internalblock/InternalBlockDiagramCreateCommand.java4
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src/org/eclipse/papyrus/sysml/diagram/internalblock/utils/TypeDropHelper.java616
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/model/ParametricDiagram.configuration58
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/plugin.xml32
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/src-gen/org/eclipse/papyrus/sysml/diagram/parametric/ParametricDiagramCreateCommand.java6
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.requirement/model/Requirement.configuration18
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.requirement/plugin.xml19
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/META-INF/MANIFEST.MF3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/src/org/eclipse/papyrus/sysml/diagram/ui/NewSysMLModelWizard.java160
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/src/org/eclipse/papyrus/sysml/diagram/ui/NewSysMLProjectWizard.java158
-rw-r--r--plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.allocation.config/plugin.xml8
-rw-r--r--plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.allocation.config/resources/allocationTable.configuration17
-rw-r--r--plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.requirement.config/configs/requirementTable.configuration21
-rw-r--r--plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.requirement.config/plugin.xml7
-rw-r--r--plugins/sysml/org.eclipse.papyrus.sysml.service.types/plugin.xml56
-rw-r--r--plugins/sysml/pom.xml1
40 files changed, 1182 insertions, 779 deletions
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.classpath b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.classpath
new file mode 100644
index 00000000000..eca7bdba8f0
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.classpath
@@ -0,0 +1,7 @@
+<?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/JavaSE-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.project b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.project
new file mode 100644
index 00000000000..58a640e2fd6
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.sysml.architecture</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>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.settings/org.eclipse.jdt.core.prefs b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..0c68a61dca8
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/META-INF/MANIFEST.MF b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..c4eef3d9e52
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/META-INF/MANIFEST.MF
@@ -0,0 +1,36 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.sysml.architecture;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Require-Bundle: org.eclipse.papyrus.uml.service.types;bundle-version="3.0.0",
+ org.eclipse.papyrus.infra.nattable.common;bundle-version="3.0.0",
+ org.eclipse.papyrus.uml.architecture;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.papyrus.infra.emf;bundle-version="[2.2.0,3.0.0)",
+ org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.nattable;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.nattable.common;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.services.controlmode;bundle-version="[1.5.0,2.0.0)",
+ org.eclipse.papyrus.infra.services.edit;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.infra.types.rulebased;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.diagram.activity;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.diagram.clazz;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.diagram.communication;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.diagram.composite;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.diagram.interactionoverview;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.diagram.sequence;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.diagram.statemachine;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.diagram.stereotype.edition;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.uml.diagram.timing;bundle-version="[1.2.0,2.0.0)",
+ org.eclipse.papyrus.uml.service.types;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.service.types.ui;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.sysml.diagram.blockdefinition;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.sysml.diagram.internalblock;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.sysml.diagram.parametric;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.sysml.diagram.requirement;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.sysml.nattable.allocation.config;bundle-version="[1.2.0,2.0.0)",
+ org.eclipse.papyrus.sysml.nattable.requirement.config;bundle-version="[1.2.0,2.0.0)"
+Export-Package: org.eclipse.papyrus.sysml.architecture
+Bundle-Vendor: %providerName
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/about.html b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/about.html
new file mode 100644
index 00000000000..bbf2bd6aac7
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>January 30, 2017</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/build.properties b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/build.properties
new file mode 100644
index 00000000000..0dc34f7833b
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/build.properties
@@ -0,0 +1,6 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ plugin.properties
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/icons/sysml.gif b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/icons/sysml.gif
new file mode 100644
index 00000000000..08760707586
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/icons/sysml.gif
Binary files differ
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/model/sysml.architecture b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/model/sysml.architecture
new file mode 100644
index 00000000000..c7045f9397b
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/model/sysml.architecture
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDomain xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" xmlns:gmfdiagrepresentation="http://www.eclipse.org/papyrus/infra/gmfdiag/representation" xmlns:nattablerepresentation="http://www.eclipse.org/papyrus/infra/nattable/representation" xmi:id="_yMTQcMSdEeaKZJ_pGfaSiA" name="Systems Engineering" desciption="The domain of developing software systems">
+ <stakeholders xmi:id="_yMTQccSdEeaKZJ_pGfaSiA" name="Systems Engineer" desciption="An engineer interested in system development">
+ <concerns href="#_yMTQcsSdEeaKZJ_pGfaSiA"/>
+ <concerns href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_HQhf4sSYEeaKZJ_pGfaSiA"/>
+ <concerns href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_HQhf48SYEeaKZJ_pGfaSiA"/>
+ <concerns href="#_yMTQc8SdEeaKZJ_pGfaSiA"/>
+ <concerns href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_HQhf5MSYEeaKZJ_pGfaSiA"/>
+ </stakeholders>
+ <concerns xmi:id="_yMTQcsSdEeaKZJ_pGfaSiA" name="Requirements" desciption="The concern of developing the system's requirements"/>
+ <concerns xmi:id="_yMTQc8SdEeaKZJ_pGfaSiA" name="Parametrics" desciption="The concern of developing the system's parametrics"/>
+ <contexts xsi:type="architecture:ArchitectureDescriptionLanguage" xmi:id="_yMTQdMSdEeaKZJ_pGfaSiA" name="SysML" desciption="The Systems Modeling Language" id="org.eclipse.papyrus.sysml.architecture.SysML" icon="platform:/plugin/org.eclipse.papyrus.sysml.architecture/icons/sysml.gif" creationCommandClass="org.eclipse.papyrus.sysml.diagram.common.commands.CreateSysMLModelCommand">
+ <viewpoints xmi:id="_M5u1AMShEeaKZJ_pGfaSiA" name="Systems Analysis" desciption="A viewpoint allowing systems analysis with SysML" id="org.eclipse.papyrus.sysml.analysis">
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="#_iBC4gHDvEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="nattablerepresentation:PapyrusSyncTable" href="#_lTE0gHDwEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_yeY0sHDvEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="#_m2D8IHDuEeWh-MssWmCB_A"/>
+ </viewpoints>
+ <viewpoints xmi:id="_PAtvoMShEeaKZJ_pGfaSiA" name="Systems Design" desciption="A viewpoint allowing systems design with SysML" id="org.eclipse.papyrus.sysml.design">
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="#_m2D8IHDuEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="#_eHbioHDvEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="#_eHbipHDvEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="#_eHbirXDvEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_UzcgsHDtEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_FuMjYHDuEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="#_M-Q3sHDuEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_zzf4cXDtEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_TR15IHDvEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_PwD0cHDvEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="nattablerepresentation:PapyrusSyncTable" href="#_r5y7wHDuEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="nattablerepresentation:PapyrusSyncTable" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_Uz8agHDuEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="nattablerepresentation:PapyrusSyncTable" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_wXztQHDwEeWh-MssWmCB_A"/>
+ <representationKinds xsi:type="nattablerepresentation:PapyrusSyncTable" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_P3J1cEr7EeSVGbM3cmVSqQ"/>
+ <representationKinds xsi:type="nattablerepresentation:PapyrusSyncTable" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_P3J1cEr7EeSVGbM3cmVSqQ"/>
+ <representationKinds xsi:type="nattablerepresentation:PapyrusSyncTable" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_WC1q0P4UEeSRsNBVzfUrzA"/>
+ </viewpoints>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.infra.emf/model/infra-emf.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.infra.gmfdiag.common/model/gmfdiag-common.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.infra.gmfdiag.common/model/notation.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.infra.nattable/model/nattable-tablecontents.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.infra.nattable/model/nattable-tablecontext.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.infra.nattable.common/model/nattable-common.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.infra.services.controlmode/model/controlmode.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.infra.services.edit/model/marker.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.infra.types.rulebased/model/rulebased.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.diagram.activity/model/activityDiagram.elementtypesconfigurations#_x8G0YGaNEeSyJIsxLao1Pw"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.diagram.clazz/model/classdiagram.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.diagram.communication/model/communicationdiagram-uml.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.diagram.composite/model/compositediagram.elementtypesconfigurations#_tL86sLazEeSbnofizoRSMQ"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.diagram.interactionoverview/model/interactionOverviewDiagram.elementtypesconfigurations#_x8G0YGaNEeSyJIsxLao1Pw"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.diagram.sequence/model/sequencediagram-uml.elementtypesconfigurations#_BJMa0PyeEeWbo9Y7g2MLdw"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.diagram.statemachine/model/stateMachineDiagram.elementtypesconfigurations#_wYwtMMeDEeSwP_9Vn5UnWg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.diagram.stereotype.edition/model/stereotype-edit.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.diagram.timing/model/timingdiagram-uml.elementtypesconfigurations#_BJMa0PyeEeWbo9Y7g2MLdw"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/StandardProfile.elementtypesconfigurations#_jfoLkGT_EeSEqNuV3JpFCA"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml-containments.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.uml.service.types.ui/model/uml-advice.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.sysml.service.types/model/sysml-activities.elementtypesconfigurations#_rRIxgLOjEeWH6Y3Wi2YKxg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.sysml.service.types/model/sysml-allocations.elementtypesconfigurations#_u9Zn4LOjEeWH6Y3Wi2YKxg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.sysml.service.types/model/sysml-blocks.elementtypesconfigurations#_3i038FYIEeS0WsAAtVmToA"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.sysml.service.types/model/sysml-constraints.elementtypesconfigurations#_0h9coLOjEeWH6Y3Wi2YKxg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.sysml.service.types/model/sysml-modelelements.elementtypesconfigurations#_2o9lYLOjEeWH6Y3Wi2YKxg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.sysml.service.types/model/sysml-portsandflows.elementtypesconfigurations#_6wATQLOjEeWH6Y3Wi2YKxg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.sysml.service.types/model/sysml-requirements.elementtypesconfigurations#_LYuC4LOtEeWH6Y3Wi2YKxg"/>
+ <elementTypes href="platform:/plugin/org.eclipse.papyrus.sysml.service.types/model/sysml.elementtypesconfigurations#_649xgFYBEeS0WsAAtVmToA"/>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" xmi:id="_m2D8IHDuEeWh-MssWmCB_A" name="Block Definition Diagram" icon="platform:/plugin/org.eclipse.papyrus.sysml.diagram.blockdefinition/icons/obj16/Diagram_BlockDefinition.gif" implementationID="BlockDefinition" creationCommandClass="org.eclipse.papyrus.sysml.diagram.blockdefinition.BlockDefinitionDiagramCreateCommand">
+ <concerns href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_HQhf48SYEeaKZJ_pGfaSiA"/>
+ <modelRules xmi:id="_m2D8IXDuEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </modelRules>
+ <modelRules xmi:id="_m2D8InDuEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
+ </modelRules>
+ <owningRules xmi:id="_m2D8I3DuEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </owningRules>
+ <owningRules xmi:id="_m2D8JHDuEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
+ </owningRules>
+ <childRules xmi:id="_m2D8JXDuEeWh-MssWmCB_A"/>
+ </representationKinds>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" xmi:id="_M-Q3sHDuEeWh-MssWmCB_A" name="Internal Block Diagram" icon="platform:/plugin/org.eclipse.papyrus.sysml.diagram.internalblock/icons/obj16/Diagram_InternalBlock.gif" implementationID="InternalBlock" creationCommandClass="org.eclipse.papyrus.sysml.diagram.internalblock.InternalBlockDiagramCreateCommand">
+ <concerns href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_HQhf48SYEeaKZJ_pGfaSiA"/>
+ <modelRules xmi:id="_M-Q3sXDuEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
+ </modelRules>
+ <owningRules xmi:id="_M-Q3snDuEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
+ </owningRules>
+ <owningRules xmi:id="_M-Q3s3DuEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ <newModelPath xmi:id="_M-Q3tHDuEeWh-MssWmCB_A" creationType="org.eclipse.papyrus.sysml.Block">
+ <feature href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ </newModelPath>
+ </owningRules>
+ <childRules xmi:id="_M-Q3tXDuEeWh-MssWmCB_A"/>
+ </representationKinds>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" xmi:id="_eHbioHDvEeWh-MssWmCB_A" name="Parametric Diagram" concerns="_yMTQc8SdEeaKZJ_pGfaSiA" icon="platform:/plugin/org.eclipse.papyrus.sysml.diagram.parametric/icons/obj16/Diagram_Parametric.png" implementationID="Parametric" creationCommandClass="org.eclipse.papyrus.sysml.diagram.parametric.ParametricDiagramCreateCommand">
+ <modelRules xmi:id="_eHbioXDvEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </modelRules>
+ <owningRules xmi:id="_eHbionDvEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </owningRules>
+ <childRules xmi:id="_eHbio3DvEeWh-MssWmCB_A"/>
+ </representationKinds>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" xmi:id="_eHbipHDvEeWh-MssWmCB_A" name="Parametric Diagram" concerns="_yMTQc8SdEeaKZJ_pGfaSiA" icon="platform:/plugin/org.eclipse.papyrus.sysml.diagram.parametric/icons/obj16/Diagram_Parametric.png" implementationID="Parametric" creationCommandClass="org.eclipse.papyrus.sysml.diagram.parametric.ParametricDiagramCreateCommand">
+ <modelRules xmi:id="_eHbipXDvEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//constraints/ConstraintBlock"/>
+ </modelRules>
+ <owningRules xmi:id="_eHbipnDvEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//constraints/ConstraintBlock"/>
+ </owningRules>
+ <owningRules xmi:id="_eHbip3DvEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </owningRules>
+ <childRules xmi:id="_eHbiqHDvEeWh-MssWmCB_A"/>
+ <paletteRules xmi:id="_eHbiqXDvEeWh-MssWmCB_A" permit="false" element="parametric.tool.blockpropertycomposite"/>
+ <paletteRules xmi:id="_eHbiqnDvEeWh-MssWmCB_A" permit="false" element="parametric.tool.reference"/>
+ <paletteRules xmi:id="_eHbiq3DvEeWh-MssWmCB_A" permit="false" element="parametric.tool.value"/>
+ <paletteRules xmi:id="_eHbirHDvEeWh-MssWmCB_A" element=""/>
+ </representationKinds>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" xmi:id="_eHbirXDvEeWh-MssWmCB_A" name="Parametric Diagram" concerns="_yMTQc8SdEeaKZJ_pGfaSiA" icon="platform:/plugin/org.eclipse.papyrus.sysml.diagram.parametric/icons/obj16/Diagram_Parametric.png" implementationID="Parametric" creationCommandClass="org.eclipse.papyrus.sysml.diagram.parametric.ParametricDiagramCreateCommand">
+ <modelRules xmi:id="_eHbirnDvEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
+ </modelRules>
+ <owningRules xmi:id="_eHbir3DvEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </owningRules>
+ <owningRules xmi:id="_eHbisHDvEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
+ </owningRules>
+ <childRules xmi:id="_eHbisXDvEeWh-MssWmCB_A"/>
+ </representationKinds>
+ <representationKinds xsi:type="gmfdiagrepresentation:PapyrusDiagram" xmi:id="_iBC4gHDvEeWh-MssWmCB_A" name="Requirement Diagram" concerns="_yMTQcsSdEeaKZJ_pGfaSiA" icon="platform:/plugin/org.eclipse.papyrus.sysml.diagram.requirement/icons/obj16/Diagram_Requirement.gif" implementationID="RequirementDiagram" creationCommandClass="org.eclipse.papyrus.sysml.diagram.requirement.RequirementDiagramCreateCommand">
+ <modelRules xmi:id="_iBC4gXDvEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </modelRules>
+ <owningRules xmi:id="_iBC4gnDvEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </owningRules>
+ <childRules xmi:id="_iBC4g3DvEeWh-MssWmCB_A"/>
+ </representationKinds>
+ <representationKinds xsi:type="nattablerepresentation:PapyrusSyncTable" xmi:id="_r5y7wHDuEeWh-MssWmCB_A" name="Allocation Table" icon="platform:/plugin/org.eclipse.papyrus.sysml.nattable.allocation.config/icons/table_SysML_Allocation.png" implementationID="PapyrusSysMLAllocationTable">
+ <concerns href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_HQhf48SYEeaKZJ_pGfaSiA"/>
+ <modelRules xmi:id="_r5y7wXDuEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </modelRules>
+ <owningRules xmi:id="_r5y7wnDuEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </owningRules>
+ </representationKinds>
+ <representationKinds xsi:type="nattablerepresentation:PapyrusSyncTable" xmi:id="_lTE0gHDwEeWh-MssWmCB_A" name="Requirement Table" concerns="_yMTQcsSdEeaKZJ_pGfaSiA" icon="platform:/plugin/org.eclipse.papyrus.sysml.nattable.requirement.config/icons/table_SysML_Requirement.png" implementationID="PapyrusSysMLRequirementTable">
+ <modelRules xmi:id="_lTE0gXDwEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </modelRules>
+ <modelRules xmi:id="_lTE0gnDwEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//requirements/Requirement"/>
+ </modelRules>
+ <owningRules xmi:id="_lTE0g3DwEeWh-MssWmCB_A">
+ <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </owningRules>
+ </representationKinds>
+ <metamodel href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
+ <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks"/>
+ <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//portandflows"/>
+ <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//constraints"/>
+ <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//requirements"/>
+ <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//allocations"/>
+ </contexts>
+</architecture:ArchitectureDomain>
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/plugin.properties b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/plugin.properties
new file mode 100644
index 00000000000..f941ea802d1
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/plugin.properties
@@ -0,0 +1,14 @@
+# Copyright (c) 2017 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:
+# Maged Elaasar - Initial API and implementation
+#
+#
+
+pluginName = SysML Architecture
+providerName=Eclipse Modeling Project
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/plugin.xml b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/plugin.xml
new file mode 100644
index 00000000000..17a04ac7b64
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/plugin.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+
+ <extension
+ point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings">
+ <clientContext
+ id="org.eclipse.papyrus.sysml.architecture.SysML">
+ <matcher
+ class="org.eclipse.papyrus.sysml.architecture.internal.NoContextEnablementMatcher">
+ </matcher>
+ </clientContext>
+ <binding context="org.eclipse.papyrus.sysml.architecture.SysML">
+ <!-- ElementType that deals with View deletion when their related model element is deleted -->
+ <elementType ref="org.eclipse.gmf.runtime.diagram.core.advice.notationDepdendents"/>
+ <elementType ref="org.eclipse.gmf.runtime.diagram.core.advice.removeBookmarks"/>
+ <!-- Check for attempts to edit read-only objects that cannot reasonably be made writeable. -->
+ <advice ref="org.eclipse.papyrus.infra.emf.readOnlyAdvice" />
+ <!-- Delete markers attached to objects being deleted. -->
+ </binding>
+ </extension>
+
+ <extension point="org.eclipse.papyrus.infra.architecture.models">
+ <model path="model/sysml.architecture"/>
+ </extension>
+
+ <extension
+ point="org.eclipse.papyrus.infra.gmfdiag.common.diagramReconciler">
+ <diagramReconciler
+ diagramType="BlockDefinition"
+ reconcilerClass="org.eclipse.papyrus.sysml.architecture.migration.SysMLDiagramReconciler_1_3_0"
+ source="1.2.0"
+ target="1.3.0">
+ </diagramReconciler>
+ <diagramReconciler
+ diagramType="InternalBlock"
+ reconcilerClass="org.eclipse.papyrus.sysml.architecture.migration.SysMLDiagramReconciler_1_3_0"
+ source="1.2.0"
+ target="1.3.0">
+ </diagramReconciler>
+ <diagramReconciler
+ diagramType="Parametric"
+ reconcilerClass="org.eclipse.papyrus.sysml.architecture.migration.SysMLDiagramReconciler_1_3_0"
+ source="1.2.0"
+ target="1.3.0">
+ </diagramReconciler>
+ <diagramReconciler
+ diagramType="RequirementDiagram"
+ reconcilerClass="org.eclipse.papyrus.sysml.architecture.migration.SysMLDiagramReconciler_1_3_0"
+ source="1.2.0"
+ target="1.3.0">
+ </diagramReconciler>
+ </extension>
+
+ <extension
+ point="org.eclipse.papyrus.infra.nattable.common.tableReconciler">
+ <tableReconciler
+ reconcilerClass="org.eclipse.papyrus.sysml.architecture.migration.SysMLTableReconciler_1_3_0"
+ source="1.0.0"
+ target="1.3.0">
+ </tableReconciler>
+ </extension>
+
+</plugin>
+
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/pom.xml b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/pom.xml
new file mode 100644
index 00000000000..7db5130d6e5
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/pom.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.papyrus.sysml-architecture</artifactId>
+ <groupId>org.eclipse.papyrus</groupId>
+ <version>0.0.1-SNAPSHOT</version>
+ </parent>
+ <artifactId>org.eclipse.papyrus.sysml.architecture</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+</project>
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/SysMLArchitectureContextIds.java b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/SysMLArchitectureContextIds.java
new file mode 100644
index 00000000000..c87a6e77fa8
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/SysMLArchitectureContextIds.java
@@ -0,0 +1,26 @@
+/*****************************************************************************
+ * Copyright (c) 2017 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Maged Elaasar - Initial API and Implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.sysml.architecture;
+
+/**
+ * The ids of SysML-related architecture contexts
+ *
+ * @since 1.0
+ */
+public class SysMLArchitectureContextIds {
+
+ /**
+ * The id of the SysML architecture context
+ */
+ public static final String SysML = "org.eclipse.papyrus.sysml.architecture.SysML"; //$NON-NLS-1$
+}
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/internal/NoContextEnablementMatcher.java b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/internal/NoContextEnablementMatcher.java
new file mode 100644
index 00000000000..344e823a3fb
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/internal/NoContextEnablementMatcher.java
@@ -0,0 +1,29 @@
+/*****************************************************************************
+ * Copyright (c) 2017 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:
+ *
+ * Maged Elaasar - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.sysml.architecture.internal;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.emf.type.core.IElementMatcher;
+
+/**
+ * A no context matcher used to register element type bindings in the extension points
+ */
+public class NoContextEnablementMatcher implements IElementMatcher {
+
+ @Override
+ public boolean matches(EObject eObject) {
+ return false;
+ }
+}
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/migration/SysMLDiagramReconciler_1_3_0.java b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/migration/SysMLDiagramReconciler_1_3_0.java
new file mode 100644
index 00000000000..468433ca921
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/migration/SysMLDiagramReconciler_1_3_0.java
@@ -0,0 +1,90 @@
+/*****************************************************************************
+ * Copyright (c) 2017 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Maged Elaasar - Initial API and Implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.sysml.architecture.migration;
+
+import java.util.Collection;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.papyrus.infra.core.architecture.RepresentationKind;
+import org.eclipse.papyrus.infra.core.architecture.merged.MergedArchitectureDescriptionLanguage;
+import org.eclipse.papyrus.infra.architecture.ArchitectureDomainManager;
+import org.eclipse.papyrus.infra.gmfdiag.common.reconciler.DiagramReconciler_1_3_0;
+import org.eclipse.papyrus.infra.gmfdiag.representation.PapyrusDiagram;
+import org.eclipse.papyrus.infra.viewpoints.policy.ProfileUtils;
+import org.eclipse.papyrus.infra.viewpoints.style.PapyrusViewStyle;
+import org.eclipse.papyrus.sysml.architecture.SysMLArchitectureContextIds;
+
+/**
+ * SysML Diagram Reconciler from 1.2.0 to 1.3.0 that switches the old PapyrusViewStyle by
+ * the new PapyrusDiagramStyle
+ */
+public class SysMLDiagramReconciler_1_3_0 extends DiagramReconciler_1_3_0 {
+
+ private static final String BLOCK_DEFINITION_DIAGRAM = "BlockDefinition";
+ private static final String INTERNAL_BLOCK_DIAGRAM = "InternalBlock";
+ private static final String PARAMETRIC_DIAGRAM = "Parametric";
+ private static final String REQUIREMENT_DIAGRAM = "RequirementDiagram";
+
+ /**
+ * @see org.eclipse.papyrus.infra.gmfdiag.common.reconciler.DiagramReconciler_1_3_0#getPapyrusDiagram(org.eclipse.papyrus.infra.viewpoints.style.PapyrusViewStyle)
+ *
+ * @param oldStyle
+ * @return
+ */
+ @Override
+ protected PapyrusDiagram getDiagramKind(Diagram diagram, PapyrusViewStyle oldStyle) {
+ if (oldStyle != null) {
+ org.eclipse.papyrus.infra.viewpoints.configuration.PapyrusDiagram oldDiagramKind =
+ (org.eclipse.papyrus.infra.viewpoints.configuration.PapyrusDiagram) oldStyle.getConfiguration();
+ if (oldDiagramKind != null)
+ return getDiagramKind(oldDiagramKind.getName(), diagram);
+ }
+ if (BLOCK_DEFINITION_DIAGRAM.equals(diagram.getType())) {
+ return getDiagramKind("Block Definition Diagram", diagram);
+ } else if (INTERNAL_BLOCK_DIAGRAM.equals(diagram.getType())) {
+ return getDiagramKind("Internal Block Diagram", diagram);
+ } else if (PARAMETRIC_DIAGRAM.equals(diagram.getType())) {
+ return getDiagramKind("Parametric Diagram", diagram);
+ } else if (REQUIREMENT_DIAGRAM.equals(diagram.getType())) {
+ return getDiagramKind("Requirement Diagram", diagram);
+ }
+ return null;
+ }
+
+ /**
+ * Gets the diagram kind that matches given name and that supports the given diagram
+ */
+ protected PapyrusDiagram getDiagramKind(String name, Diagram diagram) {
+ ArchitectureDomainManager manager = ArchitectureDomainManager.getInstance();
+ MergedArchitectureDescriptionLanguage context = (MergedArchitectureDescriptionLanguage) manager.getArchitectureContextById(SysMLArchitectureContextIds.SysML);
+ for(RepresentationKind pKind : context.getRepresentationKinds()) {
+ if (pKind.getName().equals(name)) {
+ PapyrusDiagram dKind = (PapyrusDiagram) pKind;
+ if (dKind.getModelRules().get(0).getElement().isInstance(diagram.getElement())) {
+ boolean allStereotypesApplied = true;
+ Collection<EClass> appliedStereotypes =
+ ProfileUtils.getProfileHelper().getAppliedStereotypes(diagram.getElement());
+ for (EClass stereotype : dKind.getModelRules().get(0).getStereotypes()) {
+ if (!appliedStereotypes.contains(stereotype)) {
+ allStereotypesApplied = false;
+ }
+ }
+ if (allStereotypesApplied)
+ return dKind;
+ }
+ }
+ }
+ return null;
+ }
+}
diff --git a/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/migration/SysMLTableReconciler_1_3_0.java b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/migration/SysMLTableReconciler_1_3_0.java
new file mode 100644
index 00000000000..ced51d3eaf8
--- /dev/null
+++ b/plugins/sysml/architecture/org.eclipse.papyrus.sysml.architecture/src/org/eclipse/papyrus/sysml/architecture/migration/SysMLTableReconciler_1_3_0.java
@@ -0,0 +1,113 @@
+/*****************************************************************************
+ * Copyright (c) 2017 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Maged Elaasar - Initial API and Implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.sysml.architecture.migration;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.gmf.runtime.common.core.command.AbstractCommand;
+import org.eclipse.gmf.runtime.common.core.command.CommandResult;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.papyrus.infra.core.architecture.RepresentationKind;
+import org.eclipse.papyrus.infra.core.architecture.merged.MergedArchitectureDescriptionLanguage;
+import org.eclipse.papyrus.infra.nattable.representation.PapyrusSyncTable;
+import org.eclipse.papyrus.infra.architecture.ArchitectureDomainManager;
+import org.eclipse.papyrus.infra.nattable.common.reconciler.TableReconciler;
+import org.eclipse.papyrus.infra.nattable.model.nattable.Table;
+import org.eclipse.papyrus.sysml.architecture.SysMLArchitectureContextIds;
+
+/**
+ * UML Table Reconciler from 1.0.0 to 1.1.0 that replaces the old prototype value for tables
+ * with ones based on table kinds
+ */
+public class SysMLTableReconciler_1_3_0 extends TableReconciler {
+
+ private static final String ALLOCATION_TABLE = "Allocation Table";
+ private static final String REQUIREMENT_TABLE = "Requirement Table";
+
+ @Override
+ public ICommand getReconcileCommand(Table table) {
+ if (table.getPrototype() instanceof org.eclipse.papyrus.infra.viewpoints.configuration.PapyrusView) {
+ org.eclipse.papyrus.infra.viewpoints.configuration.PapyrusView oldTableKind =
+ (org.eclipse.papyrus.infra.viewpoints.configuration.PapyrusView) table.getPrototype();
+
+ RepresentationKind newTableKind = null;
+ if (oldTableKind != null) {
+ if (ALLOCATION_TABLE.equals(oldTableKind.getName())) {
+ newTableKind = getSyncTableKind(oldTableKind.getName(), table);
+ } else if (REQUIREMENT_TABLE.equals(oldTableKind.getName())) {
+ newTableKind = getSyncTableKind(oldTableKind.getName(), table);
+ }
+ };
+
+ if (newTableKind != null)
+ return new ReplaceTablePrototypeCommand(table, newTableKind);
+ }
+ return null;
+ }
+
+ protected PapyrusSyncTable getSyncTableKind(String name, Table table) {
+ ArchitectureDomainManager manager = ArchitectureDomainManager.getInstance();
+ MergedArchitectureDescriptionLanguage context = (MergedArchitectureDescriptionLanguage) manager.getArchitectureContextById(SysMLArchitectureContextIds.SysML);
+ for(RepresentationKind pKind : context.getRepresentationKinds()) {
+ if (pKind.getName().equals(name)) {
+ PapyrusSyncTable tKind = (PapyrusSyncTable) pKind;
+ if (tKind.getModelRules().get(0).getElement().isInstance(table.getContext())) {
+ return tKind;
+ }
+ }
+ }
+ return null;
+ }
+
+ /**
+ * A command to replace the old table prototype with the new representation kinds
+ */
+ protected class ReplaceTablePrototypeCommand extends AbstractCommand {
+
+ private Table table;
+ private RepresentationKind newKind;
+
+ public ReplaceTablePrototypeCommand(Table table, RepresentationKind newKind) {
+ super("Replace the papyrus view style from 1.0.0 to 1.1.0");
+ this.table = table;
+ this.newKind = newKind;
+ }
+
+ @Override
+ protected CommandResult doExecuteWithResult(IProgressMonitor progressMonitor, IAdaptable info) throws ExecutionException {
+ table.setPrototype(newKind);
+ return CommandResult.newOKCommandResult();
+ }
+
+ @Override
+ public boolean canUndo() {
+ return false;
+ }
+
+ @Override
+ public boolean canRedo() {
+ return false;
+ }
+
+ @Override
+ protected CommandResult doRedoWithResult(IProgressMonitor progressMonitor, IAdaptable info) throws ExecutionException {
+ throw new ExecutionException("Should not be called, canRedo false"); //$NON-NLS-1$
+ }
+
+ @Override
+ protected CommandResult doUndoWithResult(IProgressMonitor progressMonitor, IAdaptable info) throws ExecutionException {
+ throw new ExecutionException("Should not be called, canUndo false"); //$NON-NLS-1$
+ }
+ }
+}
diff --git a/plugins/sysml/architecture/pom.xml b/plugins/sysml/architecture/pom.xml
new file mode 100644
index 00000000000..f7018617303
--- /dev/null
+++ b/plugins/sysml/architecture/pom.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>org.eclipse.papyrus.sysml-architecture</artifactId>
+ <packaging>pom</packaging>
+ <parent>
+ <groupId>org.eclipse.papyrus</groupId>
+ <artifactId>org.eclipse.papyrus.sysml</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </parent>
+ <name>Papyrus SysML Architecture</name>
+ <description>Papyrus SysML Architecture Contexts.</description>
+
+ <modules>
+ <module>org.eclipse.papyrus.sysml.architecture</module>
+ </modules>
+</project>
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/model/BlockDefinitionDiagram.configuration b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/model/BlockDefinitionDiagram.configuration
deleted file mode 100644
index 56d659a55c0..00000000000
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/model/BlockDefinitionDiagram.configuration
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<configuration:PapyrusConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmi:id="_ko07IErbEeSdQKzSRatBjg">
- <viewpoints xsi:type="configuration:PapyrusViewpoint" xmi:id="_xogdoErbEeSdQKzSRatBjg" name="Default Papyrus Viewpoint">
- <modelKinds xsi:type="configuration:PapyrusDiagram" xmi:id="_m2D8IHDuEeWh-MssWmCB_A" implementationID="BlockDefinition">
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks"/>
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//portandflows"/>
- <modelRules xmi:id="_m2D8IXDuEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </modelRules>
- <modelRules xmi:id="_m2D8InDuEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
- <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
- </modelRules>
- <owningRules xmi:id="_m2D8I3DuEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </owningRules>
- <owningRules xmi:id="_m2D8JHDuEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
- <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
- </owningRules>
- <categories href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wNb49xhEeOqHvRyiN87hA"/>
- <childRules xmi:id="_m2D8JXDuEeWh-MssWmCB_A"/>
- </modelKinds>
- </viewpoints>
- <defaultStakeholder href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wLmkdxhEeOqHvRyiN87hA"/>
- <metamodel href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
-</configuration:PapyrusConfiguration>
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/plugin.xml b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/plugin.xml
index 5f22318763a..364e655b35f 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/plugin.xml
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/plugin.xml
@@ -1,14 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
- <extension
- point="org.eclipse.papyrus.infra.viewpoints.policy.custom">
- <contribution
- file="model/BlockDefinitionDiagram.configuration"
- original="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration">
- </contribution>
- </extension>
-
<!-- Diagram declaration -->
<extension point="org.eclipse.papyrus.infra.ui.papyrusDiagram">
<creationCommand
@@ -1321,25 +1313,25 @@
diagramType="BlockDefinition"
reconcilerClass="org.eclipse.papyrus.sysml.diagram.blockdefinition.migration.BDDReconciler"
source="0.9.1"
- target="1.1.0">
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="BlockDefinition"
- reconcilerClass="org.eclipse.papyrus.uml.diagram.clazz.custom.migration.ClassReconciler"
+ reconcilerClass="org.eclipse.papyrus.uml.diagram.clazz.custom.migration.ClassReconciler_1_1_0"
source="1.0.0"
- target="1.1.0">
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="BlockDefinition"
- reconcilerClass="org.eclipse.papyrus.uml.diagram.clazz.custom.migration.ClassReconcilerForCompartment"
+ reconcilerClass="org.eclipse.papyrus.uml.diagram.clazz.custom.migration.ClassReconcilerForCompartment_1_2_0"
source="1.1.0"
- target="1.2.0">
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="BlockDefinition"
reconcilerClass="org.eclipse.papyrus.uml.diagram.clazz.custom.migration.ClassReconciler_1_2_0"
source="1.1.0"
- target="1.2.0">
+ target="1.3.0">
</diagramReconciler>
</extension>
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/plugin.xml b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/plugin.xml
index 76b79bf659f..af2a3173ee9 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/plugin.xml
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/plugin.xml
@@ -2,11 +2,6 @@
<?eclipse version="3.4"?>
<plugin>
-<extension point="org.eclipse.papyrus.infra.ui.papyrusDiagram">
- <diagramCategory class="org.eclipse.papyrus.sysml.diagram.common.commands.CreateSysMLModelCommand" description="SysML diagrams" icon="icons/category_sysml.gif" id="sysml" label="SysML">
- </diagramCategory>
-</extension>
-
<extension point="org.eclipse.core.expressions.propertyTesters">
<propertyTester class="org.eclipse.papyrus.sysml.diagram.common.utils.SysMLSelectionTester" id="org.eclipse.papyrus.SysMLSelectionTester" namespace="org.eclipse.papyrus.SysMLSelectionTester" properties="isSysMLModel, isSysMLRequirementsModel, isSysMLBlocksModel" type="org.eclipse.jface.viewers.ISelection">
</propertyTester>
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintLabelParser.java
index 1dbfdd09dd4..72ad2e82762 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintLabelParser.java
@@ -27,12 +27,14 @@ import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.gmf.runtime.common.core.command.ICommand;
import org.eclipse.gmf.runtime.common.core.command.UnexecutableCommand;
+import org.eclipse.gmf.runtime.emf.type.core.IClientContext;
import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
import org.eclipse.papyrus.infra.core.resource.ModelSet;
import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.emf.gmf.command.EMFtoGMFCommandWrapper;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.internationalization.common.utils.InternationalizationPreferencesUtils;
+import org.eclipse.papyrus.infra.services.edit.context.TypeContext;
import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.papyrus.uml.diagram.common.Activator;
@@ -172,7 +174,8 @@ public class ConstraintLabelParser extends NamedElementLabelParser {
try {
if (updateRequest != null) {
- command = ElementEditServiceUtils.getEditServiceProvider().getEditService(constraint).getEditCommand(updateRequest);
+ IClientContext context = TypeContext.getContext(constraint);
+ command = ElementEditServiceUtils.getEditServiceProvider(context).getEditService(constraint).getEditCommand(updateRequest);
}
} catch (ServiceException e) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/NamedElementLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/NamedElementLabelParser.java
index dd5db038963..da7801a0797 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/NamedElementLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/NamedElementLabelParser.java
@@ -28,6 +28,7 @@ import org.eclipse.gmf.runtime.common.core.command.ICommand;
import org.eclipse.gmf.runtime.common.core.command.UnexecutableCommand;
import org.eclipse.gmf.runtime.common.ui.services.parser.IParserEditStatus;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserEditStatus;
+import org.eclipse.gmf.runtime.emf.type.core.IClientContext;
import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
@@ -36,6 +37,7 @@ import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.emf.gmf.command.EMFtoGMFCommandWrapper;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.gmfdiag.common.helper.MaskLabelHelper;
+import org.eclipse.papyrus.infra.services.edit.context.TypeContext;
import org.eclipse.papyrus.infra.internationalization.common.utils.InternationalizationPreferencesUtils;
import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
import org.eclipse.papyrus.uml.diagram.common.Activator;
@@ -91,7 +93,8 @@ public class NamedElementLabelParser implements IMaskManagedSemanticParser {
final ModelSet modelSet = (ModelSet)objectToEdit.eResource().getResourceSet();
command = new EMFtoGMFCommandWrapper(UMLLabelInternationalization.getInstance().getSetLabelCommand(modelSet.getTransactionalEditingDomain(), (NamedElement)objectToEdit, newString, null));
}else{
- command = ElementEditServiceUtils.getEditServiceProvider().getEditService(objectToEdit).getEditCommand(new SetRequest(objectToEdit, UMLPackage.eINSTANCE.getNamedElement_Name(), newString));
+ IClientContext context = TypeContext.getContext(objectToEdit);
+ command = ElementEditServiceUtils.getEditServiceProvider(context).getEditService(objectToEdit).getEditCommand(new SetRequest(objectToEdit, UMLPackage.eINSTANCE.getNamedElement_Name(), newString));
}
} catch (ServiceException e) {
Activator.log.error(e);
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/commands/CreateSysMLModelCommand.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/commands/CreateSysMLModelCommand.java
index c82b1e12599..600ca083aad 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/commands/CreateSysMLModelCommand.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/commands/CreateSysMLModelCommand.java
@@ -27,8 +27,6 @@ import org.eclipse.uml2.uml.UMLFactory;
*/
public class CreateSysMLModelCommand extends ModelCreationCommandBase {
- public static final String COMMAND_ID = "sysml";
-
/**
* @see org.eclipse.papyrus.infra.core.extension.commands.ModelCreationCommandBase#createRootElement()
*
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/model/InternalBlockDiagram.configuration b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/model/InternalBlockDiagram.configuration
deleted file mode 100644
index d35228924b1..00000000000
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/model/InternalBlockDiagram.configuration
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<configuration:PapyrusConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmi:id="_ko07IErbEeSdQKzSRatBjg">
- <viewpoints xsi:type="configuration:PapyrusViewpoint" xmi:id="_xogdoErbEeSdQKzSRatBjg" name="Default Papyrus Viewpoint">
- <modelKinds xsi:type="configuration:PapyrusDiagram" xmi:id="_M-Q3sHDuEeWh-MssWmCB_A" implementationID="InternalBlock">
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks"/>
- <modelRules xmi:id="_M-Q3sXDuEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
- <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
- </modelRules>
- <owningRules xmi:id="_M-Q3snDuEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
- <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
- </owningRules>
- <owningRules xmi:id="_M-Q3s3DuEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- <newModelPath xmi:id="_M-Q3tHDuEeWh-MssWmCB_A" creationType="org.eclipse.papyrus.sysml.Block">
- <feature href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
- </newModelPath>
- </owningRules>
- <categories href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wNb49xhEeOqHvRyiN87hA"/>
- <childRules xmi:id="_M-Q3tXDuEeWh-MssWmCB_A"/>
- </modelKinds>
- </viewpoints>
- <defaultStakeholder href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wLmkdxhEeOqHvRyiN87hA"/>
- <metamodel href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
-</configuration:PapyrusConfiguration>
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/plugin.xml b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/plugin.xml
index e4a8051a692..025d0da3831 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/plugin.xml
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/plugin.xml
@@ -1,14 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
- <extension
- point="org.eclipse.papyrus.infra.viewpoints.policy.custom">
- <contribution
- file="model/InternalBlockDiagram.configuration"
- original="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration">
- </contribution>
- </extension>
-
<!-- Diagram declaration -->
<extension point="org.eclipse.papyrus.infra.ui.papyrusDiagram">
<creationCommand creationCommandClass="org.eclipse.papyrus.sysml.diagram.internalblock.InternalBlockDiagramCreateCommand" creationCondition="org.eclipse.papyrus.sysml.diagram.internalblock.InternalBlockDiagramCondition" icon="icons/obj16/Diagram_InternalBlock.gif" id="org.eclipse.papyrus.sysml.diagram.internalblock.CreateCommand" language="sysml" label="Internal Block Diagram"></creationCommand>
@@ -532,25 +524,25 @@
diagramType="InternalBlock"
reconcilerClass="org.eclipse.papyrus.sysml.diagram.internalblock.migration.InternalBlockDiagramReconcilerUndefinedTo100"
source="undefined"
- target="1.1.0">
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="InternalBlock"
- reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconciler"
- source="undefined"
- target="1.1.0">
+ reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconciler_1_1_0"
+ source="1.0.0"
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="InternalBlock"
- reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconcilerForCompartment"
- source="undefined"
- target="1.2.0">
+ reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconcilerForCompartment_1_2_0"
+ source="1.1.0"
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="InternalBlock"
reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconciler_1_2_0"
- source="undefined"
- target="1.2.0">
+ source="1.1.0"
+ target="1.3.0">
</diagramReconciler>
</extension>
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src-gen/org/eclipse/papyrus/sysml/diagram/internalblock/InternalBlockDiagramCreateCommand.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src-gen/org/eclipse/papyrus/sysml/diagram/internalblock/InternalBlockDiagramCreateCommand.java
index 33ce95b56a7..356666f5dd9 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src-gen/org/eclipse/papyrus/sysml/diagram/internalblock/InternalBlockDiagramCreateCommand.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src-gen/org/eclipse/papyrus/sysml/diagram/internalblock/InternalBlockDiagramCreateCommand.java
@@ -23,7 +23,7 @@ import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.gmf.runtime.notation.Node;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.papyrus.infra.gmfdiag.common.AbstractPapyrusGmfCreateDiagramCommandHandler;
-import org.eclipse.papyrus.infra.viewpoints.policy.ViewPrototype;
+import org.eclipse.papyrus.infra.gmfdiag.common.helper.DiagramPrototype;
import org.eclipse.papyrus.sysml.blocks.Block;
import org.eclipse.papyrus.sysml.diagram.common.utils.SysMLGraphicalTypes;
import org.eclipse.papyrus.sysml.diagram.internalblock.provider.ElementTypes;
@@ -68,7 +68,7 @@ public class InternalBlockDiagramCreateCommand extends AbstractPapyrusGmfCreateD
* {@inheritDoc}
*/
@Override
- protected Diagram doCreateDiagram(Resource diagramResource, EObject owner, EObject element, ViewPrototype prototype, String name) {
+ protected Diagram doCreateDiagram(Resource diagramResource, EObject owner, EObject element, DiagramPrototype prototype, String name) {
// Start of user code Custom diagram creation
Diagram diagram = null;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src/org/eclipse/papyrus/sysml/diagram/internalblock/utils/TypeDropHelper.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src/org/eclipse/papyrus/sysml/diagram/internalblock/utils/TypeDropHelper.java
index efd2200eafd..9bdbb15a493 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src/org/eclipse/papyrus/sysml/diagram/internalblock/utils/TypeDropHelper.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src/org/eclipse/papyrus/sysml/diagram/internalblock/utils/TypeDropHelper.java
@@ -1,302 +1,314 @@
-/*****************************************************************************
- * Copyright (c) 2011, 2015 CEA LIST, Christian W. Damus, and others.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *
- * CEA LIST - Initial API and implementation
- * Christian W. Damus - bug 470296
- *
- *****************************************************************************/
-package org.eclipse.papyrus.sysml.diagram.internalblock.utils;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.transaction.TransactionalEditingDomain;
-import org.eclipse.gef.commands.Command;
-import org.eclipse.gef.commands.CompoundCommand;
-import org.eclipse.gef.commands.UnexecutableCommand;
-import org.eclipse.gmf.runtime.common.core.command.ICommand;
-import org.eclipse.gmf.runtime.common.core.command.IdentityCommand;
-import org.eclipse.gmf.runtime.diagram.core.edithelpers.CreateElementRequestAdapter;
-import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil;
-import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy;
-import org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart;
-import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest;
-import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest.ViewDescriptor;
-import org.eclipse.gmf.runtime.diagram.ui.requests.DropObjectsRequest;
-import org.eclipse.gmf.runtime.emf.type.core.IElementType;
-import org.eclipse.gmf.runtime.emf.type.core.ISpecializationType;
-import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
-import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
-import org.eclipse.gmf.runtime.notation.Node;
-import org.eclipse.gmf.runtime.notation.View;
-import org.eclipse.papyrus.infra.gmfdiag.common.utils.ViewDescriptorUtil;
-import org.eclipse.papyrus.infra.services.edit.commands.ConfigureFeatureCommandFactory;
-import org.eclipse.papyrus.infra.services.edit.commands.IConfigureCommandFactory;
-import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
-import org.eclipse.papyrus.infra.services.edit.service.IElementEditService;
-import org.eclipse.papyrus.sysml.service.types.element.SysMLElementTypes;
-import org.eclipse.papyrus.uml.diagram.common.helper.ElementHelper;
-import org.eclipse.papyrus.uml.service.types.element.UMLElementTypes;
-import org.eclipse.uml2.uml.Association;
-import org.eclipse.uml2.uml.DataType;
-import org.eclipse.uml2.uml.Signal;
-import org.eclipse.uml2.uml.Type;
-import org.eclipse.uml2.uml.TypedElement;
-import org.eclipse.uml2.uml.UMLPackage;
-
-/**
- * This class provides convenience methods to create Type specific drop action (Set new Type, Port creation, ...).
- */
-public class TypeDropHelper extends ElementHelper {
-
- public TypeDropHelper(TransactionalEditingDomain editDomain) {
- this.editDomain = editDomain;
- }
-
- public Command getDropAsTypedElementType(DropObjectsRequest request, GraphicalEditPart host) {
- CompoundCommand cc = new CompoundCommand("Set a new Type");
- ICommand setCommand = null;
-
- // The dropped object must be a Type and the target a TypedElement
- Type newType = (request.getObjects().get(0) instanceof Type) ? (Type) request.getObjects().get(0) : null;
- TypedElement typedElementDropTarget = (getHostEObject(host) instanceof TypedElement) ? (TypedElement) getHostEObject(host) : null;
-
- if ((newType == null) || (typedElementDropTarget == null)) {
- return UnexecutableCommand.INSTANCE;
- }
-
- if (newType == typedElementDropTarget.getType()) {
- setCommand = IdentityCommand.INSTANCE;
- }
-
- // Prepare a command to set the new type
- SetRequest req = new SetRequest(typedElementDropTarget, UMLPackage.eINSTANCE.getTypedElement_Type(), newType);
- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(UMLElementTypes.TYPED_ELEMENT);
- if (provider != null) {
- setCommand = provider.getEditCommand(req);
- }
-
- cc.add(new ICommandProxy(setCommand));
-
- return cc;
- }
-
- public Command getDropAsTypedPort(DropObjectsRequest request, GraphicalEditPart host) {
- CompoundCommand cc = new CompoundCommand("Create a new Port");
-
- Object droppedEObject = request.getObjects().get(0);
- if (!isValidPortType(droppedEObject)) {
- return UnexecutableCommand.INSTANCE;
- }
-
- // Prepare a command for the FlowPort creation and the drop in diagram
-
- // 1. Prepare creation command
- ICommand createElementCommand = null;
- CreateElementRequest createElementRequest = new CreateElementRequest(getEditingDomain(), getHostEObject(host), UMLElementTypes.PORT);
- createElementRequest.setParameter(IConfigureCommandFactory.CONFIGURE_COMMAND_FACTORY_ID, new ConfigureFeatureCommandFactory(UMLPackage.eINSTANCE.getTypedElement_Type(), request.getObjects().get(0)));
- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(getHostEObject(host));
- if (provider != null) {
- createElementCommand = provider.getEditCommand(createElementRequest);
- }
- IAdaptable createElementRequestAdapter = new CreateElementRequestAdapter(createElementRequest);
-
- // 2. Prepare the drop command
- ViewDescriptor descriptor = new ViewDescriptor(createElementRequestAdapter, Node.class, /* explicit semantic hint is mandatory */null, ViewDescriptorUtil.PERSISTED, host.getDiagramPreferencesHint());
- CreateViewRequest createViewRequest = new CreateViewRequest(descriptor);
- createViewRequest.setLocation(request.getLocation().getCopy());
- Command viewCreateCommand = host.getCommand(createViewRequest);
-
- // 3. Create the compound command
- cc.add(new ICommandProxy(createElementCommand));
- cc.add(viewCreateCommand);
-
- return cc;
- }
-
- public Command getDropAsTypedPortOnPart(DropObjectsRequest request, GraphicalEditPart host) {
- CompoundCommand cc = new CompoundCommand("Create a new Port");
-
- Object droppedEObject = request.getObjects().get(0);
- if (!isValidPortType(droppedEObject)) {
- return UnexecutableCommand.INSTANCE;
- }
-
- // Verify target nature
- EObject target = getHostEObject(host);
- if ((!(target instanceof TypedElement)) || (((TypedElement) target).getType() == null)) {
- return UnexecutableCommand.INSTANCE;
- }
-
- // The target type has to be a Block (will hold the created Port)
- Type targetType = ((TypedElement) target).getType();
- if (!((ISpecializationType) SysMLElementTypes.BLOCK).getMatcher().matches(targetType)) {
- return UnexecutableCommand.INSTANCE;
- }
-
- // Prepare a command for the FlowPort creation and the drop in diagram
-
- // 1. Prepare creation command
- ICommand createElementCommand = null;
- CreateElementRequest createElementRequest = new CreateElementRequest(getEditingDomain(), targetType, UMLElementTypes.PORT);
- createElementRequest.setParameter(IConfigureCommandFactory.CONFIGURE_COMMAND_FACTORY_ID, new ConfigureFeatureCommandFactory(UMLPackage.eINSTANCE.getTypedElement_Type(), request.getObjects().get(0)));
- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(targetType);
- if (provider != null) {
- createElementCommand = provider.getEditCommand(createElementRequest);
- }
- IAdaptable createElementRequestAdapter = new CreateElementRequestAdapter(createElementRequest);
-
- // 2. Prepare the drop command
- ViewDescriptor descriptor = new ViewDescriptor(createElementRequestAdapter, Node.class, /* explicit semantic hint is mandatory */null, ViewDescriptorUtil.PERSISTED, host.getDiagramPreferencesHint());
- CreateViewRequest createViewRequest = new CreateViewRequest(descriptor);
- createViewRequest.setLocation(request.getLocation().getCopy());
- Command viewCreateCommand = host.getCommand(createViewRequest);
-
- // 3. Create the compound command
- cc.add(new ICommandProxy(createElementCommand));
- cc.add(viewCreateCommand);
-
- return cc;
- }
-
- public Command getDropAsTypedFlowPort(DropObjectsRequest request, GraphicalEditPart host, IElementType elementType) {
- CompoundCommand cc = new CompoundCommand("Create a new FlowPort (" + elementType.getDisplayName() + ")");
-
- Object droppedEObject = request.getObjects().get(0);
- if (!isValidFlowPortType(droppedEObject, elementType)) {
- return UnexecutableCommand.INSTANCE;
- }
-
- // Prepare a command for the FlowPort creation and the drop in diagram
-
- // 1. Prepare creation command
- ICommand createElementCommand = null;
- CreateElementRequest createElementRequest = new CreateElementRequest(getEditingDomain(), getHostEObject(host), elementType);
- createElementRequest.setParameter(IConfigureCommandFactory.CONFIGURE_COMMAND_FACTORY_ID, new ConfigureFeatureCommandFactory(UMLPackage.eINSTANCE.getTypedElement_Type(), request.getObjects().get(0)));
- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(getHostEObject(host));
- if (provider != null) {
- createElementCommand = provider.getEditCommand(createElementRequest);
- }
- IAdaptable createElementRequestAdapter = new CreateElementRequestAdapter(createElementRequest);
-
- // 2. Prepare the drop command
- ViewDescriptor descriptor = new ViewDescriptor(createElementRequestAdapter, Node.class, /* explicit semantic hint is mandatory */null, ViewDescriptorUtil.PERSISTED, host.getDiagramPreferencesHint());
- CreateViewRequest createViewRequest = new CreateViewRequest(descriptor);
- createViewRequest.setLocation(request.getLocation().getCopy());
- Command viewCreateCommand = host.getCommand(createViewRequest);
-
- // 3. Create the compound command
- cc.add(new ICommandProxy(createElementCommand));
- cc.add(viewCreateCommand);
-
- return cc;
- }
-
- public Command getDropAsTypedFlowPortOnPart(DropObjectsRequest request, GraphicalEditPart host, IElementType elementType) {
- CompoundCommand cc = new CompoundCommand("Create a new FlowPort (" + elementType.getDisplayName() + ")");
-
- Object droppedEObject = request.getObjects().get(0);
- if (!isValidFlowPortType(droppedEObject, elementType)) {
- return UnexecutableCommand.INSTANCE;
- }
-
- // Verify target nature
- EObject target = getHostEObject(host);
- if ((!(target instanceof TypedElement)) || (((TypedElement) target).getType() == null)) {
- return UnexecutableCommand.INSTANCE;
- }
-
- // The target type has to be a Block (will hold the created Port)
- Type targetType = ((TypedElement) target).getType();
- if (!((ISpecializationType) SysMLElementTypes.BLOCK).getMatcher().matches(targetType)) {
- return UnexecutableCommand.INSTANCE;
- }
-
- // Prepare a command for the FlowPort creation and the drop in diagram
-
- // 1. Prepare creation command
- ICommand createElementCommand = null;
- CreateElementRequest createElementRequest = new CreateElementRequest(getEditingDomain(), targetType, elementType);
- createElementRequest.setParameter(IConfigureCommandFactory.CONFIGURE_COMMAND_FACTORY_ID, new ConfigureFeatureCommandFactory(UMLPackage.eINSTANCE.getTypedElement_Type(), request.getObjects().get(0)));
- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(targetType);
- if (provider != null) {
- createElementCommand = provider.getEditCommand(createElementRequest);
- }
- IAdaptable createElementRequestAdapter = new CreateElementRequestAdapter(createElementRequest);
-
- // 2. Prepare the drop command
- ViewDescriptor descriptor = new ViewDescriptor(createElementRequestAdapter, Node.class, /* explicit semantic hint is mandatory */null, ViewDescriptorUtil.PERSISTED, host.getDiagramPreferencesHint());
- CreateViewRequest createViewRequest = new CreateViewRequest(descriptor);
- createViewRequest.setLocation(request.getLocation().getCopy());
- Command viewCreateCommand = host.getCommand(createViewRequest);
-
- // 3. Create the compound command
- cc.add(new ICommandProxy(createElementCommand));
- cc.add(viewCreateCommand);
-
- return cc;
- }
-
- private boolean isValidFlowPortType(Object object, IElementType elementType) {
- boolean isValid = false;
-
- if ((object != null) && (object instanceof Type)) {
- Type type = (Type) object;
-
- // Test valid type
- if (type instanceof DataType) {
- isValid = true;
- }
-
- if (type instanceof Signal) {
- isValid = true;
- }
-
- if (((ISpecializationType) SysMLElementTypes.FLOW_SPECIFICATION).getMatcher().matches(type)) {
- // Non-atomic flow port, the direction is meaningless in this case
- if (elementType == SysMLElementTypes.FLOW_PORT) {
- isValid = true;
- }
- }
-
- if (((ISpecializationType) SysMLElementTypes.BLOCK).getMatcher().matches(type)) {
- isValid = true;
- }
-
- if (((ISpecializationType) SysMLElementTypes.VALUE_TYPE).getMatcher().matches(type)) {
- isValid = true;
- }
-
- }
-
- return isValid;
- }
-
- private boolean isValidPortType(Object object) {
- boolean isValid = false;
-
- // Bug 470296: Associations are not useful types for ports or any kind of property. Note that this
- // deliberately excludes association-classes, also, because their primary semantics is that of an association
- if ((object != null) && (object instanceof Type) && !(object instanceof Association)) {
- isValid = true;
- }
-
- return isValid;
- }
-
- /**
- * return the host Edit Part's semantic element, if the semantic element
- * is <code>null</code> or unresolvable it will return <code>null</code>
- *
- * @return EObject
- */
- protected EObject getHostEObject(GraphicalEditPart host) {
- return ViewUtil.resolveSemanticElement((View) host.getModel());
- }
-}
+/*****************************************************************************
+ * Copyright (c) 2011, 2015 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ * Christian W. Damus - bug 470296
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.sysml.diagram.internalblock.utils;
+
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.gef.commands.Command;
+import org.eclipse.gef.commands.CompoundCommand;
+import org.eclipse.gef.commands.UnexecutableCommand;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.common.core.command.IdentityCommand;
+import org.eclipse.gmf.runtime.diagram.core.edithelpers.CreateElementRequestAdapter;
+import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil;
+import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest;
+import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest.ViewDescriptor;
+import org.eclipse.gmf.runtime.diagram.ui.requests.DropObjectsRequest;
+import org.eclipse.gmf.runtime.emf.type.core.IClientContext;
+import org.eclipse.gmf.runtime.emf.type.core.IElementType;
+import org.eclipse.gmf.runtime.emf.type.core.ISpecializationType;
+import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
+import org.eclipse.gmf.runtime.notation.Node;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.gmfdiag.common.utils.ViewDescriptorUtil;
+import org.eclipse.papyrus.infra.services.edit.commands.ConfigureFeatureCommandFactory;
+import org.eclipse.papyrus.infra.services.edit.commands.IConfigureCommandFactory;
+import org.eclipse.papyrus.infra.services.edit.context.TypeContext;
+import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
+import org.eclipse.papyrus.infra.services.edit.service.IElementEditService;
+import org.eclipse.papyrus.sysml.diagram.internalblock.Activator;
+import org.eclipse.papyrus.sysml.service.types.element.SysMLElementTypes;
+import org.eclipse.papyrus.uml.diagram.common.helper.ElementHelper;
+import org.eclipse.papyrus.uml.service.types.element.UMLElementTypes;
+import org.eclipse.uml2.uml.Association;
+import org.eclipse.uml2.uml.DataType;
+import org.eclipse.uml2.uml.Signal;
+import org.eclipse.uml2.uml.Type;
+import org.eclipse.uml2.uml.TypedElement;
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * This class provides convenience methods to create Type specific drop action (Set new Type, Port creation, ...).
+ */
+public class TypeDropHelper extends ElementHelper {
+
+ public TypeDropHelper(TransactionalEditingDomain editDomain) {
+ this.editDomain = editDomain;
+ }
+
+ public Command getDropAsTypedElementType(DropObjectsRequest request, GraphicalEditPart host) {
+ CompoundCommand cc = new CompoundCommand("Set a new Type");
+ ICommand setCommand = null;
+
+ // The dropped object must be a Type and the target a TypedElement
+ Type newType = (request.getObjects().get(0) instanceof Type) ? (Type) request.getObjects().get(0) : null;
+ TypedElement typedElementDropTarget = (getHostEObject(host) instanceof TypedElement) ? (TypedElement) getHostEObject(host) : null;
+
+ if ((newType == null) || (typedElementDropTarget == null)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ IClientContext context;
+ try {
+ context = TypeContext.getContext(typedElementDropTarget);
+ } catch (ServiceException e) {
+ Activator.log.error(e);
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ if (newType == typedElementDropTarget.getType()) {
+ setCommand = IdentityCommand.INSTANCE;
+ }
+
+ // Prepare a command to set the new type
+ SetRequest req = new SetRequest(typedElementDropTarget, UMLPackage.eINSTANCE.getTypedElement_Type(), newType);
+ IElementEditService provider = ElementEditServiceUtils.getCommandProvider(UMLElementTypes.TYPED_ELEMENT, context);
+ if (provider != null) {
+ setCommand = provider.getEditCommand(req);
+ }
+
+ cc.add(new ICommandProxy(setCommand));
+
+ return cc;
+ }
+
+ public Command getDropAsTypedPort(DropObjectsRequest request, GraphicalEditPart host) {
+ CompoundCommand cc = new CompoundCommand("Create a new Port");
+
+ Object droppedEObject = request.getObjects().get(0);
+ if (!isValidPortType(droppedEObject)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ // Prepare a command for the FlowPort creation and the drop in diagram
+
+ // 1. Prepare creation command
+ ICommand createElementCommand = null;
+ CreateElementRequest createElementRequest = new CreateElementRequest(getEditingDomain(), getHostEObject(host), UMLElementTypes.PORT);
+ createElementRequest.setParameter(IConfigureCommandFactory.CONFIGURE_COMMAND_FACTORY_ID, new ConfigureFeatureCommandFactory(UMLPackage.eINSTANCE.getTypedElement_Type(), request.getObjects().get(0)));
+ IElementEditService provider = ElementEditServiceUtils.getCommandProvider(getHostEObject(host));
+ if (provider != null) {
+ createElementCommand = provider.getEditCommand(createElementRequest);
+ }
+ IAdaptable createElementRequestAdapter = new CreateElementRequestAdapter(createElementRequest);
+
+ // 2. Prepare the drop command
+ ViewDescriptor descriptor = new ViewDescriptor(createElementRequestAdapter, Node.class, /* explicit semantic hint is mandatory */null, ViewDescriptorUtil.PERSISTED, host.getDiagramPreferencesHint());
+ CreateViewRequest createViewRequest = new CreateViewRequest(descriptor);
+ createViewRequest.setLocation(request.getLocation().getCopy());
+ Command viewCreateCommand = host.getCommand(createViewRequest);
+
+ // 3. Create the compound command
+ cc.add(new ICommandProxy(createElementCommand));
+ cc.add(viewCreateCommand);
+
+ return cc;
+ }
+
+ public Command getDropAsTypedPortOnPart(DropObjectsRequest request, GraphicalEditPart host) {
+ CompoundCommand cc = new CompoundCommand("Create a new Port");
+
+ Object droppedEObject = request.getObjects().get(0);
+ if (!isValidPortType(droppedEObject)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ // Verify target nature
+ EObject target = getHostEObject(host);
+ if ((!(target instanceof TypedElement)) || (((TypedElement) target).getType() == null)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ // The target type has to be a Block (will hold the created Port)
+ Type targetType = ((TypedElement) target).getType();
+ if (!((ISpecializationType) SysMLElementTypes.BLOCK).getMatcher().matches(targetType)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ // Prepare a command for the FlowPort creation and the drop in diagram
+
+ // 1. Prepare creation command
+ ICommand createElementCommand = null;
+ CreateElementRequest createElementRequest = new CreateElementRequest(getEditingDomain(), targetType, UMLElementTypes.PORT);
+ createElementRequest.setParameter(IConfigureCommandFactory.CONFIGURE_COMMAND_FACTORY_ID, new ConfigureFeatureCommandFactory(UMLPackage.eINSTANCE.getTypedElement_Type(), request.getObjects().get(0)));
+ IElementEditService provider = ElementEditServiceUtils.getCommandProvider(targetType);
+ if (provider != null) {
+ createElementCommand = provider.getEditCommand(createElementRequest);
+ }
+ IAdaptable createElementRequestAdapter = new CreateElementRequestAdapter(createElementRequest);
+
+ // 2. Prepare the drop command
+ ViewDescriptor descriptor = new ViewDescriptor(createElementRequestAdapter, Node.class, /* explicit semantic hint is mandatory */null, ViewDescriptorUtil.PERSISTED, host.getDiagramPreferencesHint());
+ CreateViewRequest createViewRequest = new CreateViewRequest(descriptor);
+ createViewRequest.setLocation(request.getLocation().getCopy());
+ Command viewCreateCommand = host.getCommand(createViewRequest);
+
+ // 3. Create the compound command
+ cc.add(new ICommandProxy(createElementCommand));
+ cc.add(viewCreateCommand);
+
+ return cc;
+ }
+
+ public Command getDropAsTypedFlowPort(DropObjectsRequest request, GraphicalEditPart host, IElementType elementType) {
+ CompoundCommand cc = new CompoundCommand("Create a new FlowPort (" + elementType.getDisplayName() + ")");
+
+ Object droppedEObject = request.getObjects().get(0);
+ if (!isValidFlowPortType(droppedEObject, elementType)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ // Prepare a command for the FlowPort creation and the drop in diagram
+
+ // 1. Prepare creation command
+ ICommand createElementCommand = null;
+ CreateElementRequest createElementRequest = new CreateElementRequest(getEditingDomain(), getHostEObject(host), elementType);
+ createElementRequest.setParameter(IConfigureCommandFactory.CONFIGURE_COMMAND_FACTORY_ID, new ConfigureFeatureCommandFactory(UMLPackage.eINSTANCE.getTypedElement_Type(), request.getObjects().get(0)));
+ IElementEditService provider = ElementEditServiceUtils.getCommandProvider(getHostEObject(host));
+ if (provider != null) {
+ createElementCommand = provider.getEditCommand(createElementRequest);
+ }
+ IAdaptable createElementRequestAdapter = new CreateElementRequestAdapter(createElementRequest);
+
+ // 2. Prepare the drop command
+ ViewDescriptor descriptor = new ViewDescriptor(createElementRequestAdapter, Node.class, /* explicit semantic hint is mandatory */null, ViewDescriptorUtil.PERSISTED, host.getDiagramPreferencesHint());
+ CreateViewRequest createViewRequest = new CreateViewRequest(descriptor);
+ createViewRequest.setLocation(request.getLocation().getCopy());
+ Command viewCreateCommand = host.getCommand(createViewRequest);
+
+ // 3. Create the compound command
+ cc.add(new ICommandProxy(createElementCommand));
+ cc.add(viewCreateCommand);
+
+ return cc;
+ }
+
+ public Command getDropAsTypedFlowPortOnPart(DropObjectsRequest request, GraphicalEditPart host, IElementType elementType) {
+ CompoundCommand cc = new CompoundCommand("Create a new FlowPort (" + elementType.getDisplayName() + ")");
+
+ Object droppedEObject = request.getObjects().get(0);
+ if (!isValidFlowPortType(droppedEObject, elementType)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ // Verify target nature
+ EObject target = getHostEObject(host);
+ if ((!(target instanceof TypedElement)) || (((TypedElement) target).getType() == null)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ // The target type has to be a Block (will hold the created Port)
+ Type targetType = ((TypedElement) target).getType();
+ if (!((ISpecializationType) SysMLElementTypes.BLOCK).getMatcher().matches(targetType)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ // Prepare a command for the FlowPort creation and the drop in diagram
+
+ // 1. Prepare creation command
+ ICommand createElementCommand = null;
+ CreateElementRequest createElementRequest = new CreateElementRequest(getEditingDomain(), targetType, elementType);
+ createElementRequest.setParameter(IConfigureCommandFactory.CONFIGURE_COMMAND_FACTORY_ID, new ConfigureFeatureCommandFactory(UMLPackage.eINSTANCE.getTypedElement_Type(), request.getObjects().get(0)));
+ IElementEditService provider = ElementEditServiceUtils.getCommandProvider(targetType);
+ if (provider != null) {
+ createElementCommand = provider.getEditCommand(createElementRequest);
+ }
+ IAdaptable createElementRequestAdapter = new CreateElementRequestAdapter(createElementRequest);
+
+ // 2. Prepare the drop command
+ ViewDescriptor descriptor = new ViewDescriptor(createElementRequestAdapter, Node.class, /* explicit semantic hint is mandatory */null, ViewDescriptorUtil.PERSISTED, host.getDiagramPreferencesHint());
+ CreateViewRequest createViewRequest = new CreateViewRequest(descriptor);
+ createViewRequest.setLocation(request.getLocation().getCopy());
+ Command viewCreateCommand = host.getCommand(createViewRequest);
+
+ // 3. Create the compound command
+ cc.add(new ICommandProxy(createElementCommand));
+ cc.add(viewCreateCommand);
+
+ return cc;
+ }
+
+ private boolean isValidFlowPortType(Object object, IElementType elementType) {
+ boolean isValid = false;
+
+ if ((object != null) && (object instanceof Type)) {
+ Type type = (Type) object;
+
+ // Test valid type
+ if (type instanceof DataType) {
+ isValid = true;
+ }
+
+ if (type instanceof Signal) {
+ isValid = true;
+ }
+
+ if (((ISpecializationType) SysMLElementTypes.FLOW_SPECIFICATION).getMatcher().matches(type)) {
+ // Non-atomic flow port, the direction is meaningless in this case
+ if (elementType == SysMLElementTypes.FLOW_PORT) {
+ isValid = true;
+ }
+ }
+
+ if (((ISpecializationType) SysMLElementTypes.BLOCK).getMatcher().matches(type)) {
+ isValid = true;
+ }
+
+ if (((ISpecializationType) SysMLElementTypes.VALUE_TYPE).getMatcher().matches(type)) {
+ isValid = true;
+ }
+
+ }
+
+ return isValid;
+ }
+
+ private boolean isValidPortType(Object object) {
+ boolean isValid = false;
+
+ // Bug 470296: Associations are not useful types for ports or any kind of property. Note that this
+ // deliberately excludes association-classes, also, because their primary semantics is that of an association
+ if ((object != null) && (object instanceof Type) && !(object instanceof Association)) {
+ isValid = true;
+ }
+
+ return isValid;
+ }
+
+ /**
+ * return the host Edit Part's semantic element, if the semantic element
+ * is <code>null</code> or unresolvable it will return <code>null</code>
+ *
+ * @return EObject
+ */
+ protected EObject getHostEObject(GraphicalEditPart host) {
+ return ViewUtil.resolveSemanticElement((View) host.getModel());
+ }
+}
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/model/ParametricDiagram.configuration b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/model/ParametricDiagram.configuration
deleted file mode 100644
index 6dead345c47..00000000000
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/model/ParametricDiagram.configuration
+++ /dev/null
@@ -1,58 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<configuration:PapyrusConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmi:id="_ko07IErbEeSdQKzSRatBjg">
- <viewpoints xsi:type="configuration:PapyrusViewpoint" xmi:id="_xogdoErbEeSdQKzSRatBjg" name="Default Papyrus Viewpoint">
- <modelKinds xsi:type="configuration:PapyrusDiagram" xmi:id="_eHbioHDvEeWh-MssWmCB_A" implementationID="Parametric">
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks"/>
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//portandflows"/>
- <modelRules xmi:id="_eHbioXDvEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </modelRules>
- <owningRules xmi:id="_eHbionDvEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </owningRules>
- <categories href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wNb49xhEeOqHvRyiN87hA"/>
- <childRules xmi:id="_eHbio3DvEeWh-MssWmCB_A"/>
- </modelKinds>
- <modelKinds xsi:type="configuration:PapyrusDiagram" xmi:id="_eHbipHDvEeWh-MssWmCB_A" implementationID="Parametric">
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks"/>
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//portandflows"/>
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//constraints"/>
- <modelRules xmi:id="_eHbipXDvEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
- <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//constraints/ConstraintBlock"/>
- </modelRules>
- <owningRules xmi:id="_eHbipnDvEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
- <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//constraints/ConstraintBlock"/>
- </owningRules>
- <owningRules xmi:id="_eHbip3DvEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </owningRules>
- <categories href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wNb49xhEeOqHvRyiN87hA"/>
- <childRules xmi:id="_eHbiqHDvEeWh-MssWmCB_A"/>
- <paletteRules xmi:id="_eHbiqXDvEeWh-MssWmCB_A" permit="false" element="parametric.tool.blockpropertycomposite"/>
- <paletteRules xmi:id="_eHbiqnDvEeWh-MssWmCB_A" permit="false" element="parametric.tool.reference"/>
- <paletteRules xmi:id="_eHbiq3DvEeWh-MssWmCB_A" permit="false" element="parametric.tool.value"/>
- <paletteRules xmi:id="_eHbirHDvEeWh-MssWmCB_A" element=""/>
- </modelKinds>
- <modelKinds xsi:type="configuration:PapyrusDiagram" xmi:id="_eHbirXDvEeWh-MssWmCB_A" implementationID="Parametric">
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks"/>
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//portandflows"/>
- <modelRules xmi:id="_eHbirnDvEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
- <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
- </modelRules>
- <owningRules xmi:id="_eHbir3DvEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </owningRules>
- <owningRules xmi:id="_eHbisHDvEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
- <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//blocks/Block"/>
- </owningRules>
- <categories href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wNb49xhEeOqHvRyiN87hA"/>
- <childRules xmi:id="_eHbisXDvEeWh-MssWmCB_A"/>
- </modelKinds>
- </viewpoints>
- <defaultStakeholder href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wLmkdxhEeOqHvRyiN87hA"/>
- <metamodel href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
-</configuration:PapyrusConfiguration>
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/plugin.xml b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/plugin.xml
index d0239d5c67b..60063823af8 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/plugin.xml
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/plugin.xml
@@ -2,14 +2,6 @@
<?eclipse version="3.4"?>
<plugin>
- <extension
- point="org.eclipse.papyrus.infra.viewpoints.policy.custom">
- <contribution
- file="model/ParametricDiagram.configuration"
- original="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration">
- </contribution>
- </extension>
-
<extension point="org.eclipse.ui.contexts" id="ui-context">
<?gmfgen generated="true"?>
<context
@@ -690,27 +682,27 @@
point="org.eclipse.papyrus.infra.gmfdiag.common.diagramReconciler">
<diagramReconciler
diagramType="Parametric"
- reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconciler"
- source="undefined"
- target="1.1.0">
+ reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconciler_1_1_0"
+ source="1.0.0"
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="Parametric"
- reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconcilerForCompartment"
- source="undefined"
- target="1.2.0">
+ reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconcilerForCompartment_1_2_0"
+ source="1.1.0"
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="Parametric"
- reconcilerClass="org.eclipse.papyrus.sysml.diagram.parametric.migration.ParametricReconciler_1_2_0"
- source="undefined"
- target="1.1.0">
+ reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconciler_1_2_0"
+ source="1.1.0"
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="Parametric"
- reconcilerClass="org.eclipse.papyrus.uml.diagram.composite.custom.migration.CompositeReconciler_1_2_0"
- source="undefined"
- target="1.2.0">
+ reconcilerClass="org.eclipse.papyrus.sysml.diagram.parametric.migration.ParametricReconciler_1_2_0"
+ source="1.1.0"
+ target="1.3.0">
</diagramReconciler>
</extension>
</plugin>
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/src-gen/org/eclipse/papyrus/sysml/diagram/parametric/ParametricDiagramCreateCommand.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/src-gen/org/eclipse/papyrus/sysml/diagram/parametric/ParametricDiagramCreateCommand.java
index d8589ac48a7..2c1a0445a80 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/src-gen/org/eclipse/papyrus/sysml/diagram/parametric/ParametricDiagramCreateCommand.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.parametric/src-gen/org/eclipse/papyrus/sysml/diagram/parametric/ParametricDiagramCreateCommand.java
@@ -7,7 +7,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Régis CHEVREL: chevrel.regis <at> gmail.com
+ * R�gis CHEVREL: chevrel.regis <at> gmail.com
* CEA LIST - Initial API and implementation
* Laurent Wouters (CEA LIST) laurent.wouters@cea.fr - Viewpoints application
*
@@ -29,10 +29,10 @@ import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.gmf.runtime.notation.Node;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.papyrus.infra.gmfdiag.common.AbstractPapyrusGmfCreateDiagramCommandHandler;
+import org.eclipse.papyrus.infra.gmfdiag.common.helper.DiagramPrototype;
import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
import org.eclipse.papyrus.infra.services.edit.service.IElementEditService;
import org.eclipse.papyrus.infra.services.edit.utils.GMFCommandUtils;
-import org.eclipse.papyrus.infra.viewpoints.policy.ViewPrototype;
import org.eclipse.papyrus.sysml.blocks.Block;
import org.eclipse.papyrus.sysml.diagram.common.utils.SysMLGraphicalTypes;
import org.eclipse.papyrus.sysml.diagram.parametric.provider.ElementTypes;
@@ -78,7 +78,7 @@ public class ParametricDiagramCreateCommand extends AbstractPapyrusGmfCreateDiag
* {@inheritDoc}
*/
@Override
- protected Diagram doCreateDiagram(Resource diagramResource, EObject owner, EObject element, ViewPrototype prototype, String name) {
+ protected Diagram doCreateDiagram(Resource diagramResource, EObject owner, EObject element, DiagramPrototype prototype, String name) {
// Start of user code Custom diagram creation
Diagram diagram = null;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.requirement/model/Requirement.configuration b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.requirement/model/Requirement.configuration
deleted file mode 100644
index bfde51d51c5..00000000000
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.requirement/model/Requirement.configuration
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<configuration:PapyrusConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmi:id="_ko07IErbEeSdQKzSRatBjg">
- <viewpoints xsi:type="configuration:PapyrusViewpoint" xmi:id="_xogdoErbEeSdQKzSRatBjg" name="Default Papyrus Viewpoint">
- <modelKinds xsi:type="configuration:PapyrusDiagram" xmi:id="_iBC4gHDvEeWh-MssWmCB_A" implementationID="RequirementDiagram">
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//requirements"/>
- <modelRules xmi:id="_iBC4gXDvEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </modelRules>
- <owningRules xmi:id="_iBC4gnDvEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </owningRules>
- <categories href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wNb49xhEeOqHvRyiN87hA"/>
- <childRules xmi:id="_iBC4g3DvEeWh-MssWmCB_A"/>
- </modelKinds>
- </viewpoints>
- <defaultStakeholder href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wLmkdxhEeOqHvRyiN87hA"/>
- <metamodel href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
-</configuration:PapyrusConfiguration>
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.requirement/plugin.xml b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.requirement/plugin.xml
index 46e7572ae39..4b720d17968 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.requirement/plugin.xml
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.requirement/plugin.xml
@@ -2,15 +2,6 @@
<?eclipse version="3.4"?>
<plugin>
- <extension
- point="org.eclipse.papyrus.infra.viewpoints.policy.custom">
- <contribution
- file="model/Requirement.configuration"
- original="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration">
- </contribution>
- </extension>
-
-
<!-- Diagram declaration -->
<extension point="org.eclipse.papyrus.infra.ui.papyrusDiagram">
<creationCommand
@@ -850,21 +841,21 @@
point="org.eclipse.papyrus.infra.gmfdiag.common.diagramReconciler">
<diagramReconciler
diagramType="RequirementDiagram"
- reconcilerClass="org.eclipse.papyrus.uml.diagram.clazz.custom.migration.ClassReconciler"
+ reconcilerClass="org.eclipse.papyrus.uml.diagram.clazz.custom.migration.ClassReconciler_1_1_0"
source="1.0.0"
- target="1.1.0">
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="RequirementDiagram"
- reconcilerClass="org.eclipse.papyrus.uml.diagram.clazz.custom.migration.ClassReconcilerForCompartment"
+ reconcilerClass="org.eclipse.papyrus.uml.diagram.clazz.custom.migration.ClassReconcilerForCompartment_1_2_0"
source="1.1.0"
- target="1.2.0">
+ target="1.3.0">
</diagramReconciler>
<diagramReconciler
diagramType="RequirementDiagram"
reconcilerClass="org.eclipse.papyrus.uml.diagram.clazz.custom.migration.ClassReconciler_1_2_0"
source="1.1.0"
- target="1.2.0">
+ target="1.3.0">
</diagramReconciler>
</extension>
<!-- // End of user code
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/META-INF/MANIFEST.MF b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/META-INF/MANIFEST.MF
index a103708efeb..2a0618ddfd8 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/META-INF/MANIFEST.MF
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/META-INF/MANIFEST.MF
@@ -1,7 +1,8 @@
Manifest-Version: 1.0
Export-Package: org.eclipse.papyrus.sysml.diagram.ui
Require-Bundle: org.eclipse.papyrus.uml.diagram.wizards;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
- org.eclipse.papyrus.sysml.diagram.common;bundle-version="[2.0.0,3.0.0)"
+ org.eclipse.papyrus.sysml.diagram.common;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.sysml.architecture;bundle-version="[1.0.0,2.0.0)"
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-Version: 2.0.0.qualifier
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/src/org/eclipse/papyrus/sysml/diagram/ui/NewSysMLModelWizard.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/src/org/eclipse/papyrus/sysml/diagram/ui/NewSysMLModelWizard.java
index a8236d027bc..396da4b0e54 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/src/org/eclipse/papyrus/sysml/diagram/ui/NewSysMLModelWizard.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/src/org/eclipse/papyrus/sysml/diagram/ui/NewSysMLModelWizard.java
@@ -1,80 +1,80 @@
-/*****************************************************************************
- * Copyright (c) 2010, 2013 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:
- * Tatiana Fesenko (CEA LIST) - Initial API and implementation
- * Christian W. Damus (CEA) - Support creating models in repositories (CDO)
- *
- *****************************************************************************/
-package org.eclipse.papyrus.sysml.diagram.ui;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.papyrus.sysml.diagram.common.commands.CreateSysMLModelCommand;
-import org.eclipse.papyrus.uml.diagram.wizards.wizards.CreateModelWizard;
-import org.eclipse.papyrus.uml.diagram.wizards.pages.SelectDiagramCategoryPage;
-import org.eclipse.ui.IWorkbench;
-
-
-/**
- * The Class NewSysMLModelWizard.
- */
-public class NewSysMLModelWizard extends CreateModelWizard {
-
- /**
- * Instantiates a new new sys ml model wizard.
- */
- public NewSysMLModelWizard() {
- super();
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public void init(IWorkbench workbench, IStructuredSelection selection) {
- super.init(workbench, selection);
- setWindowTitle("New SysML Model");
- }
-
- @Override
- public String getModelKindName() {
- return "Papyrus SysML";
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- protected String[] getDiagramCategoryIds() {
- return new String[]{ CreateSysMLModelCommand.COMMAND_ID };
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- protected SelectDiagramCategoryPage createSelectDiagramCategoryPage() {
- // here SysML is the only available category
- return null;
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- protected void saveDiagramCategorySettings() {
- // here SysML is the only available category
- }
-
- @Override
- public boolean isPapyrusRootWizard() {
- return false;
- }
-
-}
+/*****************************************************************************
+ * Copyright (c) 2010, 2013 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:
+ * Tatiana Fesenko (CEA LIST) - Initial API and implementation
+ * Christian W. Damus (CEA) - Support creating models in repositories (CDO)
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.sysml.diagram.ui;
+
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.sysml.architecture.SysMLArchitectureContextIds;
+import org.eclipse.papyrus.uml.diagram.wizards.pages.SelectArchitectureContextPage;
+import org.eclipse.papyrus.uml.diagram.wizards.wizards.CreateModelWizard;
+import org.eclipse.ui.IWorkbench;
+
+
+/**
+ * The Class NewSysMLModelWizard.
+ */
+public class NewSysMLModelWizard extends CreateModelWizard {
+
+ /**
+ * Instantiates a new new sys ml model wizard.
+ */
+ public NewSysMLModelWizard() {
+ super();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void init(IWorkbench workbench, IStructuredSelection selection) {
+ super.init(workbench, selection);
+ setWindowTitle("New SysML Model");
+ }
+
+ @Override
+ public String getModelKindName() {
+ return "Papyrus SysML";
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected String[] getSelectedContexts() {
+ return new String[] { SysMLArchitectureContextIds.SysML };
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected SelectArchitectureContextPage createSelectArchitectureContextPage() {
+ // here SysML is the only available category
+ return null;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected void saveDiagramCategorySettings() {
+ // here SysML is the only available category
+ }
+
+ @Override
+ public boolean isPapyrusRootWizard() {
+ return false;
+ }
+
+}
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/src/org/eclipse/papyrus/sysml/diagram/ui/NewSysMLProjectWizard.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/src/org/eclipse/papyrus/sysml/diagram/ui/NewSysMLProjectWizard.java
index 532563db33b..1d868b8406f 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/src/org/eclipse/papyrus/sysml/diagram/ui/NewSysMLProjectWizard.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.ui/src/org/eclipse/papyrus/sysml/diagram/ui/NewSysMLProjectWizard.java
@@ -1,80 +1,80 @@
-/*****************************************************************************
- * Copyright (c) 2010 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:
- * Tatiana Fesenko (CEA LIST) - Initial API and implementation
- *
- *****************************************************************************/
-package org.eclipse.papyrus.sysml.diagram.ui;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.papyrus.sysml.diagram.common.commands.CreateSysMLModelCommand;
-import org.eclipse.papyrus.uml.diagram.wizards.wizards.NewPapyrusProjectWizard;
-import org.eclipse.papyrus.uml.diagram.wizards.pages.SelectDiagramCategoryPage;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.dialogs.WizardNewProjectCreationPage;
-
-
-/**
- * The Class NewSysMLProjectWizard.
- */
-public class NewSysMLProjectWizard extends NewPapyrusProjectWizard {
-
- /**
- * {@inheritDoc}
- */
- @Override
- public void init(IWorkbench workbench, IStructuredSelection selection) {
- super.init(workbench, selection);
- setWindowTitle("New SysML Project");
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- protected WizardNewProjectCreationPage createNewProjectCreationPage() {
- WizardNewProjectCreationPage newProjectPage = super.createNewProjectCreationPage();
- newProjectPage.setTitle("Papyrus SysML Project");
- newProjectPage.setDescription("Create a New Papyrus SysML Project");
- return newProjectPage;
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- protected SelectDiagramCategoryPage createSelectDiagramCategoryPage() {
- // here SysML is the only available category
- return null;
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- protected void saveDiagramCategorySettings() {
- // do nothing
- // here SysML is the only available category
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- protected String[] getDiagramCategoryIds() {
- return new String[]{ CreateSysMLModelCommand.COMMAND_ID };
- }
-
- @Override
- public boolean isPapyrusRootWizard() {
+/*****************************************************************************
+ * Copyright (c) 2010 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:
+ * Tatiana Fesenko (CEA LIST) - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.sysml.diagram.ui;
+
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.sysml.architecture.SysMLArchitectureContextIds;
+import org.eclipse.papyrus.uml.diagram.wizards.pages.SelectArchitectureContextPage;
+import org.eclipse.papyrus.uml.diagram.wizards.wizards.NewPapyrusProjectWizard;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.dialogs.WizardNewProjectCreationPage;
+
+
+/**
+ * The Class NewSysMLProjectWizard.
+ */
+public class NewSysMLProjectWizard extends NewPapyrusProjectWizard {
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void init(IWorkbench workbench, IStructuredSelection selection) {
+ super.init(workbench, selection);
+ setWindowTitle("New SysML Project");
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected WizardNewProjectCreationPage createNewProjectCreationPage() {
+ WizardNewProjectCreationPage newProjectPage = super.createNewProjectCreationPage();
+ newProjectPage.setTitle("Papyrus SysML Project");
+ newProjectPage.setDescription("Create a New Papyrus SysML Project");
+ return newProjectPage;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected SelectArchitectureContextPage createSelectArchitectureContextPage() {
+ // here SysML is the only available category
+ return null;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected void saveDiagramCategorySettings() {
+ // do nothing
+ // here SysML is the only available category
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected String[] getSelectedContexts() {
+ return new String[] { SysMLArchitectureContextIds.SysML };
+ }
+
+ @Override
+ public boolean isPapyrusRootWizard() {
return false;
- }
-
-}
+ }
+
+}
diff --git a/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.allocation.config/plugin.xml b/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.allocation.config/plugin.xml
index 906d9e09a0e..5c1e1a8350d 100644
--- a/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.allocation.config/plugin.xml
+++ b/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.allocation.config/plugin.xml
@@ -2,14 +2,6 @@
<?eclipse version="3.4"?>
<plugin>
<extension
- point="org.eclipse.papyrus.infra.viewpoints.policy.custom">
- <contribution
- file="resources/allocationTable.configuration"
- original="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration">
- </contribution>
- </extension>
-
- <extension
point="org.eclipse.papyrus.infra.nattable.tester">
<tester
class="org.eclipse.papyrus.sysml.nattable.allocation.config.tester.TableAllocationCreationTester"
diff --git a/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.allocation.config/resources/allocationTable.configuration b/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.allocation.config/resources/allocationTable.configuration
deleted file mode 100644
index e59208f77e7..00000000000
--- a/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.allocation.config/resources/allocationTable.configuration
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<configuration:PapyrusConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmi:id="_ko07IErbEeSdQKzSRatBjg">
- <viewpoints xsi:type="configuration:PapyrusViewpoint" xmi:id="_xogdoErbEeSdQKzSRatBjg" name="Default Papyrus Viewpoint">
- <modelKinds xsi:type="configuration:PapyrusSyncTable" xmi:id="_r5y7wHDuEeWh-MssWmCB_A" name="Allocation Table" icon="platform:/plugin/org.eclipse.papyrus.sysml.nattable.allocation.config/icons/table_SysML_Allocation.png" implementationID="PapyrusSysMLAllocationTable">
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//allocations"/>
- <modelRules xmi:id="_r5y7wXDuEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </modelRules>
- <owningRules xmi:id="_r5y7wnDuEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </owningRules>
- <categories href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wNb49xhEeOqHvRyiN87hA"/>
- </modelKinds>
- </viewpoints>
- <defaultStakeholder href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wLmkdxhEeOqHvRyiN87hA"/>
- <metamodel href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
-</configuration:PapyrusConfiguration>
diff --git a/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.requirement.config/configs/requirementTable.configuration b/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.requirement.config/configs/requirementTable.configuration
deleted file mode 100644
index 80453be9a38..00000000000
--- a/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.requirement.config/configs/requirementTable.configuration
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<configuration:PapyrusConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmi:id="_ko07IErbEeSdQKzSRatBjg">
- <viewpoints xsi:type="configuration:PapyrusViewpoint" xmi:id="_xogdoErbEeSdQKzSRatBjg" name="Default Papyrus Viewpoint">
- <modelKinds xsi:type="configuration:PapyrusSyncTable" xmi:id="_lTE0gHDwEeWh-MssWmCB_A" name="Requirement Table" icon="platform:/plugin/org.eclipse.papyrus.sysml.nattable.requirement.config/icons/table_SysML_Requirement.png" implementationID="PapyrusSysMLRequirementTable">
- <profiles href="http://www.eclipse.org/papyrus/0.7.0/SysML#//requirements"/>
- <modelRules xmi:id="_lTE0gXDwEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </modelRules>
- <modelRules xmi:id="_lTE0gnDwEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
- <stereotypes href="http://www.eclipse.org/papyrus/0.7.0/SysML#//requirements/Requirement"/>
- </modelRules>
- <owningRules xmi:id="_lTE0g3DwEeWh-MssWmCB_A">
- <element href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
- </owningRules>
- <categories href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wNb49xhEeOqHvRyiN87hA"/>
- </modelKinds>
- </viewpoints>
- <defaultStakeholder href="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration#_7wLmkdxhEeOqHvRyiN87hA"/>
- <metamodel href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
-</configuration:PapyrusConfiguration>
diff --git a/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.requirement.config/plugin.xml b/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.requirement.config/plugin.xml
index 92859289664..da01c0a1d25 100644
--- a/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.requirement.config/plugin.xml
+++ b/plugins/sysml/nattable/org.eclipse.papyrus.sysml.nattable.requirement.config/plugin.xml
@@ -2,13 +2,6 @@
<?eclipse version="3.4"?>
<plugin>
<extension
- point="org.eclipse.papyrus.infra.viewpoints.policy.custom">
- <contribution
- file="configs/requirementTable.configuration"
- original="platform:/plugin/org.eclipse.papyrus.infra.viewpoints.policy/builtin/default.configuration">
- </contribution>
- </extension>
- <extension
point="org.eclipse.papyrus.infra.nattable.configuration">
<configuration
file="configs/requirement.nattableconfiguration"
diff --git a/plugins/sysml/org.eclipse.papyrus.sysml.service.types/plugin.xml b/plugins/sysml/org.eclipse.papyrus.sysml.service.types/plugin.xml
index 13dde203aca..6bc12593e69 100644
--- a/plugins/sysml/org.eclipse.papyrus.sysml.service.types/plugin.xml
+++ b/plugins/sysml/org.eclipse.papyrus.sysml.service.types/plugin.xml
@@ -368,61 +368,5 @@
</image>
</extension>
-<extension
- point="org.eclipse.papyrus.infra.types.core.elementTypeSetConfiguration">
- <elementTypeSet
- clientContextID="org.eclipse.papyrus.infra.services.edit.TypeContext"
- path="model/sysml-activities.elementtypesconfigurations">
- </elementTypeSet>
-</extension>
-<extension
- point="org.eclipse.papyrus.infra.types.core.elementTypeSetConfiguration">
- <elementTypeSet
- clientContextID="org.eclipse.papyrus.infra.services.edit.TypeContext"
- path="model/sysml-allocations.elementtypesconfigurations">
- </elementTypeSet>
-</extension>
-<extension
- point="org.eclipse.papyrus.infra.types.core.elementTypeSetConfiguration">
- <elementTypeSet
- clientContextID="org.eclipse.papyrus.infra.services.edit.TypeContext"
- path="model/sysml-blocks.elementtypesconfigurations">
- </elementTypeSet>
-</extension>
-<extension
- point="org.eclipse.papyrus.infra.types.core.elementTypeSetConfiguration">
- <elementTypeSet
- clientContextID="org.eclipse.papyrus.infra.services.edit.TypeContext"
- path="model/sysml-constraints.elementtypesconfigurations">
- </elementTypeSet>
-</extension>
-<extension
- point="org.eclipse.papyrus.infra.types.core.elementTypeSetConfiguration">
- <elementTypeSet
- clientContextID="org.eclipse.papyrus.infra.services.edit.TypeContext"
- path="model/sysml-modelelements.elementtypesconfigurations">
- </elementTypeSet>
-</extension>
-<extension
- point="org.eclipse.papyrus.infra.types.core.elementTypeSetConfiguration">
- <elementTypeSet
- clientContextID="org.eclipse.papyrus.infra.services.edit.TypeContext"
- path="model/sysml-portsandflows.elementtypesconfigurations">
- </elementTypeSet>
-</extension>
-<extension
- point="org.eclipse.papyrus.infra.types.core.elementTypeSetConfiguration">
- <elementTypeSet
- clientContextID="org.eclipse.papyrus.infra.services.edit.TypeContext"
- path="model/sysml-requirements.elementtypesconfigurations">
- </elementTypeSet>
-</extension>
-<extension
- point="org.eclipse.papyrus.infra.types.core.elementTypeSetConfiguration">
- <elementTypeSet
- clientContextID="org.eclipse.papyrus.infra.services.edit.TypeContext"
- path="model/sysml.elementtypesconfigurations">
- </elementTypeSet>
-</extension>
</plugin>
diff --git a/plugins/sysml/pom.xml b/plugins/sysml/pom.xml
index ce7f8931f8a..f851e26a27f 100644
--- a/plugins/sysml/pom.xml
+++ b/plugins/sysml/pom.xml
@@ -14,6 +14,7 @@
<description>Top container of the Papyrus SysML 1.1 modeler</description>
<modules>
+ <module>architecture</module>
<module>diagram</module>
<module>modelexplorer</module>
<module>nattable</module>

Back to the top