Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnsgar Radermacher2014-10-20 15:12:07 +0000
committerAnsgar Radermacher2014-10-20 15:15:18 +0000
commit288db4ea60956ce68a7a922d4db2e30b1ffa841c (patch)
tree32b6c357809a772eaeb958962dc5f5ab47960ef9 /extraplugins/dsml.validation
parentb3cbe0f7e790ace4ea5dd67349af819689eea297 (diff)
downloadorg.eclipse.papyrus-288db4ea60956ce68a7a922d4db2e30b1ffa841c.tar.gz
org.eclipse.papyrus-288db4ea60956ce68a7a922d4db2e30b1ffa841c.tar.xz
org.eclipse.papyrus-288db4ea60956ce68a7a922d4db2e30b1ffa841c.zip
447548 - [OCL for Papyrus] Buggy DSML plugin generator
Diffstat (limited to 'extraplugins/dsml.validation')
-rw-r--r--extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.generator/src/org/eclipse/papyrus/dsml/validation/generator/main/generate.emtl552
-rw-r--r--extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.generator/src/org/eclipse/papyrus/dsml/validation/generator/main/generate.mtl10
-rw-r--r--extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/CreateJavaValidationPluginHandler.java66
-rw-r--r--extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/Messages.java39
-rw-r--r--extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/messages.properties8
-rw-r--r--extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model/src/org/eclipse/papyrus/dsml/validation/model/profilenames/Utils.java9
6 files changed, 385 insertions, 299 deletions
diff --git a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.generator/src/org/eclipse/papyrus/dsml/validation/generator/main/generate.emtl b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.generator/src/org/eclipse/papyrus/dsml/validation/generator/main/generate.emtl
index a26cc4ff465..8471a6d408a 100644
--- a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.generator/src/org/eclipse/papyrus/dsml/validation/generator/main/generate.emtl
+++ b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.generator/src/org/eclipse/papyrus/dsml/validation/generator/main/generate.emtl
@@ -134,7 +134,7 @@
</expression>
<type xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</ownedModuleElement>
- <ownedModuleElement xsi:type="mtl:Query" name="getPluginID" visibility="Public">
+ <ownedModuleElement xsi:type="mtl:Query" name="getTopPkg" visibility="Public">
<parameter name="dummy">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
</parameter>
@@ -146,7 +146,7 @@
<argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="org.eclipse.papyrus.dsml.validation.model.profilenames.Utils">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
- <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getPluginID()">
+ <argument xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="getTopPkg()">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
</argument>
<argument xsi:type="ocl.ecore:CollectionLiteralExp" eType="/4/Sequence(OclVoid)" kind="Sequence"/>
@@ -158,7 +158,7 @@
<body xsi:type="mtl:IfBlock">
<body xsi:type="mtl:FileBlock" openMode="OverWrite">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="&#x9;&#xA;package "/>
- <body xsi:type="mtl:QueryInvocation" definition="/0/getPluginID">
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getTopPkg">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<argument xsi:type="ocl.ecore:VariableExp" name="constraint" referredVariable="/0/generateConstraint/constraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
@@ -321,7 +321,7 @@
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/replaceAll">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
- <source xsi:type="mtl:QueryInvocation" definition="/0/getPluginID">
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getTopPkg">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<argument xsi:type="ocl.ecore:VariableExp" name="constraint" referredVariable="/0/generateConstraint/constraint">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
@@ -403,7 +403,7 @@
<ownedModuleElement xsi:type="mtl:Template" name="generateValidationContext" visibility="Public" main="true">
<body xsi:type="mtl:FileBlock" openMode="OverWrite">
<body xsi:type="ocl.ecore:StringLiteralExp" stringSymbol="/**&#xA; * Created by the Papyrus DSML plugin generator&#xA; */&#xA;&#xA;package "/>
- <body xsi:type="mtl:QueryInvocation" definition="/0/getPluginID">
+ <body xsi:type="mtl:QueryInvocation" definition="/0/getTopPkg">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<argument xsi:type="ocl.ecore:VariableExp" name="stereotype" referredVariable="/0/generateValidationContext/stereotype">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
@@ -442,7 +442,7 @@
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<source xsi:type="ocl.ecore:OperationCallExp" referredOperation="/1/String_Class/replaceAll">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
- <source xsi:type="mtl:QueryInvocation" definition="/0/getPluginID">
+ <source xsi:type="mtl:QueryInvocation" definition="/0/getTopPkg">
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<argument xsi:type="ocl.ecore:VariableExp" name="stereotype" referredVariable="/0/generateValidationContext/stereotype">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Stereotype"/>
@@ -568,11 +568,11 @@
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Constraint"/>
</eParameters>
</eOperations>
- <eOperations name="getPluginID">
+ <eOperations name="getTopPkg">
<eAnnotations source="http://www.eclipse.org/ocl/1.1.0/OCL">
<contents xsi:type="ocl.ecore:Constraint"/>
</eAnnotations>
- <eAnnotations source="MTL" references="/0/getPluginID"/>
+ <eAnnotations source="MTL" references="/0/getTopPkg"/>
<eType xsi:type="ocl.ecore:PrimitiveType" href="http://www.eclipse.org/ocl/1.1.0/oclstdlib.ecore#/0/String"/>
<eParameters name="dummy">
<eType xsi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
@@ -1003,664 +1003,664 @@
<details key="end" value="1266"/>
<details key="line" value="0"/>
</eAnnotations>
- <eAnnotations source="positions.40" references="/0/getPluginID">
+ <eAnnotations source="positions.40" references="/0/getTopPkg">
<details key="start" value="1272"/>
- <details key="end" value="1428"/>
+ <details key="end" value="1424"/>
<details key="line" value="9"/>
</eAnnotations>
- <eAnnotations source="positions.41" references="/0/getPluginID/dummy">
- <details key="start" value="1298"/>
- <details key="end" value="1313"/>
+ <eAnnotations source="positions.41" references="/0/getTopPkg/dummy">
+ <details key="start" value="1296"/>
+ <details key="end" value="1311"/>
<details key="line" value="9"/>
</eAnnotations>
- <eAnnotations source="positions.42" references="/0/getPluginID/%">
- <details key="start" value="1326"/>
- <details key="end" value="1425"/>
+ <eAnnotations source="positions.42" references="/0/getTopPkg/%">
+ <details key="start" value="1324"/>
+ <details key="end" value="1421"/>
<details key="line" value="0"/>
</eAnnotations>
- <eAnnotations source="positions.43" references="/0/getPluginID/%/self">
+ <eAnnotations source="positions.43" references="/0/getTopPkg/%/self">
<details key="start" value="-1"/>
<details key="end" value="-1"/>
<details key="line" value="0"/>
</eAnnotations>
- <eAnnotations source="positions.44" references="/0/getPluginID/%/%">
- <details key="start" value="1333"/>
- <details key="end" value="1395"/>
+ <eAnnotations source="positions.44" references="/0/getTopPkg/%/%">
+ <details key="start" value="1331"/>
+ <details key="end" value="1393"/>
<details key="line" value="0"/>
</eAnnotations>
- <eAnnotations source="positions.45" references="/0/getPluginID/%/%.1">
- <details key="start" value="1397"/>
- <details key="end" value="1412"/>
+ <eAnnotations source="positions.45" references="/0/getTopPkg/%/%.1">
+ <details key="start" value="1395"/>
+ <details key="end" value="1408"/>
<details key="line" value="0"/>
</eAnnotations>
- <eAnnotations source="positions.46" references="/0/getPluginID/%/%.2">
- <details key="start" value="1414"/>
- <details key="end" value="1424"/>
+ <eAnnotations source="positions.46" references="/0/getTopPkg/%/%.2">
+ <details key="start" value="1410"/>
+ <details key="end" value="1420"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.47" references="/0/generateConstraint">
- <details key="start" value="1431"/>
- <details key="end" value="3581"/>
+ <details key="start" value="1427"/>
+ <details key="end" value="3573"/>
<details key="line" value="12"/>
</eAnnotations>
<eAnnotations source="positions.48" references="/0/generateConstraint/%">
- <details key="start" value="1510"/>
- <details key="end" value="1511"/>
+ <details key="start" value="1506"/>
+ <details key="end" value="1507"/>
<details key="line" value="14"/>
</eAnnotations>
<eAnnotations source="positions.49" references="/0/generateConstraint/%.1">
- <details key="start" value="1511"/>
- <details key="end" value="3568"/>
+ <details key="start" value="1507"/>
+ <details key="end" value="3560"/>
<details key="line" value="15"/>
</eAnnotations>
<eAnnotations source="positions.50" references="/0/generateConstraint/%.1/%">
- <details key="start" value="1602"/>
- <details key="end" value="3562"/>
+ <details key="start" value="1598"/>
+ <details key="end" value="3554"/>
<details key="line" value="16"/>
</eAnnotations>
<eAnnotations source="positions.51" references="/0/generateConstraint/%.1/%/%">
- <details key="start" value="1774"/>
- <details key="end" value="1784"/>
+ <details key="start" value="1768"/>
+ <details key="end" value="1778"/>
<details key="line" value="17"/>
</eAnnotations>
<eAnnotations source="positions.52" references="/0/generateConstraint/%.1/%/%.1">
- <details key="start" value="1785"/>
- <details key="end" value="1808"/>
+ <details key="start" value="1779"/>
+ <details key="end" value="1800"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.53" references="/0/generateConstraint/%.1/%/%.1/constraint">
- <details key="start" value="1797"/>
- <details key="end" value="1807"/>
+ <details key="start" value="1789"/>
+ <details key="end" value="1799"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.54" references="/0/generateConstraint/%.1/%/%.2">
- <details key="start" value="1810"/>
- <details key="end" value="1811"/>
+ <details key="start" value="1802"/>
+ <details key="end" value="1803"/>
<details key="line" value="18"/>
</eAnnotations>
<eAnnotations source="positions.55" references="/0/generateConstraint/%.1/%/%.3">
- <details key="start" value="1812"/>
- <details key="end" value="1847"/>
+ <details key="start" value="1804"/>
+ <details key="end" value="1839"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.56" references="/0/generateConstraint/%.1/%/%.3/constraint">
- <details key="start" value="1836"/>
- <details key="end" value="1846"/>
+ <details key="start" value="1828"/>
+ <details key="end" value="1838"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.57" references="/0/generateConstraint/%.1/%/%.4">
- <details key="start" value="1849"/>
- <details key="end" value="2097"/>
+ <details key="start" value="1841"/>
+ <details key="end" value="2089"/>
<details key="line" value="18"/>
</eAnnotations>
<eAnnotations source="positions.58" references="/0/generateConstraint/%.1/%/%.5">
- <details key="start" value="2098"/>
- <details key="end" value="2143"/>
+ <details key="start" value="2090"/>
+ <details key="end" value="2135"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.59" references="/0/generateConstraint/%.1/%/%.5/%">
- <details key="start" value="2098"/>
- <details key="end" value="2128"/>
+ <details key="start" value="2090"/>
+ <details key="end" value="2120"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.60" references="/0/generateConstraint/%.1/%/%.5/%/%">
- <details key="start" value="2098"/>
- <details key="end" value="2113"/>
+ <details key="start" value="2090"/>
+ <details key="end" value="2105"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.61" references="/0/generateConstraint/%.1/%/%.5/%/%/constraint">
- <details key="start" value="2098"/>
- <details key="end" value="2108"/>
+ <details key="start" value="2090"/>
+ <details key="end" value="2100"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.62" references="/0/generateConstraint/%.1/%/%.5/%.1">
- <details key="start" value="2131"/>
- <details key="end" value="2143"/>
+ <details key="start" value="2123"/>
+ <details key="end" value="2135"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.63" references="/0/generateConstraint/%.1/%/%.6">
- <details key="start" value="2145"/>
- <details key="end" value="2323"/>
+ <details key="start" value="2137"/>
+ <details key="end" value="2315"/>
<details key="line" value="26"/>
</eAnnotations>
<eAnnotations source="positions.64" references="/0/generateConstraint/%.1/%/%.7">
- <details key="start" value="2326"/>
- <details key="end" value="2888"/>
+ <details key="start" value="2318"/>
+ <details key="end" value="2880"/>
<details key="line" value="32"/>
</eAnnotations>
<eAnnotations source="positions.65" references="/0/generateConstraint/%.1/%/%.7/%">
- <details key="start" value="2369"/>
- <details key="end" value="2432"/>
+ <details key="start" value="2361"/>
+ <details key="end" value="2424"/>
<details key="line" value="33"/>
</eAnnotations>
<eAnnotations source="positions.66" references="/0/generateConstraint/%.1/%/%.7/%.1">
- <details key="start" value="2433"/>
- <details key="end" value="2471"/>
+ <details key="start" value="2425"/>
+ <details key="end" value="2463"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.67" references="/0/generateConstraint/%.1/%/%.7/%.1/constraint">
- <details key="start" value="2460"/>
- <details key="end" value="2470"/>
+ <details key="start" value="2452"/>
+ <details key="end" value="2462"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.68" references="/0/generateConstraint/%.1/%/%.7/%.2">
- <details key="start" value="2473"/>
- <details key="end" value="2701"/>
+ <details key="start" value="2465"/>
+ <details key="end" value="2693"/>
<details key="line" value="33"/>
</eAnnotations>
<eAnnotations source="positions.69" references="/0/generateConstraint/%.1/%/%.7/%.3">
- <details key="start" value="2330"/>
- <details key="end" value="2367"/>
+ <details key="start" value="2322"/>
+ <details key="end" value="2359"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.70" references="/0/generateConstraint/%.1/%/%.7/%.3/constraint">
- <details key="start" value="2356"/>
- <details key="end" value="2366"/>
+ <details key="start" value="2348"/>
+ <details key="end" value="2358"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.71" references="/0/generateConstraint/%.1/%/%.7/%.4">
- <details key="start" value="2704"/>
- <details key="end" value="2883"/>
+ <details key="start" value="2696"/>
+ <details key="end" value="2875"/>
<details key="line" value="43"/>
</eAnnotations>
<eAnnotations source="positions.72" references="/0/generateConstraint/%.1/%/%.7/%.4/%">
- <details key="start" value="2711"/>
- <details key="end" value="2880"/>
+ <details key="start" value="2703"/>
+ <details key="end" value="2872"/>
<details key="line" value="44"/>
</eAnnotations>
<eAnnotations source="positions.73" references="/0/generateConstraint/%.1/%/%.8">
- <details key="start" value="2890"/>
- <details key="end" value="3016"/>
+ <details key="start" value="2882"/>
+ <details key="end" value="3008"/>
<details key="line" value="51"/>
</eAnnotations>
<eAnnotations source="positions.74" references="/0/generateConstraint/%.1/%/%.9">
- <details key="start" value="3018"/>
- <details key="end" value="3250"/>
+ <details key="start" value="3010"/>
+ <details key="end" value="3242"/>
<details key="line" value="58"/>
</eAnnotations>
<eAnnotations source="positions.75" references="/0/generateConstraint/%.1/%/%.9/%">
- <details key="start" value="3064"/>
- <details key="end" value="3215"/>
+ <details key="start" value="3056"/>
+ <details key="end" value="3207"/>
<details key="line" value="59"/>
</eAnnotations>
<eAnnotations source="positions.76" references="/0/generateConstraint/%.1/%/%.9/%/%">
- <details key="start" value="3125"/>
- <details key="end" value="3129"/>
+ <details key="start" value="3117"/>
+ <details key="end" value="3121"/>
<details key="line" value="60"/>
</eAnnotations>
<eAnnotations source="positions.77" references="/0/generateConstraint/%.1/%/%.9/%/%.1">
- <details key="start" value="3130"/>
- <details key="end" value="3177"/>
+ <details key="start" value="3122"/>
+ <details key="end" value="3169"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.78" references="/0/generateConstraint/%.1/%/%.9/%/%.1/%">
- <details key="start" value="3152"/>
- <details key="end" value="3176"/>
+ <details key="start" value="3144"/>
+ <details key="end" value="3168"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.79" references="/0/generateConstraint/%.1/%/%.9/%/%.1/%/constraint">
- <details key="start" value="3152"/>
- <details key="end" value="3162"/>
+ <details key="start" value="3144"/>
+ <details key="end" value="3154"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.80" references="/0/generateConstraint/%.1/%/%.9/%/%.2">
- <details key="start" value="3179"/>
- <details key="end" value="3180"/>
+ <details key="start" value="3171"/>
+ <details key="end" value="3172"/>
<details key="line" value="61"/>
</eAnnotations>
<eAnnotations source="positions.81" references="/0/generateConstraint/%.1/%/%.9/%/%.3">
- <details key="start" value="3068"/>
- <details key="end" value="3123"/>
+ <details key="start" value="3060"/>
+ <details key="end" value="3115"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.82" references="/0/generateConstraint/%.1/%/%.9/%/%.3/%">
- <details key="start" value="3068"/>
- <details key="end" value="3115"/>
+ <details key="start" value="3060"/>
+ <details key="end" value="3107"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.83" references="/0/generateConstraint/%.1/%/%.9/%/%.3/%/%">
- <details key="start" value="3090"/>
- <details key="end" value="3114"/>
+ <details key="start" value="3082"/>
+ <details key="end" value="3106"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.84" references="/0/generateConstraint/%.1/%/%.9/%/%.3/%/%/constraint">
- <details key="start" value="3090"/>
- <details key="end" value="3100"/>
+ <details key="start" value="3082"/>
+ <details key="end" value="3092"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.85" references="/0/generateConstraint/%.1/%/%.9/%/%.3/%.1">
- <details key="start" value="3119"/>
- <details key="end" value="3123"/>
+ <details key="start" value="3111"/>
+ <details key="end" value="3115"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.86" references="/0/generateConstraint/%.1/%/%.9/%/%.4">
- <details key="start" value="3183"/>
- <details key="end" value="3210"/>
+ <details key="start" value="3175"/>
+ <details key="end" value="3202"/>
<details key="line" value="61"/>
</eAnnotations>
<eAnnotations source="positions.87" references="/0/generateConstraint/%.1/%/%.9/%/%.4/%">
- <details key="start" value="3190"/>
- <details key="end" value="3207"/>
+ <details key="start" value="3182"/>
+ <details key="end" value="3199"/>
<details key="line" value="62"/>
</eAnnotations>
<eAnnotations source="positions.88" references="/0/generateConstraint/%.1/%/%.9/%.1">
- <details key="start" value="3217"/>
- <details key="end" value="3218"/>
+ <details key="start" value="3209"/>
+ <details key="end" value="3210"/>
<details key="line" value="63"/>
</eAnnotations>
<eAnnotations source="positions.89" references="/0/generateConstraint/%.1/%/%.9/%.2">
- <details key="start" value="3022"/>
- <details key="end" value="3059"/>
+ <details key="start" value="3014"/>
+ <details key="end" value="3051"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.90" references="/0/generateConstraint/%.1/%/%.9/%.2/constraint">
- <details key="start" value="3048"/>
- <details key="end" value="3058"/>
+ <details key="start" value="3040"/>
+ <details key="end" value="3050"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.91" references="/0/generateConstraint/%.1/%/%.9/%.3">
- <details key="start" value="3220"/>
- <details key="end" value="3245"/>
+ <details key="start" value="3212"/>
+ <details key="end" value="3237"/>
<details key="line" value="65"/>
</eAnnotations>
<eAnnotations source="positions.92" references="/0/generateConstraint/%.1/%/%.9/%.3/%">
- <details key="start" value="3227"/>
- <details key="end" value="3243"/>
+ <details key="start" value="3219"/>
+ <details key="end" value="3235"/>
<details key="line" value="66"/>
</eAnnotations>
<eAnnotations source="positions.93" references="/0/generateConstraint/%.1/%/%.10">
- <details key="start" value="3252"/>
- <details key="end" value="3307"/>
+ <details key="start" value="3244"/>
+ <details key="end" value="3299"/>
<details key="line" value="67"/>
</eAnnotations>
<eAnnotations source="positions.94" references="/0/generateConstraint/%.1/%/%.11">
- <details key="start" value="3308"/>
- <details key="end" value="3548"/>
+ <details key="start" value="3300"/>
+ <details key="end" value="3540"/>
<details key="line" value="70"/>
</eAnnotations>
<eAnnotations source="positions.95" references="/0/generateConstraint/%.1/%/%.11/%">
- <details key="start" value="3363"/>
- <details key="end" value="3514"/>
+ <details key="start" value="3355"/>
+ <details key="end" value="3506"/>
<details key="line" value="71"/>
</eAnnotations>
<eAnnotations source="positions.96" references="/0/generateConstraint/%.1/%/%.11/%/%">
- <details key="start" value="3424"/>
- <details key="end" value="3428"/>
+ <details key="start" value="3416"/>
+ <details key="end" value="3420"/>
<details key="line" value="72"/>
</eAnnotations>
<eAnnotations source="positions.97" references="/0/generateConstraint/%.1/%/%.11/%/%.1">
- <details key="start" value="3429"/>
- <details key="end" value="3476"/>
+ <details key="start" value="3421"/>
+ <details key="end" value="3468"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.98" references="/0/generateConstraint/%.1/%/%.11/%/%.1/%">
- <details key="start" value="3451"/>
- <details key="end" value="3475"/>
+ <details key="start" value="3443"/>
+ <details key="end" value="3467"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.99" references="/0/generateConstraint/%.1/%/%.11/%/%.1/%/constraint">
- <details key="start" value="3451"/>
- <details key="end" value="3461"/>
+ <details key="start" value="3443"/>
+ <details key="end" value="3453"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.100" references="/0/generateConstraint/%.1/%/%.11/%/%.2">
- <details key="start" value="3478"/>
- <details key="end" value="3479"/>
+ <details key="start" value="3470"/>
+ <details key="end" value="3471"/>
<details key="line" value="73"/>
</eAnnotations>
<eAnnotations source="positions.101" references="/0/generateConstraint/%.1/%/%.11/%/%.3">
- <details key="start" value="3367"/>
- <details key="end" value="3422"/>
+ <details key="start" value="3359"/>
+ <details key="end" value="3414"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.102" references="/0/generateConstraint/%.1/%/%.11/%/%.3/%">
- <details key="start" value="3367"/>
- <details key="end" value="3414"/>
+ <details key="start" value="3359"/>
+ <details key="end" value="3406"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.103" references="/0/generateConstraint/%.1/%/%.11/%/%.3/%/%">
- <details key="start" value="3389"/>
- <details key="end" value="3413"/>
+ <details key="start" value="3381"/>
+ <details key="end" value="3405"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.104" references="/0/generateConstraint/%.1/%/%.11/%/%.3/%/%/constraint">
- <details key="start" value="3389"/>
- <details key="end" value="3399"/>
+ <details key="start" value="3381"/>
+ <details key="end" value="3391"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.105" references="/0/generateConstraint/%.1/%/%.11/%/%.3/%.1">
- <details key="start" value="3418"/>
- <details key="end" value="3422"/>
+ <details key="start" value="3410"/>
+ <details key="end" value="3414"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.106" references="/0/generateConstraint/%.1/%/%.11/%/%.4">
- <details key="start" value="3482"/>
- <details key="end" value="3509"/>
+ <details key="start" value="3474"/>
+ <details key="end" value="3501"/>
<details key="line" value="73"/>
</eAnnotations>
<eAnnotations source="positions.107" references="/0/generateConstraint/%.1/%/%.11/%/%.4/%">
- <details key="start" value="3489"/>
- <details key="end" value="3506"/>
+ <details key="start" value="3481"/>
+ <details key="end" value="3498"/>
<details key="line" value="74"/>
</eAnnotations>
<eAnnotations source="positions.108" references="/0/generateConstraint/%.1/%/%.11/%.1">
- <details key="start" value="3312"/>
- <details key="end" value="3358"/>
+ <details key="start" value="3304"/>
+ <details key="end" value="3350"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.109" references="/0/generateConstraint/%.1/%/%.11/%.1/%">
- <details key="start" value="3312"/>
- <details key="end" value="3352"/>
+ <details key="start" value="3304"/>
+ <details key="end" value="3344"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.110" references="/0/generateConstraint/%.1/%/%.11/%.1/%/constraint">
- <details key="start" value="3340"/>
- <details key="end" value="3350"/>
+ <details key="start" value="3332"/>
+ <details key="end" value="3342"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.111" references="/0/generateConstraint/%.1/%/%.11/%.1/%.1">
- <details key="start" value="3354"/>
- <details key="end" value="3358"/>
+ <details key="start" value="3346"/>
+ <details key="end" value="3350"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.112" references="/0/generateConstraint/%.1/%/%.11/%.2">
- <details key="start" value="3518"/>
- <details key="end" value="3543"/>
+ <details key="start" value="3510"/>
+ <details key="end" value="3535"/>
<details key="line" value="76"/>
</eAnnotations>
<eAnnotations source="positions.113" references="/0/generateConstraint/%.1/%/%.11/%.2/%">
- <details key="start" value="3525"/>
- <details key="end" value="3541"/>
+ <details key="start" value="3517"/>
+ <details key="end" value="3533"/>
<details key="line" value="77"/>
</eAnnotations>
<eAnnotations source="positions.114" references="/0/generateConstraint/%.1/%/%.12">
- <details key="start" value="3550"/>
- <details key="end" value="3555"/>
+ <details key="start" value="3542"/>
+ <details key="end" value="3547"/>
<details key="line" value="78"/>
</eAnnotations>
<eAnnotations source="positions.115" references="/0/generateConstraint/%.1/%/%.13">
- <details key="start" value="1608"/>
- <details key="end" value="1764"/>
+ <details key="start" value="1604"/>
+ <details key="end" value="1758"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.116" references="/0/generateConstraint/%.1/%/%.13/%">
- <details key="start" value="1608"/>
- <details key="end" value="1744"/>
+ <details key="start" value="1604"/>
+ <details key="end" value="1738"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.117" references="/0/generateConstraint/%.1/%/%.13/%/%">
- <details key="start" value="1608"/>
- <details key="end" value="1726"/>
+ <details key="start" value="1604"/>
+ <details key="end" value="1720"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.118" references="/0/generateConstraint/%.1/%/%.13/%/%/%">
- <details key="start" value="1608"/>
- <details key="end" value="1720"/>
+ <details key="start" value="1604"/>
+ <details key="end" value="1714"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.119" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%">
- <details key="start" value="1608"/>
- <details key="end" value="1660"/>
+ <details key="start" value="1604"/>
+ <details key="end" value="1654"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.120" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%/%">
- <details key="start" value="1608"/>
- <details key="end" value="1654"/>
+ <details key="start" value="1604"/>
+ <details key="end" value="1648"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.121" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%/%/%">
- <details key="start" value="1608"/>
- <details key="end" value="1631"/>
+ <details key="start" value="1604"/>
+ <details key="end" value="1625"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.122" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%/%/%/constraint">
- <details key="start" value="1620"/>
- <details key="end" value="1630"/>
+ <details key="start" value="1614"/>
+ <details key="end" value="1624"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.123" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%/%/%.1">
- <details key="start" value="1643"/>
- <details key="end" value="1648"/>
+ <details key="start" value="1637"/>
+ <details key="end" value="1642"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.124" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%/%/%.2">
- <details key="start" value="1650"/>
- <details key="end" value="1653"/>
+ <details key="start" value="1644"/>
+ <details key="end" value="1647"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.125" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%/%.1">
- <details key="start" value="1657"/>
- <details key="end" value="1660"/>
+ <details key="start" value="1651"/>
+ <details key="end" value="1654"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.126" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%.1">
- <details key="start" value="1663"/>
- <details key="end" value="1720"/>
+ <details key="start" value="1657"/>
+ <details key="end" value="1714"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.127" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%.1/%">
- <details key="start" value="1663"/>
- <details key="end" value="1698"/>
+ <details key="start" value="1657"/>
+ <details key="end" value="1692"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.128" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%.1/%/constraint">
- <details key="start" value="1687"/>
- <details key="end" value="1697"/>
+ <details key="start" value="1681"/>
+ <details key="end" value="1691"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.129" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%.1/%.1">
- <details key="start" value="1710"/>
- <details key="end" value="1715"/>
+ <details key="start" value="1704"/>
+ <details key="end" value="1709"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.130" references="/0/generateConstraint/%.1/%/%.13/%/%/%/%.1/%.2">
- <details key="start" value="1716"/>
- <details key="end" value="1719"/>
+ <details key="start" value="1710"/>
+ <details key="end" value="1713"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.131" references="/0/generateConstraint/%.1/%/%.13/%/%/%.1">
- <details key="start" value="1723"/>
- <details key="end" value="1726"/>
+ <details key="start" value="1717"/>
+ <details key="end" value="1720"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.132" references="/0/generateConstraint/%.1/%/%.13/%/%.1">
- <details key="start" value="1729"/>
- <details key="end" value="1744"/>
+ <details key="start" value="1723"/>
+ <details key="end" value="1738"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.133" references="/0/generateConstraint/%.1/%/%.13/%/%.1/constraint">
- <details key="start" value="1729"/>
- <details key="end" value="1739"/>
+ <details key="start" value="1723"/>
+ <details key="end" value="1733"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.134" references="/0/generateConstraint/%.1/%/%.13/%.1">
- <details key="start" value="1747"/>
- <details key="end" value="1764"/>
+ <details key="start" value="1741"/>
+ <details key="end" value="1758"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.135" references="/0/generateConstraint/%.1/%.1">
- <details key="start" value="1515"/>
- <details key="end" value="1600"/>
+ <details key="start" value="1511"/>
+ <details key="end" value="1596"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.136" references="/0/generateConstraint/%.1/%.1/%">
- <details key="start" value="1516"/>
- <details key="end" value="1551"/>
+ <details key="start" value="1512"/>
+ <details key="end" value="1547"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.137" references="/0/generateConstraint/%.1/%.1/%/constraint">
- <details key="start" value="1540"/>
- <details key="end" value="1550"/>
+ <details key="start" value="1536"/>
+ <details key="end" value="1546"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.138" references="/0/generateConstraint/%.1/%.1/%.1">
- <details key="start" value="1556"/>
- <details key="end" value="1599"/>
+ <details key="start" value="1552"/>
+ <details key="end" value="1595"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.139" references="/0/generateConstraint/%.1/%.1/%.1/%">
- <details key="start" value="1556"/>
- <details key="end" value="1591"/>
+ <details key="start" value="1552"/>
+ <details key="end" value="1587"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.140" references="/0/generateConstraint/%.1/%.1/%.1/%/constraint">
- <details key="start" value="1580"/>
- <details key="end" value="1590"/>
+ <details key="start" value="1576"/>
+ <details key="end" value="1586"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.141" references="/0/generateConstraint/%.1/%.1/%.1/%.1">
- <details key="start" value="1595"/>
- <details key="end" value="1599"/>
+ <details key="start" value="1591"/>
+ <details key="end" value="1595"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.142" references="/0/generateConstraint/%.2">
- <details key="start" value="3569"/>
- <details key="end" value="3570"/>
+ <details key="start" value="3561"/>
+ <details key="end" value="3562"/>
<details key="line" value="83"/>
</eAnnotations>
<eAnnotations source="positions.143" references="/0/generateConstraint/constraint">
- <details key="start" value="1467"/>
- <details key="end" value="1490"/>
+ <details key="start" value="1463"/>
+ <details key="end" value="1486"/>
<details key="line" value="12"/>
</eAnnotations>
<eAnnotations source="positions.144" references="/0/generateValidationContext">
- <details key="start" value="3583"/>
- <details key="end" value="4485"/>
+ <details key="start" value="3575"/>
+ <details key="end" value="4473"/>
<details key="line" value="86"/>
</eAnnotations>
<eAnnotations source="positions.145" references="/0/generateValidationContext/%">
- <details key="start" value="3652"/>
- <details key="end" value="4473"/>
+ <details key="start" value="3644"/>
+ <details key="end" value="4461"/>
<details key="line" value="87"/>
</eAnnotations>
<eAnnotations source="positions.146" references="/0/generateValidationContext/%/%">
- <details key="start" value="3789"/>
- <details key="end" value="3854"/>
+ <details key="start" value="3779"/>
+ <details key="end" value="3844"/>
<details key="line" value="89"/>
</eAnnotations>
<eAnnotations source="positions.147" references="/0/generateValidationContext/%/%.1">
- <details key="start" value="3855"/>
- <details key="end" value="3878"/>
+ <details key="start" value="3845"/>
+ <details key="end" value="3866"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.148" references="/0/generateValidationContext/%/%.1/stereotype">
- <details key="start" value="3867"/>
- <details key="end" value="3877"/>
+ <details key="start" value="3855"/>
+ <details key="end" value="3865"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.149" references="/0/generateValidationContext/%/%.2">
- <details key="start" value="3880"/>
- <details key="end" value="4182"/>
+ <details key="start" value="3868"/>
+ <details key="end" value="4170"/>
<details key="line" value="93"/>
</eAnnotations>
<eAnnotations source="positions.150" references="/0/generateValidationContext/%/%.3">
- <details key="start" value="4183"/>
- <details key="end" value="4198"/>
+ <details key="start" value="4171"/>
+ <details key="end" value="4186"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.151" references="/0/generateValidationContext/%/%.3/stereotype">
- <details key="start" value="4183"/>
- <details key="end" value="4193"/>
+ <details key="start" value="4171"/>
+ <details key="end" value="4181"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.152" references="/0/generateValidationContext/%/%.4">
- <details key="start" value="4200"/>
- <details key="end" value="4237"/>
+ <details key="start" value="4188"/>
+ <details key="end" value="4225"/>
<details key="line" value="100"/>
</eAnnotations>
<eAnnotations source="positions.153" references="/0/generateValidationContext/%/%.5">
- <details key="start" value="4238"/>
- <details key="end" value="4253"/>
+ <details key="start" value="4226"/>
+ <details key="end" value="4241"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.154" references="/0/generateValidationContext/%/%.5/stereotype">
- <details key="start" value="4238"/>
- <details key="end" value="4248"/>
+ <details key="start" value="4226"/>
+ <details key="end" value="4236"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.155" references="/0/generateValidationContext/%/%.6">
- <details key="start" value="4255"/>
- <details key="end" value="4425"/>
+ <details key="start" value="4243"/>
+ <details key="end" value="4413"/>
<details key="line" value="104"/>
</eAnnotations>
<eAnnotations source="positions.156" references="/0/generateValidationContext/%/%.7">
- <details key="start" value="4426"/>
- <details key="end" value="4441"/>
+ <details key="start" value="4414"/>
+ <details key="end" value="4429"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.157" references="/0/generateValidationContext/%/%.7/stereotype">
- <details key="start" value="4426"/>
- <details key="end" value="4436"/>
+ <details key="start" value="4414"/>
+ <details key="end" value="4424"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.158" references="/0/generateValidationContext/%/%.8">
- <details key="start" value="4443"/>
- <details key="end" value="4466"/>
+ <details key="start" value="4431"/>
+ <details key="end" value="4454"/>
<details key="line" value="107"/>
</eAnnotations>
<eAnnotations source="positions.159" references="/0/generateValidationContext/%/%.9">
- <details key="start" value="3659"/>
- <details key="end" value="3762"/>
+ <details key="start" value="3651"/>
+ <details key="end" value="3752"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.160" references="/0/generateValidationContext/%/%.9/%">
- <details key="start" value="3659"/>
- <details key="end" value="3739"/>
+ <details key="start" value="3651"/>
+ <details key="end" value="3729"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.161" references="/0/generateValidationContext/%/%.9/%/%">
- <details key="start" value="3659"/>
- <details key="end" value="3721"/>
+ <details key="start" value="3651"/>
+ <details key="end" value="3711"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.162" references="/0/generateValidationContext/%/%.9/%/%/%">
- <details key="start" value="3659"/>
- <details key="end" value="3705"/>
+ <details key="start" value="3651"/>
+ <details key="end" value="3695"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.163" references="/0/generateValidationContext/%/%.9/%/%/%/%">
- <details key="start" value="3659"/>
- <details key="end" value="3682"/>
+ <details key="start" value="3651"/>
+ <details key="end" value="3672"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.164" references="/0/generateValidationContext/%/%.9/%/%/%/%/stereotype">
- <details key="start" value="3671"/>
- <details key="end" value="3681"/>
+ <details key="start" value="3661"/>
+ <details key="end" value="3671"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.165" references="/0/generateValidationContext/%/%.9/%/%/%/%.1">
- <details key="start" value="3694"/>
- <details key="end" value="3699"/>
+ <details key="start" value="3684"/>
+ <details key="end" value="3689"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.166" references="/0/generateValidationContext/%/%.9/%/%/%/%.2">
- <details key="start" value="3701"/>
- <details key="end" value="3704"/>
+ <details key="start" value="3691"/>
+ <details key="end" value="3694"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.167" references="/0/generateValidationContext/%/%.9/%/%/%.1">
- <details key="start" value="3708"/>
- <details key="end" value="3721"/>
+ <details key="start" value="3698"/>
+ <details key="end" value="3711"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.168" references="/0/generateValidationContext/%/%.9/%/%.1">
- <details key="start" value="3724"/>
- <details key="end" value="3739"/>
+ <details key="start" value="3714"/>
+ <details key="end" value="3729"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.169" references="/0/generateValidationContext/%/%.9/%/%.1/stereotype">
- <details key="start" value="3724"/>
- <details key="end" value="3734"/>
+ <details key="start" value="3714"/>
+ <details key="end" value="3724"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.170" references="/0/generateValidationContext/%/%.9/%.1">
- <details key="start" value="3741"/>
- <details key="end" value="3762"/>
+ <details key="start" value="3731"/>
+ <details key="end" value="3752"/>
<details key="line" value="0"/>
</eAnnotations>
<eAnnotations source="positions.171" references="/0/generateValidationContext/stereotype">
- <details key="start" value="3626"/>
- <details key="end" value="3649"/>
+ <details key="start" value="3618"/>
+ <details key="end" value="3641"/>
<details key="line" value="86"/>
</eAnnotations>
</ecore:EAnnotation>
diff --git a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.generator/src/org/eclipse/papyrus/dsml/validation/generator/main/generate.mtl b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.generator/src/org/eclipse/papyrus/dsml/validation/generator/main/generate.mtl
index de4e6bb9cbb..25d0b33e63b 100644
--- a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.generator/src/org/eclipse/papyrus/dsml/validation/generator/main/generate.mtl
+++ b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.generator/src/org/eclipse/papyrus/dsml/validation/generator/main/generate.mtl
@@ -6,16 +6,16 @@
[query public hasSpecificationForJava(constraint : Constraint) : Boolean = invoke('org.eclipse.papyrus.dsml.validation.model.profilenames.Utils', 'hasSpecificationForJava(org.eclipse.uml2.uml.Constraint)', Sequence{constraint}) /]
[query public isConstraintForStereotype(constraint : Constraint) : Boolean = invoke('org.eclipse.papyrus.dsml.validation.model.profilenames.Utils', 'isConstraintForStereotype(org.eclipse.uml2.uml.Constraint)', Sequence{constraint}) /]
[query public getConstraintForStereotype(constraint : Constraint) : String = invoke('org.eclipse.papyrus.dsml.validation.model.profilenames.Utils', 'getConstraintForStereotype(org.eclipse.uml2.uml.Constraint)', Sequence{constraint}) /]
-[query public getPluginID(dummy : Element) : String = invoke('org.eclipse.papyrus.dsml.validation.model.profilenames.Utils', 'getPluginID()', Sequence{}) /]
+[query public getTopPkg(dummy : Element) : String = invoke('org.eclipse.papyrus.dsml.validation.model.profilenames.Utils', 'getTopPkg()', Sequence{}) /]
[template public generateConstraint(constraint : Constraint)]
[comment @main/]
[if (hasSpecificationForJava(constraint) and getPackageForConstraint(constraint) <> null)]
-[file(getPluginID(constraint).replaceAll('\\.', '/') + '/' + getPackageForConstraint(constraint).replaceAll('\\.','/') + '/' + constraint.name + 'Constraint.java', false)]
+[file(getTopPkg(constraint).replaceAll('\\.', '/') + '/' + getPackageForConstraint(constraint).replaceAll('\\.','/') + '/' + constraint.name + 'Constraint.java', false)]
-package [getPluginID(constraint)/].[getPackageForConstraint(constraint)/];
+package [getTopPkg(constraint)/].[getPackageForConstraint(constraint)/];
import org.eclipse.core.runtime.IStatus;
import org.eclipse.emf.validation.AbstractModelConstraint;
@@ -84,13 +84,13 @@ public class [constraint.name.toUpperFirst() + 'Constraint'/] extends AbstractMo
[/template]
[template public generateValidationContext(stereotype : Stereotype)]
-[file (getPluginID(stereotype).replaceAll('\\.', '/') + '/selectors/' + stereotype.name +'ClientSelector.java', false)]
+[file (getTopPkg(stereotype).replaceAll('\\.', '/') + '/selectors/' + stereotype.name +'ClientSelector.java', false)]
[comment @main/]
/**
* Created by the Papyrus DSML plugin generator
*/
-package [getPluginID(stereotype)/].selectors;
+package [getTopPkg(stereotype)/].selectors;
import org.eclipse.emf.validation.model.IClientSelector;
import org.eclipse.papyrus.uml.service.validation.StereotypeUtil;
diff --git a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/CreateJavaValidationPluginHandler.java b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/CreateJavaValidationPluginHandler.java
index fd0f11920e0..14fa44ec287 100644
--- a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/CreateJavaValidationPluginHandler.java
+++ b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/CreateJavaValidationPluginHandler.java
@@ -23,6 +23,8 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.window.Window;
import org.eclipse.papyrus.dsml.validation.model.elements.impl.ConstraintManagerImpl;
import org.eclipse.papyrus.dsml.validation.model.elements.interfaces.IConstraintProvider;
import org.eclipse.papyrus.dsml.validation.model.elements.interfaces.IConstraintsCategory;
@@ -37,6 +39,7 @@ import org.eclipse.papyrus.infra.widgets.toolbox.notification.builders.Notificat
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.dialogs.ElementListSelectionDialog;
import org.eclipse.uml2.uml.Profile;
@@ -53,7 +56,7 @@ public class CreateJavaValidationPluginHandler extends AbstractHandler {
* <pre>
* Get the selected element, the first selected element if several are selected or null
* if no selection or the selection is not an {@link EObject}.
- *
+ *
* @return selected {@link EObject} or null
* </pre>
*
@@ -110,7 +113,7 @@ public class CreateJavaValidationPluginHandler extends AbstractHandler {
if (isOCLConstraint) {
definition = profileSelection.getDefinition();
if (definition == null) {
- NotificationBuilder errorDialog = NotificationBuilder.createErrorPopup("The profile must be defined in order to generate OCL Constraints");
+ NotificationBuilder errorDialog = NotificationBuilder.createErrorPopup(Messages.CreateJavaValidationPluginHandler_ProfileMustBeDefined);
errorDialog.run();
// finish by displaying a message for the user to inform that it need to define it before to launch it.
return null;
@@ -127,25 +130,58 @@ public class CreateJavaValidationPluginHandler extends AbstractHandler {
Shell shell = Display.getDefault().getActiveShell();
if ((existingProject != null) && existingProject.exists()) {
MessageDialog dialog = new MessageDialog(shell,
- "Choose plugin generation", null,
- "How should the plugin be generated?", MessageDialog.QUESTION,
- new String[] { "Create a new plugin", "write to plugin hosting the model or profile" }, 1);
+ Messages.CreateJavaValidationPluginHandler_ChoosePluginGeneration, null,
+ Messages.CreateJavaValidationPluginHandler_HowtoGeneratePlugin, MessageDialog.QUESTION,
+ new String[] { Messages.CreateJavaValidationPluginHandler_CreateNewPlugin, Messages.CreateJavaValidationPluginHandler_SelectExisting, Messages.CreateJavaValidationPluginHandler_HostCurrent }, 2);
+ question = dialog.open();
+ }
+ else if (root.getProjects().length > 0) {
+ MessageDialog dialog = new MessageDialog(shell,
+ Messages.CreateJavaValidationPluginHandler_ChoosePluginGeneration, null,
+ Messages.CreateJavaValidationPluginHandler_HowtoGeneratePlugin, MessageDialog.QUESTION,
+ new String[] { Messages.CreateJavaValidationPluginHandler_CreateNewPlugin, Messages.CreateJavaValidationPluginHandler_SelectExisting }, 1);
question = dialog.open();
}
- if (question == 1) {
+ if ((question == 1) || (question == 2)) {
+ if (question == 1) {
+ // get object which represents the workspace
+ IProject projects[] = root.getProjects();
+
+ LabelProvider labelProvider = new LabelProvider() {
- // generate java code
- JavaContentGenerator generateAllJava = new JavaContentGenerator(existingProject, profileSelection);
- generateAllJava.run();
- // generate plugin + extension point
- try {
- ValidationPluginGenerator.instance.generate(existingProject, constraintsManager, definition);
- } catch (Exception e) {
- MessageDialog.openInformation(shell, "Exception occured during plugin generation", e.getMessage());
+ public String getText(Object element) {
+ if (element instanceof IProject) {
+ return ((IProject) element).getName();
+ }
+ return super.getText(element);
+ }
+ };
+ ElementListSelectionDialog dialog = new ElementListSelectionDialog(shell, labelProvider);
+ dialog.setTitle(Messages.CreateJavaValidationPluginHandler_SelectExisting);
+ dialog.setMessage(Messages.CreateJavaValidationPluginHandler_GenerateIntoExisting);
+ dialog.setMultipleSelection(false);
+ dialog.setElements(projects);
+ if (dialog.open() == Window.OK) {
+ existingProject = (IProject) dialog.getFirstResult();
+ }
+ else existingProject = null;
+ }
+
+ if (existingProject != null) {
+ // generate java code
+ JavaContentGenerator generateAllJava = new JavaContentGenerator(existingProject, profileSelection);
+ generateAllJava.run();
+ // generate plugin + extension point
+ try {
+ ValidationPluginGenerator.instance.generate(existingProject, constraintsManager, definition);
+ } catch (Exception e) {
+ MessageDialog.openInformation(shell, Messages.CreateJavaValidationPluginHandler_ExceptionDuringPluginGeneration, e.getMessage());
+ }
}
}
- else {
+ else if (question == 0) {
+
CreateEMFValidationProject wizard = new CreateEMFValidationProject(profileSelection, constraintsManager, definition);
wizard.openDialog();
}
diff --git a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/Messages.java b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/Messages.java
new file mode 100644
index 00000000000..073c16d4324
--- /dev/null
+++ b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/Messages.java
@@ -0,0 +1,39 @@
+/*****************************************************************************
+ * Copyright (c) 2014 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:
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.dsml.validation.generation.ui;
+
+import org.eclipse.osgi.util.NLS;
+
+/**
+ * @author ansgar
+ *
+ */
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.dsml.validation.generation.ui.messages"; //$NON-NLS-1$
+ public static String CreateJavaValidationPluginHandler_ChoosePluginGeneration;
+ public static String CreateJavaValidationPluginHandler_CreateNewPlugin;
+ public static String CreateJavaValidationPluginHandler_ExceptionDuringPluginGeneration;
+ public static String CreateJavaValidationPluginHandler_GenerateIntoExisting;
+ public static String CreateJavaValidationPluginHandler_SelectExisting;
+ public static String CreateJavaValidationPluginHandler_HostCurrent;
+ public static String CreateJavaValidationPluginHandler_HowtoGeneratePlugin;
+ public static String CreateJavaValidationPluginHandler_ProfileMustBeDefined;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/messages.properties b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/messages.properties
new file mode 100644
index 00000000000..e7170d7ab6c
--- /dev/null
+++ b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/messages.properties
@@ -0,0 +1,8 @@
+CreateJavaValidationPluginHandler_ChoosePluginGeneration=Choose plugin generation
+CreateJavaValidationPluginHandler_CreateNewPlugin=Create a new plugin
+CreateJavaValidationPluginHandler_ExceptionDuringPluginGeneration=Exception occured during plugin generation
+CreateJavaValidationPluginHandler_GenerateIntoExisting=Generate DSML code into existing plugin\nCAVEAT: this operation will modify the plugin.xml
+CreateJavaValidationPluginHandler_HostCurrent=Host in current plugin
+CreateJavaValidationPluginHandler_SelectExisting=Select an existing plugin
+CreateJavaValidationPluginHandler_HowtoGeneratePlugin=How should the plugin be generated?
+CreateJavaValidationPluginHandler_ProfileMustBeDefined=The profile must be defined in order to generate OCL Constraints
diff --git a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model/src/org/eclipse/papyrus/dsml/validation/model/profilenames/Utils.java b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model/src/org/eclipse/papyrus/dsml/validation/model/profilenames/Utils.java
index 4a6407459e5..b11f5323cde 100644
--- a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model/src/org/eclipse/papyrus/dsml/validation/model/profilenames/Utils.java
+++ b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model/src/org/eclipse/papyrus/dsml/validation/model/profilenames/Utils.java
@@ -230,10 +230,13 @@ public class Utils {
Utils.constraintToItsPackage = constraintToItsPackage;
}
- public static String getPluginID() {
- return pluginID;
+ /**
+ * @return the top level package. It corresponds to the pluginID in lower case. Used by Acceleo template that generates the contents of selectors
+ */
+ public static String getTopPkg() {
+ return pluginID.toLowerCase();
}
-
+
public static void setPluginID(String ID) {
pluginID = ID;
}

Back to the top