Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCedric Dumoulin2014-01-10 20:56:18 +0000
committerCedric Dumoulin2014-01-27 13:57:25 +0000
commitcc1c7778e1d15ff8f88b74d0e1e3a0d17c042596 (patch)
tree6cb37cc119d908ff08b86e539f19eb9d6d079364 /extraplugins/layers
parente1898665a62032926f02c75b2696c66fe0b165b0 (diff)
downloadorg.eclipse.papyrus-cc1c7778e1d15ff8f88b74d0e1e3a0d17c042596.tar.gz
org.eclipse.papyrus-cc1c7778e1d15ff8f88b74d0e1e3a0d17c042596.tar.xz
org.eclipse.papyrus-cc1c7778e1d15ff8f88b74d0e1e3a0d17c042596.zip
Bug 330199 - Add Layers states ATTACHED DETACHED
Diffstat (limited to 'extraplugins/layers')
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.di12
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.notation494
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.uml572
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/plugin.properties4
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/src/org/eclipse/papyrus/layers/stackmodel/layers/provider/LayerExpressionItemProvider.java24
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/src/org/eclipse/papyrus/layers/stackmodel/layers/provider/LayersStackItemProvider.java24
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.tests/src/org/eclipse/papyrus/layers/stackmodel/layers/tests/LayerExpressionTest.java64
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.tests/src/org/eclipse/papyrus/layers/stackmodel/layers/tests/LayersStackTest.java84
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.di6
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.ecore61
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.genmodel20
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.notation452
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.uml100
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayerExpression.java92
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayerState.java208
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayersPackage.java849
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayersStack.java108
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/AbstractLayerImpl.java17
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/AbstractLayerOperatorImpl.java1
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerExpressionImpl.java194
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerOperatorImpl.java58
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersFactoryImpl.java24
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersPackageImpl.java179
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersStackApplicationImpl.java1
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersStackImpl.java192
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/RegExpLayerImpl.java34
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/StackedLayerOperatorImpl.java1
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerImplWithApplicationTest.java1
-rw-r--r--extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/stackmodel/notifier/DiagramViewChangedEventNotifierTest.java3
29 files changed, 3515 insertions, 364 deletions
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.di b/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.di
index d4d7a2d0425..d82bc43c824 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.di
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.di
@@ -52,6 +52,12 @@
<availablePage>
<emfPageIdentifier href="architecture-v3.notation#_HLcwQFzPEeOeP67GJGKDkA"/>
</availablePage>
+ <availablePage>
+ <emfPageIdentifier href="architecture-v3.notation#_uQQgIXh8EeOlpfB_tZS-QA"/>
+ </availablePage>
+ <availablePage>
+ <emfPageIdentifier href="architecture-v3.notation#_GqKscXiMEeOlpfB_tZS-QA"/>
+ </availablePage>
</pageList>
<sashModel currentSelection="//@sashModel/@windows.0/@children.0">
<windows>
@@ -104,6 +110,12 @@
<children>
<emfPageIdentifier href="architecture-v3.notation#_HLcwQFzPEeOeP67GJGKDkA"/>
</children>
+ <children>
+ <emfPageIdentifier href="architecture-v3.notation#_uQQgIXh8EeOlpfB_tZS-QA"/>
+ </children>
+ <children>
+ <emfPageIdentifier href="architecture-v3.notation#_GqKscXiMEeOlpfB_tZS-QA"/>
+ </children>
</children>
</windows>
</sashModel>
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.notation b/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.notation
index 9fad7c84b54..4501f9c5b21 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.notation
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.notation
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML">
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML">
<notation:Diagram xmi:id="_--sO0LZJEeK8zaQi-hvdlw" type="PapyrusUMLClassDiagram" name="overview" measurementUnit="Pixel">
<children xmi:type="notation:Shape" xmi:id="_Iz1vALZKEeK8zaQi-hvdlw" type="2007" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Iz_gALZKEeK8zaQi-hvdlw" source="ShadowFigure">
@@ -14,10 +14,10 @@
<children xmi:type="notation:DecorationNode" xmi:id="_Iz_gBrZKEeK8zaQi-hvdlw" type="5026"/>
<children xmi:type="notation:DecorationNode" xmi:id="_Iz_gB7ZKEeK8zaQi-hvdlw" type="7016">
<styles xmi:type="notation:TitleStyle" xmi:id="_Iz_gCLZKEeK8zaQi-hvdlw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Iz_gCbZKEeK8zaQi-hvdlw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Iz_gCbZKEeK8zaQi-hvdlw" y="60" width="200" height="74"/>
</children>
<element xmi:type="uml:Package" href="architecture-v3.uml#_IygSQLZKEeK8zaQi-hvdlw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Iz1vAbZKEeK8zaQi-hvdlw" x="176" y="185"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Iz1vAbZKEeK8zaQi-hvdlw" x="162" y="192"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_KAehQbZKEeK8zaQi-hvdlw" type="2007" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_KAehQ7ZKEeK8zaQi-hvdlw" source="ShadowFigure">
@@ -35,7 +35,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_KAehTLZKEeK8zaQi-hvdlw"/>
</children>
<element xmi:type="uml:Package" href="architecture-v3.uml#_KAehQLZKEeK8zaQi-hvdlw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KAehQrZKEeK8zaQi-hvdlw" x="639" y="194"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KAehQrZKEeK8zaQi-hvdlw" x="162" y="48"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_KxknALZKEeK8zaQi-hvdlw" type="2007" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_KxknArZKEeK8zaQi-hvdlw" source="ShadowFigure">
@@ -53,7 +53,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_KxknC7ZKEeK8zaQi-hvdlw"/>
</children>
<element xmi:type="uml:Package" href="architecture-v3.uml#_KxbdELZKEeK8zaQi-hvdlw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KxknAbZKEeK8zaQi-hvdlw" x="180" y="396"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KxknAbZKEeK8zaQi-hvdlw" x="162" y="336"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_ShPUUL2QEeKKJJ5BmR3W3Q" type="2007" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ShP7YL2QEeKKJJ5BmR3W3Q" source="ShadowFigure">
@@ -71,7 +71,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ShQic72QEeKKJJ5BmR3W3Q"/>
</children>
<element xmi:type="uml:Package" href="architecture-v3.uml#_ShE8QL2QEeKKJJ5BmR3W3Q"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ShPUUb2QEeKKJJ5BmR3W3Q" x="504" y="396"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ShPUUb2QEeKKJJ5BmR3W3Q" x="162" y="480" width="415"/>
</children>
<styles xmi:type="notation:DiagramStyle" xmi:id="_--sO0bZJEeK8zaQi-hvdlw"/>
<element xmi:type="uml:Model" href="architecture-v3.uml#_-7kCULZJEeK8zaQi-hvdlw"/>
@@ -86,7 +86,7 @@
<element xmi:type="uml:Dependency" href="architecture-v3.uml#_NCWW0LZKEeK8zaQi-hvdlw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_NCpRwrZKEeK8zaQi-hvdlw" points="[-7, 11, 0, -111]$[-7, 122, 0, 0]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NDipoLZKEeK8zaQi-hvdlw" id="(0.375,0.89)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NDipobZKEeK8zaQi-hvdlw" id="(0.32,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NDipobZKEeK8zaQi-hvdlw" id="(0.385,0.02)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_OVNs4bZKEeK8zaQi-hvdlw" type="4008" source="_KAehQbZKEeK8zaQi-hvdlw" target="_Iz1vALZKEeK8zaQi-hvdlw" lineColor="0">
<children xmi:type="notation:DecorationNode" xmi:id="_OVXd4LZKEeK8zaQi-hvdlw" visible="false" type="6026">
@@ -97,9 +97,9 @@
</children>
<styles xmi:type="notation:FontStyle" xmi:id="_OVNs4rZKEeK8zaQi-hvdlw" fontName="Segoe UI"/>
<element xmi:type="uml:Dependency" href="architecture-v3.uml#_OVNs4LZKEeK8zaQi-hvdlw"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OVNs47ZKEeK8zaQi-hvdlw" points="[-6, -1, 297, 0]$[-269, 11, 34, 12]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OVXd5LZKEeK8zaQi-hvdlw" id="(0.03,0.66)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OVXd5bZKEeK8zaQi-hvdlw" id="(0.83,0.74)"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OVNs47ZKEeK8zaQi-hvdlw" points="[30, 34, -130, -142]$[116, 128, -44, -48]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OVXd5LZKEeK8zaQi-hvdlw" id="(0.575,0.94)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OVXd5bZKEeK8zaQi-hvdlw" id="(0.61,0.23)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_V2KBsL2QEeKKJJ5BmR3W3Q" type="4008" source="_KxknALZKEeK8zaQi-hvdlw" target="_ShPUUL2QEeKKJJ5BmR3W3Q" lineColor="0">
<children xmi:type="notation:DecorationNode" xmi:id="_V2LP0L2QEeKKJJ5BmR3W3Q" visible="false" type="6026">
@@ -111,8 +111,8 @@
<styles xmi:type="notation:FontStyle" xmi:id="_V2KBsb2QEeKKJJ5BmR3W3Q" fontName="Segoe UI"/>
<element xmi:type="uml:Dependency" href="architecture-v3.uml#_V114oL2QEeKKJJ5BmR3W3Q"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_V2KBsr2QEeKKJJ5BmR3W3Q" points="[5, -2, -158, 0]$[129, 1, -34, 3]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_V2TysL2QEeKKJJ5BmR3W3Q" id="(0.975,0.59)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_V2Tysb2QEeKKJJ5BmR3W3Q" id="(0.17,0.57)"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_V2TysL2QEeKKJJ5BmR3W3Q" id="(0.68,0.96)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ybg2MHboEeOlpfB_tZS-QA" id="(0.3036144578313253,0.15)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_Xjg7YL2QEeKKJJ5BmR3W3Q" type="4008" source="_Iz1vALZKEeK8zaQi-hvdlw" target="_ShPUUL2QEeKKJJ5BmR3W3Q" lineColor="0">
<children xmi:type="notation:DecorationNode" xmi:id="_XjiJgL2QEeKKJJ5BmR3W3Q" visible="false" type="6026">
@@ -124,8 +124,8 @@
<styles xmi:type="notation:FontStyle" xmi:id="_Xjg7Yb2QEeKKJJ5BmR3W3Q" fontName="Segoe UI"/>
<element xmi:type="uml:Dependency" href="architecture-v3.uml#_Xjd4EL2QEeKKJJ5BmR3W3Q"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Xjg7Yr2QEeKKJJ5BmR3W3Q" points="[11, 10, -146, -130]$[151, 138, -6, -2]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XjpeQL2QEeKKJJ5BmR3W3Q" id="(0.885,0.9)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XjpeQb2QEeKKJJ5BmR3W3Q" id="(0.03,0.19)"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XjpeQL2QEeKKJJ5BmR3W3Q" id="(0.83,0.21)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XjpeQb2QEeKKJJ5BmR3W3Q" id="(0.6313253012048192,0.14)"/>
</edges>
</notation:Diagram>
<notation:Diagram xmi:id="_hBG18M9REeKO_rl5MA6s9A" type="PapyrusUMLClassDiagram" name="ui" measurementUnit="Pixel">
@@ -6343,4 +6343,470 @@
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Zwy6wVzPEeOeP67GJGKDkA" id="(0.6173913043478261,0.89)"/>
</edges>
</notation:Diagram>
+ <notation:Diagram xmi:id="_uQQgIXh8EeOlpfB_tZS-QA" type="PapyrusUMLStateMachineDiagram" name="Layers Life Cycle" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_uQQgInh8EeOlpfB_tZS-QA" type="2000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uQQgI3h8EeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uQQgJHh8EeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uQQgJXh8EeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uQQgJnh8EeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uQQgJ3h8EeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uQQgKHh8EeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_uQQgKXh8EeOlpfB_tZS-QA" type="2001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uQQgKnh8EeOlpfB_tZS-QA" width="847" height="25"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_uQQgK3h8EeOlpfB_tZS-QA" type="2002">
+ <children xmi:type="notation:Shape" xmi:id="_uQQgLHh8EeOlpfB_tZS-QA" type="3000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uQQgLXh8EeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uQQgLnh8EeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uQQgL3h8EeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uQQgMHh8EeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uQQgMXh8EeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uQQgMnh8EeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uQQgM3h8EeOlpfB_tZS-QA" source="RegionAnnotationKey">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uQQgNHh8EeOlpfB_tZS-QA" key="RegionZoneKey" value=""/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_uQQgNXh8EeOlpfB_tZS-QA" type="3002">
+ <children xmi:type="notation:Shape" xmi:id="_vdmdAHh8EeOlpfB_tZS-QA" type="8000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vdmdAnh8EeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vdmdA3h8EeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vdmdBHh8EeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vdmdBXh8EeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vdmdBnh8EeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vdmdB3h8EeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_vdmdCHh8EeOlpfB_tZS-QA" type="8001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vdmdCXh8EeOlpfB_tZS-QA" x="-18" y="-30"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_vdmdCnh8EeOlpfB_tZS-QA" type="8002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vdmdC3h8EeOlpfB_tZS-QA" x="25" y="-10"/>
+ </children>
+ <element xmi:type="uml:Pseudostate" href="architecture-v3.uml#_vdgWYHh8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vdmdAXh8EeOlpfB_tZS-QA" x="24" y="131"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_wpIcAXh8EeOlpfB_tZS-QA" type="6000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_wpIcA3h8EeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wpIcBHh8EeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_wpIcBXh8EeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wpIcBnh8EeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_wpIcB3h8EeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wpIcCHh8EeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_wpIcCXh8EeOlpfB_tZS-QA" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0CYPwHh8EeOlpfB_tZS-QA" width="73"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_wpIcCnh8EeOlpfB_tZS-QA" visible="false" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wpIcC3h8EeOlpfB_tZS-QA" y="-1" width="73"/>
+ </children>
+ <element xmi:type="uml:State" href="architecture-v3.uml#_wpIcAHh8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wpIcAnh8EeOlpfB_tZS-QA" x="192" y="119" width="73"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1MAKQHh8EeOlpfB_tZS-QA" type="6000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1MAKQnh8EeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1MAKQ3h8EeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1MAKRHh8EeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1MAKRXh8EeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1MAKRnh8EeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1MAKR3h8EeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_1MAKSHh8EeOlpfB_tZS-QA" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4om0AHh8EeOlpfB_tZS-QA" width="73"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_1MAKSXh8EeOlpfB_tZS-QA" visible="false" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1MAKSnh8EeOlpfB_tZS-QA" y="-1" width="73"/>
+ </children>
+ <element xmi:type="uml:State" href="architecture-v3.uml#_1L6DoHh8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1MAKQXh8EeOlpfB_tZS-QA" x="186" y="287" width="73"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_5CvLQXh8EeOlpfB_tZS-QA" type="6000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5CvLQ3h8EeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5CvLRHh8EeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5CvLRXh8EeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5CvLRnh8EeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5CvLR3h8EeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5CvLSHh8EeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_5CvLSXh8EeOlpfB_tZS-QA" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8b-_AHh8EeOlpfB_tZS-QA" width="87"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_5CvLSnh8EeOlpfB_tZS-QA" visible="false" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5CvLS3h8EeOlpfB_tZS-QA" y="-1" width="87"/>
+ </children>
+ <element xmi:type="uml:State" href="architecture-v3.uml#_5CvLQHh8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5CvLQnh8EeOlpfB_tZS-QA" x="474" y="197" width="87"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_88ymAHh8EeOlpfB_tZS-QA" type="6000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_88ymAnh8EeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_88ymA3h8EeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_88ymBHh8EeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_88ymBXh8EeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_88ymBnh8EeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_88ymB3h8EeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_88ymCHh8EeOlpfB_tZS-QA" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-DXMgHh8EeOlpfB_tZS-QA" width="93"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_88ymCXh8EeOlpfB_tZS-QA" visible="false" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_88ymCnh8EeOlpfB_tZS-QA" y="-1" width="93"/>
+ </children>
+ <element xmi:type="uml:State" href="architecture-v3.uml#_88sfYHh8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_88ymAXh8EeOlpfB_tZS-QA" x="474" y="365" width="93"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_A8n4oHh9EeOlpfB_tZS-QA" type="666" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_A8n4o3h9EeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A8n4pHh9EeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_A8n4pXh9EeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A8n4pnh9EeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_A8n4p3h9EeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A8n4qHh9EeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_A8n4qXh9EeOlpfB_tZS-QA" type="6666"/>
+ <styles xmi:type="notation:HintedDiagramLinkStyle" xmi:id="_A8n4oXh9EeOlpfB_tZS-QA"/>
+ <element xmi:type="uml:Comment" href="architecture-v3.uml#_A8brYHh9EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_A8n4onh9EeOlpfB_tZS-QA" x="636" y="65"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_SOzyIHh9EeOlpfB_tZS-QA" type="8000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_SOzyInh9EeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_SOzyI3h9EeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_SOzyJHh9EeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_SOzyJXh9EeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_SOzyJnh9EeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_SOzyJ3h9EeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_SOzyKHh9EeOlpfB_tZS-QA" type="8001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SOzyKXh9EeOlpfB_tZS-QA" x="-17" y="-31"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_SOzyKnh9EeOlpfB_tZS-QA" type="8002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SOzyK3h9EeOlpfB_tZS-QA" x="25" y="-10"/>
+ </children>
+ <element xmi:type="uml:Pseudostate" href="architecture-v3.uml#_SOtrgHh9EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SOzyIXh9EeOlpfB_tZS-QA" x="23" y="288"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uQQgNnh8EeOlpfB_tZS-QA"/>
+ </children>
+ <element xmi:type="uml:Region" href="architecture-v3.uml#_uQQgIHh8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uQQgN3h8EeOlpfB_tZS-QA" width="847" height="516"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uQQgOHh8EeOlpfB_tZS-QA" y="25" width="847" height="516"/>
+ </children>
+ <element xmi:type="uml:StateMachine" href="architecture-v3.uml#_sqYugHh8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uQQgOXh8EeOlpfB_tZS-QA" x="30" y="30" width="847" height="541"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_uQQgOnh8EeOlpfB_tZS-QA"/>
+ <element xmi:type="uml:StateMachine" href="architecture-v3.uml#_sqYugHh8EeOlpfB_tZS-QA"/>
+ <edges xmi:type="notation:Connector" xmi:id="_PmKU4Hh9EeOlpfB_tZS-QA" type="667" source="_A8n4oHh9EeOlpfB_tZS-QA" target="_5CvLQXh8EeOlpfB_tZS-QA" lineColor="0">
+ <styles xmi:type="notation:FontStyle" xmi:id="_PmKU4Xh9EeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PmKU4nh9EeOlpfB_tZS-QA" points="[-9, 3, 58, -24]$[-54, 23, 13, -4]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PmWiIHh9EeOlpfB_tZS-QA" id="(0.05,0.6388888888888888)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PmWiIXh9EeOlpfB_tZS-QA" id="(0.8505747126436781,0.3)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_QziuAHh9EeOlpfB_tZS-QA" type="7000" source="_vdmdAHh8EeOlpfB_tZS-QA" target="_wpIcAXh8EeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_QziuA3h9EeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QziuBHh9EeOlpfB_tZS-QA" x="-9" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_QziuBXh9EeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QziuBnh9EeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_QziuB3h9EeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QziuCHh9EeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QziuAXh9EeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_QzWgwHh9EeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QziuAnh9EeOlpfB_tZS-QA" points="[10, 4, -117, -49]$[121, 51, -6, -2]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qzu7QHh9EeOlpfB_tZS-QA" id="(0.0821917808219178,0.35)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_T3VPIHh9EeOlpfB_tZS-QA" type="7000" source="_SOzyIHh9EeOlpfB_tZS-QA" target="_1MAKQHh8EeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_T3VPI3h9EeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T3VPJHh9EeOlpfB_tZS-QA" x="-6" y="17"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_T3VPJXh9EeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T3VPJnh9EeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_T3VPJ3h9EeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T3VPKHh9EeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_T3VPIXh9EeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_T3PIgHh9EeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_T3VPInh9EeOlpfB_tZS-QA" points="[10, 6, -149, 0]$[153, 5, -6, -1]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_T3hcYHh9EeOlpfB_tZS-QA" id="(0.0821917808219178,0.425)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Wz_NgHh9EeOlpfB_tZS-QA" type="7000" source="_5CvLQXh8EeOlpfB_tZS-QA" target="_88ymAHh8EeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Wz_Ng3h9EeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_W0FUIHh9EeOlpfB_tZS-QA" x="-10" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_W0FUIXh9EeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_W0FUInh9EeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_W0FUI3h9EeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_W0FUJHh9EeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Wz_NgXh9EeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_Wz5G4Hh9EeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Wz_Ngnh9EeOlpfB_tZS-QA" points="[0, 4, -22, -110]$[9, 108, -13, -6]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_W0FUJXh9EeOlpfB_tZS-QA" id="(0.21839080459770116,0.975)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_W0FUJnh9EeOlpfB_tZS-QA" id="(0.1827956989247312,0.15)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_X_U_QXh9EeOlpfB_tZS-QA" type="7000" source="_88ymAHh8EeOlpfB_tZS-QA" target="_5CvLQXh8EeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_X_U_RHh9EeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_X_U_RXh9EeOlpfB_tZS-QA" x="-38" y="48"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_X_U_Rnh9EeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_X_U_R3h9EeOlpfB_tZS-QA" x="-8" y="37"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_X_U_SHh9EeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_X_U_SXh9EeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_X_U_Qnh9EeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_X_U_QHh9EeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_X_U_Q3h9EeOlpfB_tZS-QA" points="[-3, -8, 37, 114]$[-28, -119, 12, 3]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_X_nTIHh9EeOlpfB_tZS-QA" id="(0.8494623655913979,0.2)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_X_nTIXh9EeOlpfB_tZS-QA" id="(0.8620689655172413,0.75)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_ZpaigHh9EeOlpfB_tZS-QA" type="7000" source="_wpIcAXh8EeOlpfB_tZS-QA" target="_5CvLQXh8EeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Zpaig3h9EeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZpaihHh9EeOlpfB_tZS-QA" x="-23" y="-18"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_ZpaihXh9EeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Zpaihnh9EeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Zpaih3h9EeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZpaiiHh9EeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_ZpaigXh9EeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_ZpOVQHh9EeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Zpaignh9EeOlpfB_tZS-QA" points="[10, 1, -218, -28]$[225, 29, -3, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZpgpIHh9EeOlpfB_tZS-QA" id="(0.863013698630137,0.525)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZpgpIXh9EeOlpfB_tZS-QA" id="(0.034482758620689655,0.5)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_a0RzIHh9EeOlpfB_tZS-QA" type="7000" source="_1MAKQHh8EeOlpfB_tZS-QA" target="_5CvLQXh8EeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_a0RzI3h9EeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_a0RzJHh9EeOlpfB_tZS-QA" x="-14" y="-1"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_a0RzJXh9EeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_a0RzJnh9EeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_a0RzJ3h9EeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_a0RzKHh9EeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_a0RzIXh9EeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_a0LsgHh9EeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_a0RzInh9EeOlpfB_tZS-QA" points="[8, -5, -225, 116]$[229, -120, -4, 1]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a0eAYHh9EeOlpfB_tZS-QA" id="(0.8904109589041096,0.375)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a0eAYXh9EeOlpfB_tZS-QA" id="(0.04597701149425287,0.8)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_GqKscXiMEeOlpfB_tZS-QA" type="PapyrusUMLStateMachineDiagram" name="Layer Life Cycle v2" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_GqKscniMEeOlpfB_tZS-QA" type="2000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GqKsc3iMEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GqKsdHiMEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GqKsdXiMEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GqKsdniMEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GqKsd3iMEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GqKseHiMEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_GqKseXiMEeOlpfB_tZS-QA" type="2001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqKseniMEeOlpfB_tZS-QA" width="871" height="25"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_GqKse3iMEeOlpfB_tZS-QA" type="2002">
+ <children xmi:type="notation:Shape" xmi:id="_GqKsfHiMEeOlpfB_tZS-QA" type="3000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GqKsfXiMEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GqKsfniMEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GqKsf3iMEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GqKsgHiMEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GqKsgXiMEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GqKsgniMEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GqKsg3iMEeOlpfB_tZS-QA" source="RegionAnnotationKey">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GqKshHiMEeOlpfB_tZS-QA" key="RegionZoneKey" value=""/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_GqKshXiMEeOlpfB_tZS-QA" type="3002">
+ <children xmi:type="notation:Shape" xmi:id="_IReBcHiMEeOlpfB_tZS-QA" type="8000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_IReBcniMEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_IReBc3iMEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_IReBdHiMEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_IReBdXiMEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_IReBdniMEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_IReBd3iMEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_IReBeHiMEeOlpfB_tZS-QA" type="8001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IReBeXiMEeOlpfB_tZS-QA" x="-17" y="-32"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_IReBeniMEeOlpfB_tZS-QA" type="8002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IReBe3iMEeOlpfB_tZS-QA" x="25" y="-10"/>
+ </children>
+ <element xmi:type="uml:Pseudostate" href="architecture-v3.uml#_IRX60HiMEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IReBcXiMEeOlpfB_tZS-QA" x="41" y="223"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_IqdJMXiMEeOlpfB_tZS-QA" type="6000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_IqdJM3iMEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_IqdJNHiMEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_IqdJNXiMEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_IqdJNniMEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_IqdJN3iMEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_IqdJOHiMEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_IqdJOXiMEeOlpfB_tZS-QA" type="6001"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_IqdJOniMEeOlpfB_tZS-QA" visible="false" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IqdJO3iMEeOlpfB_tZS-QA"/>
+ </children>
+ <element xmi:type="uml:State" href="architecture-v3.uml#_IqdJMHiMEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IqdJMniMEeOlpfB_tZS-QA" x="174" y="215"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_KcUvcXiMEeOlpfB_tZS-QA" type="6000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_KcUvc3iMEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_KcUvdHiMEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_KcUvdXiMEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_KcUvdniMEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Kca2EHiMEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Kca2EXiMEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Kca2EniMEeOlpfB_tZS-QA" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ObVisHiMEeOlpfB_tZS-QA" width="111"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Kca2E3iMEeOlpfB_tZS-QA" visible="false" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Kca2FHiMEeOlpfB_tZS-QA" y="-1" width="111"/>
+ </children>
+ <element xmi:type="uml:State" href="architecture-v3.uml#_KcUvcHiMEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KcUvcniMEeOlpfB_tZS-QA" x="442" y="122" width="111"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_M9r48XiMEeOlpfB_tZS-QA" type="6000" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_M9r483iMEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_M9r49HiMEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_M9r49XiMEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_M9r49niMEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_M9r493iMEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_M9r4-HiMEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_M9r4-XiMEeOlpfB_tZS-QA" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OG1SUHiMEeOlpfB_tZS-QA" width="109"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_M9x_kHiMEeOlpfB_tZS-QA" visible="false" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_M9x_kXiMEeOlpfB_tZS-QA" y="-1" width="109"/>
+ </children>
+ <element xmi:type="uml:State" href="architecture-v3.uml#_M9r48HiMEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_M9r48niMEeOlpfB_tZS-QA" x="444" y="293" width="109"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqKshniMEeOlpfB_tZS-QA"/>
+ </children>
+ <element xmi:type="uml:Region" href="architecture-v3.uml#_GqKscHiMEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqKsh3iMEeOlpfB_tZS-QA" width="871" height="510"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqKsiHiMEeOlpfB_tZS-QA" y="25" width="871" height="510"/>
+ </children>
+ <element xmi:type="uml:StateMachine" href="architecture-v3.uml#_E3DwEHiMEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GqKsiXiMEeOlpfB_tZS-QA" x="30" y="30" width="871" height="535"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_GqKsiniMEeOlpfB_tZS-QA"/>
+ <element xmi:type="uml:StateMachine" href="architecture-v3.uml#_E3DwEHiMEeOlpfB_tZS-QA"/>
+ <edges xmi:type="notation:Connector" xmi:id="_Qsyn8HiMEeOlpfB_tZS-QA" type="7000" source="_IReBcHiMEeOlpfB_tZS-QA" target="_IqdJMXiMEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Qsyn83iMEeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Qsyn9HiMEeOlpfB_tZS-QA" x="-3" y="26"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Qsyn9XiMEeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Qsyn9niMEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Qsyn93iMEeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Qsyn-HiMEeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Qsyn8XiMEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_QsmasHiMEeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Qsyn8niMEeOlpfB_tZS-QA" points="[10, -1, -133, -3]$[134, -18, -9, -20]"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_S2Hr8HiMEeOlpfB_tZS-QA" type="7000" source="_IqdJMXiMEeOlpfB_tZS-QA" target="_KcUvcXiMEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_S2NykHiMEeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_S2NykXiMEeOlpfB_tZS-QA" x="-18" y="-27"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_S2NykniMEeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_S2Nyk3iMEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_S2NylHiMEeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_S2NylXiMEeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_S2Hr8XiMEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_S2BlUHiMEeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_S2Hr8niMEeOlpfB_tZS-QA" points="[9, -4, -238, 80]$[237, -82, -10, 2]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_S2NylniMEeOlpfB_tZS-QA" id="(0.775,0.45)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_S2Nyl3iMEeOlpfB_tZS-QA" id="(0.12345679012345678,0.675)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_T6f6EHiMEeOlpfB_tZS-QA" type="7000" source="_IqdJMXiMEeOlpfB_tZS-QA" target="_M9r48XiMEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_T6f6E3iMEeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T6f6FHiMEeOlpfB_tZS-QA" x="-22" y="24"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_T6f6FXiMEeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T6f6FniMEeOlpfB_tZS-QA" x="-16" y="15"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_T6mAsHiMEeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T6mAsXiMEeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_T6f6EXiMEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_T6ZzcHiMEeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_T6f6EniMEeOlpfB_tZS-QA" points="[9, 2, -236, -75]$[239, 77, -6, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_T6mAsniMEeOlpfB_tZS-QA" id="(0.775,0.55)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_T6mAs3iMEeOlpfB_tZS-QA" id="(0.0759493670886076,0.525)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_VI_GcHiMEeOlpfB_tZS-QA" type="7000" source="_M9r48XiMEeOlpfB_tZS-QA" target="_KcUvcXiMEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VI_Gc3iMEeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VI_GdHiMEeOlpfB_tZS-QA" x="-28" y="48"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_VI_GdXiMEeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VI_GdniMEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_VI_Gd3iMEeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VI_GeHiMEeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VI_GcXiMEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_VI4_0HiMEeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VI_GcniMEeOlpfB_tZS-QA" points="[1, -2, -68, 138]$[65, -133, -4, 7]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VJLTsHiMEeOlpfB_tZS-QA" id="(0.7981651376146789,0.075)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VJLTsXiMEeOlpfB_tZS-QA" id="(0.7207207207207207,0.825)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_WO4-kHiMEeOlpfB_tZS-QA" type="7000" source="_KcUvcXiMEeOlpfB_tZS-QA" target="_M9r48XiMEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_WO_FMHiMEeOlpfB_tZS-QA" type="7001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_WO_FMXiMEeOlpfB_tZS-QA" x="-21" y="11"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_WO_FMniMEeOlpfB_tZS-QA" type="7002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_WO_FM3iMEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_WO_FNHiMEeOlpfB_tZS-QA" type="7003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_WO_FNXiMEeOlpfB_tZS-QA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_WO4-kXiMEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Transition" href="architecture-v3.uml#_WOy38HiMEeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_WO4-kniMEeOlpfB_tZS-QA" points="[2, 5, -71, -136]$[71, 136, -2, -5]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_WPFL0HiMEeOlpfB_tZS-QA" id="(0.0990990990990991,0.875)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_WPFL0XiMEeOlpfB_tZS-QA" id="(0.14678899082568808,0.25)"/>
+ </edges>
+ </notation:Diagram>
</xmi:XMI>
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.uml b/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.uml
index de9718f05ea..790e8074cdb 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.uml
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.documentation/models/architecture-v3.uml
@@ -4,283 +4,283 @@
<packagedElement xmi:type="uml:Dependency" xmi:id="_NCWW0LZKEeK8zaQi-hvdlw" name="" client="_IygSQLZKEeK8zaQi-hvdlw" supplier="_KxbdELZKEeK8zaQi-hvdlw"/>
<packagedElement xmi:type="uml:Dependency" xmi:id="_Xjd4EL2QEeKKJJ5BmR3W3Q" name="Dependency1" client="_IygSQLZKEeK8zaQi-hvdlw" supplier="_ShE8QL2QEeKKJJ5BmR3W3Q"/>
<packagedElement xmi:type="uml:Class" xmi:id="_BY3WkNNnEeKwWoA8j13SIg" clientDependency="_g-43MNNpEeKwWoA8j13SIg" name="LayerStackService">
- <ownedAttribute xmi:id="_Ue8PkNNnEeKwWoA8j13SIg" name="synchronizers" type="_LrbLgNNnEeKwWoA8j13SIg" aggregation="composite" association="_UfCWMNNnEeKwWoA8j13SIg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Ue8PkNNnEeKwWoA8j13SIg" name="synchronizers" type="_LrbLgNNnEeKwWoA8j13SIg" aggregation="composite" association="_UfCWMNNnEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Ue8PkdNnEeKwWoA8j13SIg"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Ue8PktNnEeKwWoA8j13SIg" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_p_kNgNNpEeKwWoA8j13SIg" name="layerStacks" type="_3qy5UNNnEeKwWoA8j13SIg" association="_p_wawNNpEeKwWoA8j13SIg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_p_kNgNNpEeKwWoA8j13SIg" name="layerStacks" type="_3qy5UNNnEeKwWoA8j13SIg" association="_p_wawNNpEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_p_kNgdNpEeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_p_kNgtNpEeKwWoA8j13SIg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_9O7HwEyeEeObF6ELIGKT-g" name="layersSynchronizer" type="_T7VDsEyeEeObF6ELIGKT-g" aggregation="composite" association="_9O7u0EyeEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_9O7HwEyeEeObF6ELIGKT-g" name="layersSynchronizer" type="_T7VDsEyeEeObF6ELIGKT-g" aggregation="composite" association="_9O7u0EyeEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9O7HwUyeEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9O7HwkyeEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <interfaceRealization xmi:id="_g-43MNNpEeKwWoA8j13SIg" name="InterfaceRealization1" client="_BY3WkNNnEeKwWoA8j13SIg" supplier="_XlXjENNpEeKwWoA8j13SIg" contract="_XlXjENNpEeKwWoA8j13SIg"/>
- <ownedOperation xmi:id="_86bKcNNoEeKwWoA8j13SIg" name="getLayerStackSynchronizer"/>
+ <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_g-43MNNpEeKwWoA8j13SIg" name="InterfaceRealization1" client="_BY3WkNNnEeKwWoA8j13SIg" supplier="_XlXjENNpEeKwWoA8j13SIg" contract="_XlXjENNpEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_86bKcNNoEeKwWoA8j13SIg" name="getLayerStackSynchronizer"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_LrbLgNNnEeKwWoA8j13SIg" clientDependency="_f9KpkNNrEeKwWoA8j13SIg _gyvmsNNrEeKwWoA8j13SIg" name="LayerStackSynchronizer">
- <ownedComment xmi:id="_z07zUNNtEeKwWoA8j13SIg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_z07zUNNtEeKwWoA8j13SIg">
<body>The Synchronizer is used to synchronize the properties of the Diagram when something change in the LayerStack.&#xD;
The class listen to change events, then ask the LayerStack to compute the new values, and then set the new values in the diagram.</body>
</ownedComment>
- <ownedAttribute xmi:id="_VXvf0NNnEeKwWoA8j13SIg" name="diagram" type="_rqknoM9UEeKO_rl5MA6s9A" association="_VX7tENNnEeKwWoA8j13SIg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_VXvf0NNnEeKwWoA8j13SIg" name="diagram" type="_rqknoM9UEeKO_rl5MA6s9A" association="_VX7tENNnEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_VXvf0dNnEeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_VXvf0tNnEeKwWoA8j13SIg" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_WYfyMNNnEeKwWoA8j13SIg" name="layerStack" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_WYl40NNnEeKwWoA8j13SIg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_WYfyMNNnEeKwWoA8j13SIg" name="layerStack" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_WYl40NNnEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WYfyMdNnEeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WYfyMtNnEeKwWoA8j13SIg" value="1"/>
</ownedAttribute>
- <interfaceRealization xmi:id="_f9KpkNNrEeKwWoA8j13SIg" name="InterfaceRealization1" client="_LrbLgNNnEeKwWoA8j13SIg" supplier="_HJLoANNqEeKwWoA8j13SIg" contract="_HJLoANNqEeKwWoA8j13SIg"/>
- <interfaceRealization xmi:id="_gyvmsNNrEeKwWoA8j13SIg" name="InterfaceRealization2" client="_LrbLgNNnEeKwWoA8j13SIg" supplier="_OS41oNNqEeKwWoA8j13SIg" contract="_OS41oNNqEeKwWoA8j13SIg"/>
- <ownedOperation xmi:id="_pEYFsNNrEeKwWoA8j13SIg" name="activate"/>
- <ownedOperation xmi:id="_qCessNNrEeKwWoA8j13SIg" name="deactivate"/>
+ <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_f9KpkNNrEeKwWoA8j13SIg" name="InterfaceRealization1" client="_LrbLgNNnEeKwWoA8j13SIg" supplier="_HJLoANNqEeKwWoA8j13SIg" contract="_HJLoANNqEeKwWoA8j13SIg"/>
+ <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_gyvmsNNrEeKwWoA8j13SIg" name="InterfaceRealization2" client="_LrbLgNNnEeKwWoA8j13SIg" supplier="_OS41oNNqEeKwWoA8j13SIg" contract="_OS41oNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_pEYFsNNrEeKwWoA8j13SIg" name="activate"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_qCessNNrEeKwWoA8j13SIg" name="deactivate"/>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_UfCWMNNnEeKwWoA8j13SIg" name="layerStackService_layerStackSynchronizer_1" memberEnd="_UfCWMdNnEeKwWoA8j13SIg _Ue8PkNNnEeKwWoA8j13SIg">
- <ownedEnd xmi:id="_UfCWMdNnEeKwWoA8j13SIg" name="layerStackService" type="_T7VDsEyeEeObF6ELIGKT-g" association="_UfCWMNNnEeKwWoA8j13SIg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_UfCWMdNnEeKwWoA8j13SIg" name="layerStackService" type="_T7VDsEyeEeObF6ELIGKT-g" association="_UfCWMNNnEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UfCWMtNnEeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UfCWM9NnEeKwWoA8j13SIg" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_VX7tENNnEeKwWoA8j13SIg" name="layerStackSynchronizer_diagram_1" memberEnd="_VX7tEdNnEeKwWoA8j13SIg _VXvf0NNnEeKwWoA8j13SIg">
- <ownedEnd xmi:id="_VX7tEdNnEeKwWoA8j13SIg" name="layerStackSynchronizer" type="_LrbLgNNnEeKwWoA8j13SIg" association="_VX7tENNnEeKwWoA8j13SIg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_VX7tEdNnEeKwWoA8j13SIg" name="layerStackSynchronizer" type="_LrbLgNNnEeKwWoA8j13SIg" association="_VX7tENNnEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_VX7tEtNnEeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_VX7tE9NnEeKwWoA8j13SIg" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_WYl40NNnEeKwWoA8j13SIg" name="layerStackSynchronizer_layerStack_1" memberEnd="_WYl40dNnEeKwWoA8j13SIg _WYfyMNNnEeKwWoA8j13SIg">
- <ownedEnd xmi:id="_WYl40dNnEeKwWoA8j13SIg" name="layerStackSynchronizer" type="_LrbLgNNnEeKwWoA8j13SIg" association="_WYl40NNnEeKwWoA8j13SIg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_WYl40dNnEeKwWoA8j13SIg" name="layerStackSynchronizer" type="_LrbLgNNnEeKwWoA8j13SIg" association="_WYl40NNnEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WYl40tNnEeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WYl409NnEeKwWoA8j13SIg" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_Tevr8NNpEeKwWoA8j13SIg" name="DiagramRemovedEventProvider"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_XlXjENNpEeKwWoA8j13SIg" name="IDiagramRemovedEventProvider">
- <ownedOperation xmi:id="_bdkjsNNpEeKwWoA8j13SIg" name="diagramRemovedEvent"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_bdkjsNNpEeKwWoA8j13SIg" name="diagramRemovedEvent"/>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_p_wawNNpEeKwWoA8j13SIg" name="layerStackService_layerStacks_1" memberEnd="_p_wawdNpEeKwWoA8j13SIg _p_kNgNNpEeKwWoA8j13SIg">
- <ownedEnd xmi:id="_p_wawdNpEeKwWoA8j13SIg" name="layerStackService" type="_BY3WkNNnEeKwWoA8j13SIg" association="_p_wawNNpEeKwWoA8j13SIg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_p_wawdNpEeKwWoA8j13SIg" name="layerStackService" type="_BY3WkNNnEeKwWoA8j13SIg" association="_p_wawNNpEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_p_wawtNpEeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_p_waw9NpEeKwWoA8j13SIg" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_z8UwcEydEeObF6ELIGKT-g" name="DerivedViewLayerSynchronizer">
- <ownedComment xmi:id="_7ZAkcEydEeObF6ELIGKT-g">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_7ZAkcEydEeObF6ELIGKT-g">
<body>RegExpSynchronizer is responsible to synchronize all the RegExp of a LayersStack.</body>
</ownedComment>
- <ownedAttribute xmi:id="_Yd4-AEygEeObF6ELIGKT-g" name="diagramEventListener" type="_HJLoANNqEeKwWoA8j13SIg" aggregation="composite" association="_YeA50EygEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Yd4-AEygEeObF6ELIGKT-g" name="diagramEventListener" type="_HJLoANNqEeKwWoA8j13SIg" aggregation="composite" association="_YeA50EygEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Yd4-AUygEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Yd4-AkygEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_ZFFg4EygEeObF6ELIGKT-g" name="layersModelEventListener" type="_OS41oNNqEeKwWoA8j13SIg" aggregation="composite" association="_ZFGvAEygEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFFg4EygEeObF6ELIGKT-g" name="layersModelEventListener" type="_OS41oNNqEeKwWoA8j13SIg" aggregation="composite" association="_ZFGvAEygEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZFFg4UygEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ZFFg4kygEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_UK_MIEylEeObF6ELIGKT-g" name="layerStack" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_UK_MI0ylEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_UK_MIEylEeObF6ELIGKT-g" name="layerStack" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_UK_MI0ylEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UK_MIUylEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UK_MIkylEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_S_ae8EynEeObF6ELIGKT-g" name="regExpLayerEventListener" type="_hYZzMEymEeObF6ELIGKT-g" aggregation="composite" association="_S_btEEynEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_S_ae8EynEeObF6ELIGKT-g" name="regExpLayerEventListener" type="_hYZzMEymEeObF6ELIGKT-g" aggregation="composite" association="_S_btEEynEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_S_ae8UynEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_S_ae8kynEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_m-hRsEynEeObF6ELIGKT-g" name="level1ViewChangedEventNotifier" type="_PHzwsEymEeObF6ELIGKT-g" aggregation="composite" association="_m-if0EynEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_m-hRsEynEeObF6ELIGKT-g" name="level1ViewChangedEventNotifier" type="_PHzwsEymEeObF6ELIGKT-g" aggregation="composite" association="_m-if0EynEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_m-hRsUynEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_m-hRskynEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_pSrFoEynEeObF6ELIGKT-g" name="anyViewChangedEventNotifier" type="_PHzwsEymEeObF6ELIGKT-g" aggregation="composite" association="_pSsTwEynEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_pSrFoEynEeObF6ELIGKT-g" name="anyViewChangedEventNotifier" type="_PHzwsEymEeObF6ELIGKT-g" aggregation="composite" association="_pSsTwEynEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_pSrFoUynEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_pSrFokynEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_0WZRwEynEeObF6ELIGKT-g" name="domainChangedEventNotifier" type="_NNG-kEymEeObF6ELIGKT-g" aggregation="composite" association="_0Waf4EynEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_0WZRwEynEeObF6ELIGKT-g" name="domainChangedEventNotifier" type="_NNG-kEymEeObF6ELIGKT-g" aggregation="composite" association="_0Waf4EynEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_0WZRwUynEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_0WZRwkynEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_x4a2oEyrEeObF6ELIGKT-g" name="domainPropertyChangedEventListener" type="_qwDXsEypEeObF6ELIGKT-g" aggregation="composite" association="_x4cEwEyrEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_x4a2oEyrEeObF6ELIGKT-g" name="domainPropertyChangedEventListener" type="_qwDXsEypEeObF6ELIGKT-g" aggregation="composite" association="_x4cEwEyrEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_x4a2oUyrEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_x4a2okyrEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_T7VDsEyeEeObF6ELIGKT-g" name="LayerStackApplicationSynchronizer">
- <ownedAttribute xmi:id="_mrgIsEyfEeObF6ELIGKT-g" name="regExpSynchronizers" type="_z8UwcEydEeObF6ELIGKT-g" aggregation="composite" association="_mrhW0EyfEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_mrgIsEyfEeObF6ELIGKT-g" name="regExpSynchronizers" type="_z8UwcEydEeObF6ELIGKT-g" aggregation="composite" association="_mrhW0EyfEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_mrgIsUyfEeObF6ELIGKT-g"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_mrgIskyfEeObF6ELIGKT-g" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_9O7u0EyeEeObF6ELIGKT-g" name="layerStackService_layerStackApplicationSynchronizer_1" memberEnd="_9O7u0UyeEeObF6ELIGKT-g _9O7HwEyeEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_9O7u0UyeEeObF6ELIGKT-g" name="layerStackService" type="_BY3WkNNnEeKwWoA8j13SIg" association="_9O7u0EyeEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_9O7u0UyeEeObF6ELIGKT-g" name="layerStackService" type="_BY3WkNNnEeKwWoA8j13SIg" association="_9O7u0EyeEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9O7u0kyeEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9O7u00yeEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_mrhW0EyfEeObF6ELIGKT-g" name="layerStackApplicationSynchronizer_regExpSynchronizer_1" memberEnd="_mrhW0UyfEeObF6ELIGKT-g _mrgIsEyfEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_mrhW0UyfEeObF6ELIGKT-g" name="layerStackApplicationSynchronizer" type="_T7VDsEyeEeObF6ELIGKT-g" association="_mrhW0EyfEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_mrhW0UyfEeObF6ELIGKT-g" name="layerStackApplicationSynchronizer" type="_T7VDsEyeEeObF6ELIGKT-g" association="_mrhW0EyfEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_mrhW0kyfEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_mrhW00yfEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_YeA50EygEeObF6ELIGKT-g" name="regExpSynchronizer_iDiagramEventListener_1" memberEnd="_YeA50UygEeObF6ELIGKT-g _Yd4-AEygEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_YeA50UygEeObF6ELIGKT-g" name="regExpSynchronizer" type="_PHzwsEymEeObF6ELIGKT-g" association="_YeA50EygEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_YeA50UygEeObF6ELIGKT-g" name="regExpSynchronizer" type="_PHzwsEymEeObF6ELIGKT-g" association="_YeA50EygEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YeA50kygEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YeA500ygEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_ZFGvAEygEeObF6ELIGKT-g" name="regExpSynchronizer_iLayersModelEventListener_1" memberEnd="_ZFGvAUygEeObF6ELIGKT-g _ZFFg4EygEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_ZFGvAUygEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_ZFGvAEygEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_ZFGvAUygEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_ZFGvAEygEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZFGvAkygEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ZFGvA0ygEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_-mWi0EygEeObF6ELIGKT-g" clientDependency="_Z_oBEEyhEeObF6ELIGKT-g" name="LayersStackAndApplicationLifeCycleEventNotifier"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_GmQYoEyhEeObF6ELIGKT-g" name="ILayersStackApplicationEventListener">
- <ownedOperation xmi:id="_L2KMAEyhEeObF6ELIGKT-g" name="layerStackAdded"/>
- <ownedOperation xmi:id="_M_w4YEyhEeObF6ELIGKT-g" name="layerStackRemoved"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_L2KMAEyhEeObF6ELIGKT-g" name="layerStackAdded"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_M_w4YEyhEeObF6ELIGKT-g" name="layerStackRemoved"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_VVf0QEyhEeObF6ELIGKT-g" clientDependency="_bc3bIEyhEeObF6ELIGKT-g" name="LayersStackApplicationEventNotifier"/>
<packagedElement xmi:type="uml:Usage" xmi:id="_Z_oBEEyhEeObF6ELIGKT-g" name="Usage1" client="_-mWi0EygEeObF6ELIGKT-g" supplier="_GmQYoEyhEeObF6ELIGKT-g"/>
<packagedElement xmi:type="uml:Usage" xmi:id="_bc3bIEyhEeObF6ELIGKT-g" name="Usage2" client="_VVf0QEyhEeObF6ELIGKT-g" supplier="_GmQYoEyhEeObF6ELIGKT-g"/>
<packagedElement xmi:type="uml:Class" xmi:id="_loxOcEyhEeObF6ELIGKT-g" clientDependency="_uaimEEyhEeObF6ELIGKT-g" name="NotationDiagramRemovedFromResourceEventNotifier"/>
<packagedElement xmi:type="uml:Interface" xmi:id="_qDr6kEyhEeObF6ELIGKT-g" name="INotationDiagramRemovedEventListener">
- <ownedOperation xmi:id="_s_IYAEyhEeObF6ELIGKT-g" name="diagramRemoved"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_s_IYAEyhEeObF6ELIGKT-g" name="diagramRemoved"/>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_uaimEEyhEeObF6ELIGKT-g" name="Usage3" client="_loxOcEyhEeObF6ELIGKT-g" supplier="_qDr6kEyhEeObF6ELIGKT-g"/>
<packagedElement xmi:type="uml:Class" xmi:id="_a8pioEykEeObF6ELIGKT-g" clientDependency="_cXr9QEykEeObF6ELIGKT-g" name="LayersModelEventNotifier"/>
<packagedElement xmi:type="uml:Usage" xmi:id="_cXr9QEykEeObF6ELIGKT-g" name="Usage4" client="_a8pioEykEeObF6ELIGKT-g" supplier="_OS41oNNqEeKwWoA8j13SIg"/>
<packagedElement xmi:type="uml:Association" xmi:id="_UK_MI0ylEeObF6ELIGKT-g" name="regExpSynchronizer_layerStack_1" memberEnd="_UK_MJEylEeObF6ELIGKT-g _UK_MIEylEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_UK_MJEylEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_UK_MI0ylEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_UK_MJEylEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_UK_MI0ylEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UK_MJUylEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UK_MJkylEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_iIr2EEylEeObF6ELIGKT-g" name="EventNotifier">
- <ownedComment xmi:id="_wC9YkEylEeObF6ELIGKT-g">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_wC9YkEylEeObF6ELIGKT-g">
<body>This class is used to record a list of listeners, and to send the associated event when the fireMethod is called</body>
</ownedComment>
- <ownedAttribute xmi:id="_9fD74EymEeObF6ELIGKT-g" name="listeners" type="_u6-HIM-xEeKO_rl5MA6s9A" association="_9fFKAEymEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_9fD74EymEeObF6ELIGKT-g" name="listeners" type="_u6-HIM-xEeKO_rl5MA6s9A" association="_9fFKAEymEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9fD74UymEeObF6ELIGKT-g"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9fD74kymEeObF6ELIGKT-g" value="*"/>
</ownedAttribute>
- <ownedOperation xmi:id="_32mUAEylEeObF6ELIGKT-g" name="attachListener"/>
- <ownedOperation xmi:id="_52Ii0EylEeObF6ELIGKT-g" name="removeListener"/>
- <ownedOperation xmi:id="_71ZE0EylEeObF6ELIGKT-g" name="fireEvent"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_32mUAEylEeObF6ELIGKT-g" name="attachListener"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_52Ii0EylEeObF6ELIGKT-g" name="removeListener"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_71ZE0EylEeObF6ELIGKT-g" name="fireEvent"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_NNG-kEymEeObF6ELIGKT-g" name="DomainChangedEventManager">
- <generalization xmi:id="_JsQRgEynEeObF6ELIGKT-g" general="_iIr2EEylEeObF6ELIGKT-g"/>
- <ownedAttribute xmi:id="_itq40EytEeObF6ELIGKT-g" name="domainPropertyChangedEventNotifier" type="_rezFUEyvEeObF6ELIGKT-g" association="_itrf4EytEeObF6ELIGKT-g">
+ <generalization xmi:type="uml:Generalization" xmi:id="_JsQRgEynEeObF6ELIGKT-g" general="_iIr2EEylEeObF6ELIGKT-g"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_itq40EytEeObF6ELIGKT-g" name="domainPropertyChangedEventNotifier" type="_rezFUEyvEeObF6ELIGKT-g" association="_itrf4EytEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_itq40UytEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_itq40kytEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <ownedOperation xmi:id="_KiB0MEytEeObF6ELIGKT-g" name="startListening"/>
- <ownedOperation xmi:id="_MECZgEytEeObF6ELIGKT-g" name="stopListening"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_KiB0MEytEeObF6ELIGKT-g" name="startListening"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MECZgEytEeObF6ELIGKT-g" name="stopListening"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_PHzwsEymEeObF6ELIGKT-g" name="ViewListChangedEventManager">
- <generalization xmi:id="_KWW-cEynEeObF6ELIGKT-g" general="_iIr2EEylEeObF6ELIGKT-g"/>
- <ownedAttribute xmi:id="_I--QkEyuEeObF6ELIGKT-g" name="diagramViewEventNotifier" type="_JwRLoEyjEeObF6ELIGKT-g" association="_I--3oEyuEeObF6ELIGKT-g">
+ <generalization xmi:type="uml:Generalization" xmi:id="_KWW-cEynEeObF6ELIGKT-g" general="_iIr2EEylEeObF6ELIGKT-g"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_I--QkEyuEeObF6ELIGKT-g" name="diagramViewEventNotifier" type="_JwRLoEyjEeObF6ELIGKT-g" association="_I--3oEyuEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_I--QkUyuEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_I--QkkyuEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <ownedOperation xmi:id="_xe-J8EytEeObF6ELIGKT-g" name="startListening"/>
- <ownedOperation xmi:id="_xe-J8UytEeObF6ELIGKT-g" name="stopListening"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_xe-J8EytEeObF6ELIGKT-g" name="startListening"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_xe-J8UytEeObF6ELIGKT-g" name="stopListening"/>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_hYZzMEymEeObF6ELIGKT-g" name="IRegExpLayerEventListener">
- <ownedOperation xmi:id="_psYbkEymEeObF6ELIGKT-g" name="selectedEventTypesChanged"/>
- <ownedOperation xmi:id="_vtheoEymEeObF6ELIGKT-g" name="expressionChanged"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_psYbkEymEeObF6ELIGKT-g" name="selectedEventTypesChanged"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_vtheoEymEeObF6ELIGKT-g" name="expressionChanged"/>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_9fFKAEymEeObF6ELIGKT-g" name="eventNotifier_regExpLayer_1" memberEnd="_9fFKAUymEeObF6ELIGKT-g _9fD74EymEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_9fFKAUymEeObF6ELIGKT-g" name="eventNotifier" type="_iIr2EEylEeObF6ELIGKT-g" association="_9fFKAEymEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_9fFKAUymEeObF6ELIGKT-g" name="eventNotifier" type="_iIr2EEylEeObF6ELIGKT-g" association="_9fFKAEymEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9fFKAkymEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9fFKA0ymEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_S_btEEynEeObF6ELIGKT-g" name="regExpSynchronizer_iRegExpLayerEventListener_1" memberEnd="_S_btEUynEeObF6ELIGKT-g _S_ae8EynEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_S_btEUynEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_S_btEEynEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_S_btEUynEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_S_btEEynEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_S_btEkynEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_S_btE0ynEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_m-if0EynEeObF6ELIGKT-g" name="regExpSynchronizer_viewListChangedEventNotifier_1" memberEnd="_m-if0UynEeObF6ELIGKT-g _m-hRsEynEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_m-if0UynEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_m-if0EynEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_m-if0UynEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_m-if0EynEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_m-if0kynEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_m-if00ynEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_pSsTwEynEeObF6ELIGKT-g" name="regExpSynchronizer_viewListChangedEventNotifier_2" memberEnd="_pSsTwUynEeObF6ELIGKT-g _pSrFoEynEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_pSsTwUynEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_pSsTwEynEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_pSsTwUynEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_pSsTwEynEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_pSsTwkynEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_pSsTw0ynEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_0Waf4EynEeObF6ELIGKT-g" name="regExpSynchronizer_domainChangedEventNotifier_1" memberEnd="_0Waf4UynEeObF6ELIGKT-g _0WZRwEynEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_0Waf4UynEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_0Waf4EynEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_0Waf4UynEeObF6ELIGKT-g" name="regExpSynchronizer" type="_z8UwcEydEeObF6ELIGKT-g" association="_0Waf4EynEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_0Waf4kynEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_0Waf40ynEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_l9oKgEypEeObF6ELIGKT-g" clientDependency="_uEDfEEypEeObF6ELIGKT-g" name="DomainPropertyChangedEventNotifier">
- <ownedComment xmi:id="_Bigb0EyqEeObF6ELIGKT-g" annotatedElement="_l9oKgEypEeObF6ELIGKT-g">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Bigb0EyqEeObF6ELIGKT-g" annotatedElement="_l9oKgEypEeObF6ELIGKT-g">
<body>This notifier allows to listen on property changes on any children of the specified object.</body>
</ownedComment>
- <ownedOperation xmi:id="_WxdF0EyqEeObF6ELIGKT-g" name="attachListener"/>
- <ownedOperation xmi:id="_YO_a0EyqEeObF6ELIGKT-g" name="removeListener"/>
- <ownedOperation xmi:id="_Z096IEyqEeObF6ELIGKT-g" name="addObservedObject">
- <ownedParameter xmi:id="_s2Rn4EyqEeObF6ELIGKT-g" name="obj" type="_3MwTgEyqEeObF6ELIGKT-g"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_WxdF0EyqEeObF6ELIGKT-g" name="attachListener"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_YO_a0EyqEeObF6ELIGKT-g" name="removeListener"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Z096IEyqEeObF6ELIGKT-g" name="addObservedObject">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_s2Rn4EyqEeObF6ELIGKT-g" name="obj" type="_3MwTgEyqEeObF6ELIGKT-g"/>
</ownedOperation>
- <ownedOperation xmi:id="_bz66IEyqEeObF6ELIGKT-g" name="removeObservedObject"/>
- <ownedOperation xmi:id="_oHUooEyuEeObF6ELIGKT-g" name="stopListening"/>
- <ownedOperation xmi:id="_oHVPsEyuEeObF6ELIGKT-g" name="startListening"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_bz66IEyqEeObF6ELIGKT-g" name="removeObservedObject"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_oHUooEyuEeObF6ELIGKT-g" name="stopListening"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_oHVPsEyuEeObF6ELIGKT-g" name="startListening"/>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_qwDXsEypEeObF6ELIGKT-g" name="IDomainPropertyChangedEventListener"/>
<packagedElement xmi:type="uml:Usage" xmi:id="_uEDfEEypEeObF6ELIGKT-g" name="Usage5" client="_l9oKgEypEeObF6ELIGKT-g" supplier="_qwDXsEypEeObF6ELIGKT-g"/>
<packagedElement xmi:type="uml:Association" xmi:id="_x4cEwEyrEeObF6ELIGKT-g" name="regExpSynchronizer_iDomainPropertyChangedEventNotiffier_1" memberEnd="_x4cEwUyrEeObF6ELIGKT-g _x4a2oEyrEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_x4cEwUyrEeObF6ELIGKT-g" name="regExpSynchronizer" type="_NNG-kEymEeObF6ELIGKT-g" association="_x4cEwEyrEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_x4cEwUyrEeObF6ELIGKT-g" name="regExpSynchronizer" type="_NNG-kEymEeObF6ELIGKT-g" association="_x4cEwEyrEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_x4cEwkyrEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_x4cEw0yrEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_itrf4EytEeObF6ELIGKT-g" name="domainChangedEventManager_domainPropertyChangedEventNotifier_1" memberEnd="_itrf4UytEeObF6ELIGKT-g _itq40EytEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_itrf4UytEeObF6ELIGKT-g" name="domainChangedEventManager" type="_NNG-kEymEeObF6ELIGKT-g" association="_itrf4EytEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_itrf4UytEeObF6ELIGKT-g" name="domainChangedEventManager" type="_NNG-kEymEeObF6ELIGKT-g" association="_itrf4EytEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_itrf4kytEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_itrf40ytEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_I--3oEyuEeObF6ELIGKT-g" name="viewListChangedEventManager_diagramViewEventNotifier_1" memberEnd="_I--3oUyuEeObF6ELIGKT-g _I--QkEyuEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_I--3oUyuEeObF6ELIGKT-g" name="viewListChangedEventManager" type="_PHzwsEymEeObF6ELIGKT-g" association="_I--3oEyuEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_I--3oUyuEeObF6ELIGKT-g" name="viewListChangedEventManager" type="_PHzwsEymEeObF6ELIGKT-g" association="_I--3oEyuEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_I--3okyuEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_I--3o0yuEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_rezFUEyvEeObF6ELIGKT-g" clientDependency="_NrCFIEywEeObF6ELIGKT-g" name="DiagramDomainPropertyChangedEventNotifier">
- <ownedComment xmi:id="_8Z6ioEyvEeObF6ELIGKT-g" annotatedElement="_rezFUEyvEeObF6ELIGKT-g">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_8Z6ioEyvEeObF6ELIGKT-g" annotatedElement="_rezFUEyvEeObF6ELIGKT-g">
<body>Fire events when a property of one of the domain element of the diagram is modified.&#xD;
This notifier tracks the diagram root elements, and listen to their asociated domain elements.&#xD;
</body>
</ownedComment>
- <ownedAttribute xmi:id="_WYVzgEywEeObF6ELIGKT-g" name="domainPropertyChangedEventNotifier" type="_l9oKgEypEeObF6ELIGKT-g" aggregation="composite" association="_WYWakEywEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_WYVzgEywEeObF6ELIGKT-g" name="domainPropertyChangedEventNotifier" type="_l9oKgEypEeObF6ELIGKT-g" aggregation="composite" association="_WYWakEywEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WYVzgUywEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WYVzgkywEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_gjmGkEywEeObF6ELIGKT-g" name="diagramViewEventNotifier" type="_JwRLoEyjEeObF6ELIGKT-g" association="_gjmtoEywEeObF6ELIGKT-g">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gjmGkEywEeObF6ELIGKT-g" name="diagramViewEventNotifier" type="_JwRLoEyjEeObF6ELIGKT-g" association="_gjmtoEywEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gjmGkUywEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_gjmGkkywEeObF6ELIGKT-g" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_NrCFIEywEeObF6ELIGKT-g" name="Usage6" client="_rezFUEyvEeObF6ELIGKT-g" supplier="_qwDXsEypEeObF6ELIGKT-g"/>
<packagedElement xmi:type="uml:Association" xmi:id="_WYWakEywEeObF6ELIGKT-g" name="diagramDomainPropertyChangedEventNotifier_domainPropertyChangedEventNotifier_1" memberEnd="_WYWakUywEeObF6ELIGKT-g _WYVzgEywEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_WYWakUywEeObF6ELIGKT-g" name="diagramDomainPropertyChangedEventNotifier" type="_rezFUEyvEeObF6ELIGKT-g" association="_WYWakEywEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_WYWakUywEeObF6ELIGKT-g" name="diagramDomainPropertyChangedEventNotifier" type="_rezFUEyvEeObF6ELIGKT-g" association="_WYWakEywEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WYWakkywEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WYWak0ywEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_gjmtoEywEeObF6ELIGKT-g" name="diagramDomainPropertyChangedEventNotifier_diagramViewEventNotifier_1" memberEnd="_gjmtoUywEeObF6ELIGKT-g _gjmGkEywEeObF6ELIGKT-g">
- <ownedEnd xmi:id="_gjmtoUywEeObF6ELIGKT-g" name="diagramDomainPropertyChangedEventNotifier" type="_rezFUEyvEeObF6ELIGKT-g" association="_gjmtoEywEeObF6ELIGKT-g">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_gjmtoUywEeObF6ELIGKT-g" name="diagramDomainPropertyChangedEventNotifier" type="_rezFUEyvEeObF6ELIGKT-g" association="_gjmtoEywEeObF6ELIGKT-g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gjmtokywEeObF6ELIGKT-g" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_gjmto0ywEeObF6ELIGKT-g" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Model" xmi:id="_bAQtoFzGEeOeP67GJGKDkA" name="regexp">
<packagedElement xmi:type="uml:Class" xmi:id="_sc15QFzGEeOeP67GJGKDkA" clientDependency="_vWp3oFzJEeOeP67GJGKDkA" name="ExpressionMatcher">
- <ownedComment xmi:id="_lp2GAFzHEeOeP67GJGKDkA" annotatedElement="_sc15QFzGEeOeP67GJGKDkA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_lp2GAFzHEeOeP67GJGKDkA" annotatedElement="_sc15QFzGEeOeP67GJGKDkA">
<body>This class evaluate its associated expression against the associated models.&#xD;
It provide a list of elements matching the expression in the model.&#xD;
It fire some events when the list of matching elements change.&#xD;
@@ -288,74 +288,74 @@ The expression is evaluated each time a change impacting the result occurs in t
&#xD;
It maybe necessary to adjust the listeners on model changes to improve performances.</body>
</ownedComment>
- <ownedAttribute xmi:id="_GIXm0FzIEeOeP67GJGKDkA" name="expr" visibility="public" type="_70TEoNIPEeKovM8ingMMQQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_GIXm0FzIEeOeP67GJGKDkA" name="expr" visibility="public" type="_70TEoNIPEeKovM8ingMMQQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Hwmv8FzIEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Hwmv8VzIEeOeP67GJGKDkA" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_Hwmv8lzIEeOeP67GJGKDkA">
<value xsi:nil="true"/>
</defaultValue>
</ownedAttribute>
- <ownedAttribute xmi:id="_ISLL8FzIEeOeP67GJGKDkA" name="model" visibility="public" type="_t0NNoM9UEeKO_rl5MA6s9A">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ISLL8FzIEeOeP67GJGKDkA" name="model" visibility="public" type="_t0NNoM9UEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_RvpL8FzIEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_RvpL8VzIEeOeP67GJGKDkA" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_RvpL8lzIEeOeP67GJGKDkA">
<value xsi:nil="true"/>
</defaultValue>
</ownedAttribute>
- <ownedAttribute xmi:id="_oFbiMFzIEeOeP67GJGKDkA" name="modelChangedListeners" visibility="public">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_oFbiMFzIEeOeP67GJGKDkA" name="modelChangedListeners" visibility="public">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_qariUFzIEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qariUVzIEeOeP67GJGKDkA" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_qariUlzIEeOeP67GJGKDkA">
<value xsi:nil="true"/>
</defaultValue>
</ownedAttribute>
- <ownedAttribute xmi:id="_dTKyIFzLEeOeP67GJGKDkA" name="expressionMatchElementsChangedListeners" type="_rYYgsFzIEeOeP67GJGKDkA" association="_dTQ4wFzLEeOeP67GJGKDkA">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_dTKyIFzLEeOeP67GJGKDkA" name="expressionMatchElementsChangedListeners" type="_rYYgsFzIEeOeP67GJGKDkA" association="_dTQ4wFzLEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_dTKyIVzLEeOeP67GJGKDkA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_dTKyIlzLEeOeP67GJGKDkA" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_IDVscFzNEeOeP67GJGKDkA" name="matchingElements" type="_j52EYNIUEeKovM8ingMMQQ" association="_IDVsc1zNEeOeP67GJGKDkA">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_IDVscFzNEeOeP67GJGKDkA" name="matchingElements" type="_j52EYNIUEeKovM8ingMMQQ" association="_IDVsc1zNEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_IDVscVzNEeOeP67GJGKDkA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_IDVsclzNEeOeP67GJGKDkA" value="*"/>
</ownedAttribute>
- <interfaceRealization xmi:id="_vWp3oFzJEeOeP67GJGKDkA" name="InterfaceRealization1" client="_sc15QFzGEeOeP67GJGKDkA" supplier="_hd8bYFzJEeOeP67GJGKDkA" contract="_hd8bYFzJEeOeP67GJGKDkA"/>
- <ownedOperation xmi:id="_dUYacFzIEeOeP67GJGKDkA" name="addMatchingElementsChangedListener"/>
- <ownedOperation xmi:id="_f2gY8FzIEeOeP67GJGKDkA" name="removematchingElementsChangedListener"/>
- <ownedOperation xmi:id="_kFdssFzIEeOeP67GJGKDkA" name="fireMatchingElementChanged"/>
+ <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_vWp3oFzJEeOeP67GJGKDkA" name="InterfaceRealization1" client="_sc15QFzGEeOeP67GJGKDkA" supplier="_hd8bYFzJEeOeP67GJGKDkA" contract="_hd8bYFzJEeOeP67GJGKDkA"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_dUYacFzIEeOeP67GJGKDkA" name="addMatchingElementsChangedListener"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_f2gY8FzIEeOeP67GJGKDkA" name="removematchingElementsChangedListener"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_kFdssFzIEeOeP67GJGKDkA" name="fireMatchingElementChanged"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_rYYgsFzIEeOeP67GJGKDkA" clientDependency="_bBitwFzLEeOeP67GJGKDkA" name="ExpressionMatchElementsChangedListener">
- <ownedOperation xmi:id="_rjEmYFzLEeOeP67GJGKDkA" name="expresionResultChanged"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_rjEmYFzLEeOeP67GJGKDkA" name="expresionResultChanged"/>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_4ZF98FzIEeOeP67GJGKDkA" clientDependency="_Yg2SoFzLEeOeP67GJGKDkA _ZvbloFzLEeOeP67GJGKDkA" name="IModelChangedNotifier">
- <ownedComment xmi:id="_O9YDMFzJEeOeP67GJGKDkA" annotatedElement="_4ZF98FzIEeOeP67GJGKDkA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_O9YDMFzJEeOeP67GJGKDkA" annotatedElement="_4ZF98FzIEeOeP67GJGKDkA">
<body>Interface to be implemented by class notifying changes in a model.&#xD;
This interface is used by ExpressionMatcher to listen on various part of model changes.</body>
</ownedComment>
- <ownedOperation xmi:id="__cB1MFzIEeOeP67GJGKDkA" name="addModelChangedListener">
- <ownedParameter xmi:id="_46F8wFzJEeOeP67GJGKDkA" name="listener" type="_hd8bYFzJEeOeP67GJGKDkA"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="__cB1MFzIEeOeP67GJGKDkA" name="addModelChangedListener">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_46F8wFzJEeOeP67GJGKDkA" name="listener" type="_hd8bYFzJEeOeP67GJGKDkA"/>
</ownedOperation>
- <ownedOperation xmi:id="_fsE1IFzJEeOeP67GJGKDkA" name="removeModelChangedListener">
- <ownedParameter xmi:id="_8TL_gFzJEeOeP67GJGKDkA" name="listener" type="_hd8bYFzJEeOeP67GJGKDkA"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_fsE1IFzJEeOeP67GJGKDkA" name="removeModelChangedListener">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_8TL_gFzJEeOeP67GJGKDkA" name="listener" type="_hd8bYFzJEeOeP67GJGKDkA"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_hd8bYFzJEeOeP67GJGKDkA" name="IModelChangedListener">
- <ownedComment xmi:id="_oer6QFzJEeOeP67GJGKDkA" annotatedElement="_hd8bYFzJEeOeP67GJGKDkA">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_oer6QFzJEeOeP67GJGKDkA" annotatedElement="_hd8bYFzJEeOeP67GJGKDkA">
<body>Interface implemented by listener whishing to listen on a IModelChangedNotifier.</body>
</ownedComment>
- <ownedOperation xmi:id="_-Vl8IFzJEeOeP67GJGKDkA" name="modelchanged">
- <ownedParameter xmi:id="_KmJHwFzKEeOeP67GJGKDkA" name="event" type="_Aii74FzKEeOeP67GJGKDkA"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_-Vl8IFzJEeOeP67GJGKDkA" name="modelchanged">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_KmJHwFzKEeOeP67GJGKDkA" name="event" type="_Aii74FzKEeOeP67GJGKDkA"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_Aii74FzKEeOeP67GJGKDkA" name="ModelChangedEvent"/>
<packagedElement xmi:type="uml:Class" xmi:id="_SOF7IFzLEeOeP67GJGKDkA" name="ExpressionMatcherElementsChangedEvent">
- <ownedAttribute xmi:id="_yKWcYFzLEeOeP67GJGKDkA" name="expressionMatcher" type="_sc15QFzGEeOeP67GJGKDkA" association="_yKWcY1zLEeOeP67GJGKDkA">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_yKWcYFzLEeOeP67GJGKDkA" name="expressionMatcher" type="_sc15QFzGEeOeP67GJGKDkA" association="_yKWcY1zLEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_yKWcYVzLEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_yKWcYlzLEeOeP67GJGKDkA" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_oS7O0FzMEeOeP67GJGKDkA" name="removedElements" type="_j52EYNIUEeKovM8ingMMQQ" association="_oS7O01zMEeOeP67GJGKDkA">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_oS7O0FzMEeOeP67GJGKDkA" name="removedElements" type="_j52EYNIUEeKovM8ingMMQQ" association="_oS7O01zMEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_oS7O0VzMEeOeP67GJGKDkA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_oS7O0lzMEeOeP67GJGKDkA" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_o7viUFzMEeOeP67GJGKDkA" name="addedElements" type="_j52EYNIUEeKovM8ingMMQQ" association="_o7viU1zMEeOeP67GJGKDkA">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_o7viUFzMEeOeP67GJGKDkA" name="addedElements" type="_j52EYNIUEeKovM8ingMMQQ" association="_o7viU1zMEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_o7viUVzMEeOeP67GJGKDkA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_o7viUlzMEeOeP67GJGKDkA" value="*"/>
</ownedAttribute>
@@ -364,31 +364,31 @@ This interface is used by ExpressionMatcher to listen on various part of model c
<packagedElement xmi:type="uml:Usage" xmi:id="_ZvbloFzLEeOeP67GJGKDkA" name="Usage2" client="_4ZF98FzIEeOeP67GJGKDkA" supplier="_Aii74FzKEeOeP67GJGKDkA"/>
<packagedElement xmi:type="uml:Usage" xmi:id="_bBitwFzLEeOeP67GJGKDkA" name="Usage3" client="_rYYgsFzIEeOeP67GJGKDkA" supplier="_SOF7IFzLEeOeP67GJGKDkA"/>
<packagedElement xmi:type="uml:Association" xmi:id="_dTQ4wFzLEeOeP67GJGKDkA" name="expressionMatcher_expressionMatchElementsChangedListener_1" memberEnd="_dTQ4wVzLEeOeP67GJGKDkA _dTKyIFzLEeOeP67GJGKDkA">
- <ownedEnd xmi:id="_dTQ4wVzLEeOeP67GJGKDkA" name="expressionMatcher" type="_sc15QFzGEeOeP67GJGKDkA" association="_dTQ4wFzLEeOeP67GJGKDkA">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_dTQ4wVzLEeOeP67GJGKDkA" name="expressionMatcher" type="_sc15QFzGEeOeP67GJGKDkA" association="_dTQ4wFzLEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_dTQ4wlzLEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_dTQ4w1zLEeOeP67GJGKDkA" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_yKWcY1zLEeOeP67GJGKDkA" name="expressionMatcherElementsChangedEvent_expressionMatcher_1" memberEnd="_yKWcZFzLEeOeP67GJGKDkA _yKWcYFzLEeOeP67GJGKDkA">
- <ownedEnd xmi:id="_yKWcZFzLEeOeP67GJGKDkA" name="expressionMatcherElementsChangedEvent" type="_SOF7IFzLEeOeP67GJGKDkA" association="_yKWcY1zLEeOeP67GJGKDkA">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_yKWcZFzLEeOeP67GJGKDkA" name="expressionMatcherElementsChangedEvent" type="_SOF7IFzLEeOeP67GJGKDkA" association="_yKWcY1zLEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_yKWcZVzLEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_yKWcZlzLEeOeP67GJGKDkA" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_oS7O01zMEeOeP67GJGKDkA" name="expressionMatcherElementsChangedEvent_view_1" memberEnd="_oS7O1FzMEeOeP67GJGKDkA _oS7O0FzMEeOeP67GJGKDkA">
- <ownedEnd xmi:id="_oS7O1FzMEeOeP67GJGKDkA" name="expressionMatcherElementsChangedEvent" type="_SOF7IFzLEeOeP67GJGKDkA" association="_oS7O01zMEeOeP67GJGKDkA">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_oS7O1FzMEeOeP67GJGKDkA" name="expressionMatcherElementsChangedEvent" type="_SOF7IFzLEeOeP67GJGKDkA" association="_oS7O01zMEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_oS7O1VzMEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_oS7O1lzMEeOeP67GJGKDkA" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_o7viU1zMEeOeP67GJGKDkA" name="expressionMatcherElementsChangedEvent_view_2" memberEnd="_o7viVFzMEeOeP67GJGKDkA _o7viUFzMEeOeP67GJGKDkA">
- <ownedEnd xmi:id="_o7viVFzMEeOeP67GJGKDkA" name="expressionMatcherElementsChangedEvent" type="_SOF7IFzLEeOeP67GJGKDkA" association="_o7viU1zMEeOeP67GJGKDkA">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_o7viVFzMEeOeP67GJGKDkA" name="expressionMatcherElementsChangedEvent" type="_SOF7IFzLEeOeP67GJGKDkA" association="_o7viU1zMEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_o7viVVzMEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_o7viVlzMEeOeP67GJGKDkA" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_IDVsc1zNEeOeP67GJGKDkA" clientDependency="_PlHmYFzOEeOeP67GJGKDkA" name="expressionMatcher_view_1" memberEnd="_IDVsdFzNEeOeP67GJGKDkA _IDVscFzNEeOeP67GJGKDkA">
- <ownedEnd xmi:id="_IDVsdFzNEeOeP67GJGKDkA" name="expressionMatcher" type="_sc15QFzGEeOeP67GJGKDkA" association="_IDVsc1zNEeOeP67GJGKDkA">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_IDVsdFzNEeOeP67GJGKDkA" name="expressionMatcher" type="_sc15QFzGEeOeP67GJGKDkA" association="_IDVsc1zNEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_IDVsdVzNEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_IDVsdlzNEeOeP67GJGKDkA" value="1"/>
</ownedEnd>
@@ -396,63 +396,63 @@ This interface is used by ExpressionMatcher to listen on various part of model c
<packagedElement xmi:type="uml:Class" xmi:id="_G65oQFzOEeOeP67GJGKDkA" name="NotifyingList"/>
<packagedElement xmi:type="uml:Usage" xmi:id="_PlHmYFzOEeOeP67GJGKDkA" name="Usage4" client="_IDVsc1zNEeOeP67GJGKDkA" supplier="_G65oQFzOEeOeP67GJGKDkA"/>
<packagedElement xmi:type="uml:Class" xmi:id="_IwYtwFzPEeOeP67GJGKDkA" name="NotationChangedNotifier">
- <generalization xmi:id="_Y_TMYFzPEeOeP67GJGKDkA" general="_SNeTQFzPEeOeP67GJGKDkA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_Y_TMYFzPEeOeP67GJGKDkA" general="_SNeTQFzPEeOeP67GJGKDkA"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_PA30YFzPEeOeP67GJGKDkA" clientDependency="_R09soFzPEeOeP67GJGKDkA" name="UMLChangedNotifier">
- <generalization xmi:id="_ZwmtgFzPEeOeP67GJGKDkA" general="_SNeTQFzPEeOeP67GJGKDkA"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_ZwmtgFzPEeOeP67GJGKDkA" general="_SNeTQFzPEeOeP67GJGKDkA"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_SNeTQFzPEeOeP67GJGKDkA" clientDependency="_R09soFzPEeOeP67GJGKDkA" name="AbstractModelChangedNotifier">
- <interfaceRealization xmi:id="_R09soFzPEeOeP67GJGKDkA" name="InterfaceRealization1" client="_PA30YFzPEeOeP67GJGKDkA _SNeTQFzPEeOeP67GJGKDkA" supplier="_4ZF98FzIEeOeP67GJGKDkA" contract="_4ZF98FzIEeOeP67GJGKDkA"/>
+ <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_R09soFzPEeOeP67GJGKDkA" name="InterfaceRealization1" client="_PA30YFzPEeOeP67GJGKDkA _SNeTQFzPEeOeP67GJGKDkA" supplier="_4ZF98FzIEeOeP67GJGKDkA" contract="_4ZF98FzIEeOeP67GJGKDkA"/>
</packagedElement>
</packagedElement>
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_KAehQLZKEeK8zaQi-hvdlw" clientDependency="_OVNs4LZKEeK8zaQi-hvdlw" name="ui">
- <ownedComment xmi:id="_1S4tEM9REeKO_rl5MA6s9A">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_1S4tEM9REeKO_rl5MA6s9A">
<body> </body>
</ownedComment>
<packagedElement xmi:type="uml:Dependency" xmi:id="_OVNs4LZKEeK8zaQi-hvdlw" name="Dependency1" client="_KAehQLZKEeK8zaQi-hvdlw" supplier="_IygSQLZKEeK8zaQi-hvdlw"/>
<packagedElement xmi:type="uml:Class" xmi:id="_hwJtQM9REeKO_rl5MA6s9A" name="LayersViewer">
- <ownedAttribute xmi:id="_LgxZoM9UEeKO_rl5MA6s9A" name="selectionView" type="_yeyNwM9REeKO_rl5MA6s9A" aggregation="composite" association="_Lg4HUM9UEeKO_rl5MA6s9A">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_LgxZoM9UEeKO_rl5MA6s9A" name="selectionView" type="_yeyNwM9REeKO_rl5MA6s9A" aggregation="composite" association="_Lg4HUM9UEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_LgxZoc9UEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_LgxZos9UEeKO_rl5MA6s9A" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_jfm4sM9REeKO_rl5MA6s9A" name="LayerStackUiPart">
- <generalization xmi:id="_TdEXQM9TEeKO_rl5MA6s9A" general="_G-A1kM9TEeKO_rl5MA6s9A"/>
- <ownedAttribute xmi:id="_45dq0M9UEeKO_rl5MA6s9A" name="diagram" type="_rqknoM9UEeKO_rl5MA6s9A" association="_45kYgM9UEeKO_rl5MA6s9A">
+ <generalization xmi:type="uml:Generalization" xmi:id="_TdEXQM9TEeKO_rl5MA6s9A" general="_G-A1kM9TEeKO_rl5MA6s9A"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_45dq0M9UEeKO_rl5MA6s9A" name="diagram" type="_rqknoM9UEeKO_rl5MA6s9A" association="_45kYgM9UEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_45dq0c9UEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_45dq0s9UEeKO_rl5MA6s9A" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_5vJVoM9UEeKO_rl5MA6s9A" name="layerStack" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_5vWJ8M9UEeKO_rl5MA6s9A">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_5vJVoM9UEeKO_rl5MA6s9A" name="layerStack" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_5vWJ8M9UEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_5vJVoc9UEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_5vJVos9UEeKO_rl5MA6s9A" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_l8z68M9REeKO_rl5MA6s9A" name="DiagramUiPart">
- <generalization xmi:id="_S5l2wM9TEeKO_rl5MA6s9A" general="_G-A1kM9TEeKO_rl5MA6s9A"/>
- <ownedAttribute xmi:id="_w0UIoM9UEeKO_rl5MA6s9A" name="diagram" type="_rqknoM9UEeKO_rl5MA6s9A" association="_w0iyIM9UEeKO_rl5MA6s9A">
+ <generalization xmi:type="uml:Generalization" xmi:id="_S5l2wM9TEeKO_rl5MA6s9A" general="_G-A1kM9TEeKO_rl5MA6s9A"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_w0UIoM9UEeKO_rl5MA6s9A" name="diagram" type="_rqknoM9UEeKO_rl5MA6s9A" association="_w0iyIM9UEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_w0UIoc9UEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_w0UIos9UEeKO_rl5MA6s9A" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_nrEMgM9REeKO_rl5MA6s9A" name="UnknownSelectionUiPart">
- <generalization xmi:id="_SaqfEM9TEeKO_rl5MA6s9A" general="_G-A1kM9TEeKO_rl5MA6s9A"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_SaqfEM9TEeKO_rl5MA6s9A" general="_G-A1kM9TEeKO_rl5MA6s9A"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_yeyNwM9REeKO_rl5MA6s9A" clientDependency="_Ecf7EM9TEeKO_rl5MA6s9A" name="SelectionView">
- <ownedComment xmi:id="_-YSyYM9REeKO_rl5MA6s9A">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_-YSyYM9REeKO_rl5MA6s9A">
<body>This view show the current selection among:&#xD;
- Diagram with LayerStack&#xD;
- Diagram without LayerStack&#xD;
- other selection (unknown)&#xD;
</body>
</ownedComment>
- <ownedAttribute xmi:id="__C2gYM9TEeKO_rl5MA6s9A" name="uiPart" type="_G-A1kM9TEeKO_rl5MA6s9A" aggregation="composite" association="__DARYM9TEeKO_rl5MA6s9A">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="__C2gYM9TEeKO_rl5MA6s9A" name="uiPart" type="_G-A1kM9TEeKO_rl5MA6s9A" aggregation="composite" association="__DARYM9TEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="__C2gYc9TEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="__C2gYs9TEeKO_rl5MA6s9A" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_cw2FMM9SEeKO_rl5MA6s9A" name="SelectionTracker">
- <ownedComment xmi:id="_hEcoYM9SEeKO_rl5MA6s9A">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_hEcoYM9SEeKO_rl5MA6s9A">
<body>This class track the current selection and fire following events:&#xD;
- diagramWithoutStackLayerSelected (editor, diagram)&#xD;
- diagramWithStackLayerSelected (editor, diagram, StackLayer)&#xD;
@@ -461,193 +461,193 @@ This interface is used by ExpressionMatcher to listen on various part of model c
</packagedElement>
<packagedElement xmi:type="uml:Dependency" xmi:id="_Ecf7EM9TEeKO_rl5MA6s9A" name="" client="_yeyNwM9REeKO_rl5MA6s9A" supplier="_cw2FMM9SEeKO_rl5MA6s9A"/>
<packagedElement xmi:type="uml:Class" xmi:id="_G-A1kM9TEeKO_rl5MA6s9A" name="UiPart" isAbstract="true">
- <ownedComment xmi:id="_rcDK0M9REeKO_rl5MA6s9A">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_rcDK0M9REeKO_rl5MA6s9A">
<body>A UiPart is used to show one element (and its subelements&#xD;
</body>
</ownedComment>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="__DARYM9TEeKO_rl5MA6s9A" name="selectionView_uiPart_1" memberEnd="__DARYc9TEeKO_rl5MA6s9A __C2gYM9TEeKO_rl5MA6s9A">
- <ownedEnd xmi:id="__DARYc9TEeKO_rl5MA6s9A" name="selectionView" type="_yeyNwM9REeKO_rl5MA6s9A" association="__DARYM9TEeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="__DARYc9TEeKO_rl5MA6s9A" name="selectionView" type="_yeyNwM9REeKO_rl5MA6s9A" association="__DARYM9TEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="__DARYs9TEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="__DARY89TEeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_Lg4HUM9UEeKO_rl5MA6s9A" name="layersViewer_selectionView_1" memberEnd="_Lg4HUc9UEeKO_rl5MA6s9A _LgxZoM9UEeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_Lg4HUc9UEeKO_rl5MA6s9A" name="layersViewer" type="_hwJtQM9REeKO_rl5MA6s9A" association="_Lg4HUM9UEeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Lg4HUc9UEeKO_rl5MA6s9A" name="layersViewer" type="_hwJtQM9REeKO_rl5MA6s9A" association="_Lg4HUM9UEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Lg4HUs9UEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Lg4HU89UEeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_w0iyIM9UEeKO_rl5MA6s9A" name="diagramUiPart_diagram_1" memberEnd="_w0iyIc9UEeKO_rl5MA6s9A _w0UIoM9UEeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_w0iyIc9UEeKO_rl5MA6s9A" name="diagramUiPart" type="_l8z68M9REeKO_rl5MA6s9A" association="_w0iyIM9UEeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_w0iyIc9UEeKO_rl5MA6s9A" name="diagramUiPart" type="_l8z68M9REeKO_rl5MA6s9A" association="_w0iyIM9UEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_w0iyIs9UEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_w0iyI89UEeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_45kYgM9UEeKO_rl5MA6s9A" name="layerStackUiPart_diagram_1" memberEnd="_45kYgc9UEeKO_rl5MA6s9A _45dq0M9UEeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_45kYgc9UEeKO_rl5MA6s9A" name="layerStackUiPart" type="_jfm4sM9REeKO_rl5MA6s9A" association="_45kYgM9UEeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_45kYgc9UEeKO_rl5MA6s9A" name="layerStackUiPart" type="_jfm4sM9REeKO_rl5MA6s9A" association="_45kYgM9UEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_45kYgs9UEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_45kYg89UEeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_5vWJ8M9UEeKO_rl5MA6s9A" name="layerStackUiPart_layerStack_1" memberEnd="_5vWJ8c9UEeKO_rl5MA6s9A _5vJVoM9UEeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_5vWJ8c9UEeKO_rl5MA6s9A" name="layerStackUiPart" type="_jfm4sM9REeKO_rl5MA6s9A" association="_5vWJ8M9UEeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_5vWJ8c9UEeKO_rl5MA6s9A" name="layerStackUiPart" type="_jfm4sM9REeKO_rl5MA6s9A" association="_5vWJ8M9UEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_5vWJ8s9UEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_5vWJ889UEeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_KxbdELZKEeK8zaQi-hvdlw" clientDependency="_V114oL2QEeKKJJ5BmR3W3Q" name="stackmodel">
- <ownedComment xmi:id="_k5v3oNITEeKovM8ingMMQQ">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_k5v3oNITEeKovM8ingMMQQ">
<body>A LayerExpression allows to compute the properties of a specified view.&#xD;
A LayerExpression is the common ancestor of Layer and LayerOperator.</body>
</ownedComment>
<packagedElement xmi:type="uml:Dependency" xmi:id="_V114oL2QEeKKJJ5BmR3W3Q" name="Dependency1" client="_KxbdELZKEeK8zaQi-hvdlw" supplier="_ShE8QL2QEeKKJJ5BmR3W3Q"/>
<packagedElement xmi:type="uml:Class" xmi:id="_t0NNoM9UEeKO_rl5MA6s9A" name="LayerStack">
- <ownedAttribute xmi:id="_3hmqkM9VEeKO_rl5MA6s9A" name="diagram" type="_rqknoM9UEeKO_rl5MA6s9A" association="_3h0tAM9VEeKO_rl5MA6s9A">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_3hmqkM9VEeKO_rl5MA6s9A" name="diagram" type="_rqknoM9UEeKO_rl5MA6s9A" association="_3h0tAM9VEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_3hmqkc9VEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_3hmqks9VEeKO_rl5MA6s9A" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_4B6F4NN0EeKwWoA8j13SIg" name="selectionManager" type="_iOVr4NN0EeKwWoA8j13SIg" association="_4CAMgNN0EeKwWoA8j13SIg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_4B6F4NN0EeKwWoA8j13SIg" name="selectionManager" type="_iOVr4NN0EeKwWoA8j13SIg" association="_4CAMgNN0EeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_4B6F4dN0EeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_4B6F4tN0EeKwWoA8j13SIg" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_3h0tAM9VEeKO_rl5MA6s9A" name="layerStack_diagram_1" memberEnd="_3h0tAc9VEeKO_rl5MA6s9A _3hmqkM9VEeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_3h0tAc9VEeKO_rl5MA6s9A" name="layerStack" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_3h0tAM9VEeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_3h0tAc9VEeKO_rl5MA6s9A" name="layerStack" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_3h0tAM9VEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_3h0tAs9VEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_3h0tA89VEeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_55Ll8M9VEeKO_rl5MA6s9A" name="namedStyle_layerStack_1" memberEnd="_55Ll8c9VEeKO_rl5MA6s9A _54-KkM9VEeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_55Ll8c9VEeKO_rl5MA6s9A" name="namedStyle" type="_0Q5HwM9VEeKO_rl5MA6s9A" association="_55Ll8M9VEeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_55Ll8c9VEeKO_rl5MA6s9A" name="namedStyle" type="_0Q5HwM9VEeKO_rl5MA6s9A" association="_55Ll8M9VEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_55Ll8s9VEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_55Ll889VEeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_q3GegM-wEeKO_rl5MA6s9A" name="LayerExpression" isAbstract="true">
- <ownedAttribute xmi:id="_unLCYNIXEeKovM8ingMMQQ" name="attachedViews" type="_kextsM-0EeKO_rl5MA6s9A" isDerived="true" association="_unRJANIXEeKovM8ingMMQQ">
- <ownedComment xmi:id="_6FrGANIXEeKovM8ingMMQQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_unLCYNIXEeKovM8ingMMQQ" name="attachedViews" type="_kextsM-0EeKO_rl5MA6s9A" isDerived="true" association="_unRJANIXEeKovM8ingMMQQ">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_6FrGANIXEeKovM8ingMMQQ">
<body>List of views attached to the layerExpression. This is a derived properties.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_unLCYdIXEeKovM8ingMMQQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_unLCYtIXEeKovM8ingMMQQ" value="*"/>
</ownedAttribute>
- <ownedOperation xmi:id="__kusgNITEeKovM8ingMMQQ" name="getViewProperties">
- <ownedComment xmi:id="_Sz7FQNIUEeKovM8ingMMQQ">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="__kusgNITEeKovM8ingMMQQ" name="getViewProperties">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Sz7FQNIUEeKovM8ingMMQQ">
<body>Get the property descriptors associated to the specified view.</body>
</ownedComment>
- <ownedParameter xmi:id="_geO5INIUEeKovM8ingMMQQ" name="view" type="_j52EYNIUEeKovM8ingMMQQ"/>
- <ownedParameter xmi:id="_vg2jwNIUEeKovM8ingMMQQ" name="result" type="_UzekYM-yEeKO_rl5MA6s9A" direction="return">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_geO5INIUEeKovM8ingMMQQ" name="view" type="_j52EYNIUEeKovM8ingMMQQ"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_vg2jwNIUEeKovM8ingMMQQ" name="result" type="_UzekYM-yEeKO_rl5MA6s9A" direction="return">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_0CFTQNIUEeKovM8ingMMQQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_0CRggNIUEeKovM8ingMMQQ" value="*"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:id="_8L56ENIUEeKovM8ingMMQQ" name="getViewPropertyValues">
- <ownedComment xmi:id="_8L56EdIUEeKovM8ingMMQQ">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_8L56ENIUEeKovM8ingMMQQ" name="getViewPropertyValues">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_8L56EdIUEeKovM8ingMMQQ">
<body>Get the property values associated to the specified view.</body>
</ownedComment>
- <ownedParameter xmi:id="_8L56EtIUEeKovM8ingMMQQ" name="view" type="_j52EYNIUEeKovM8ingMMQQ"/>
- <ownedParameter xmi:id="_8L56E9IUEeKovM8ingMMQQ" name="result" type="_l4yNkM-0EeKO_rl5MA6s9A" direction="return">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_8L56EtIUEeKovM8ingMMQQ" name="view" type="_j52EYNIUEeKovM8ingMMQQ"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_8L56E9IUEeKovM8ingMMQQ" name="result" type="_l4yNkM-0EeKO_rl5MA6s9A" direction="return">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_8L56FNIUEeKovM8ingMMQQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_8L56FdIUEeKovM8ingMMQQ" value="*"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:id="_LDqYgNIVEeKovM8ingMMQQ" name="getViewsPropertyValues">
- <ownedComment xmi:id="_LDqYgdIVEeKovM8ingMMQQ">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_LDqYgNIVEeKovM8ingMMQQ" name="getViewsPropertyValues">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_LDqYgdIVEeKovM8ingMMQQ">
<body>Get the property values associated to the specified view.</body>
</ownedComment>
- <ownedParameter xmi:id="_LDqYgtIVEeKovM8ingMMQQ" name="view" type="_j52EYNIUEeKovM8ingMMQQ">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_LDqYgtIVEeKovM8ingMMQQ" name="view" type="_j52EYNIUEeKovM8ingMMQQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZfK_0NIVEeKovM8ingMMQQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Zfl2kNIVEeKovM8ingMMQQ" value="*"/>
</ownedParameter>
- <ownedParameter xmi:id="_LDqYg9IVEeKovM8ingMMQQ" name="views" type="_j52EYNIUEeKovM8ingMMQQ" direction="return">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_LDqYg9IVEeKovM8ingMMQQ" name="views" type="_j52EYNIUEeKovM8ingMMQQ" direction="return">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_LDqYhNIVEeKovM8ingMMQQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_LDqYhdIVEeKovM8ingMMQQ" value="*"/>
</ownedParameter>
- <ownedParameter xmi:id="_NfaCMNIVEeKovM8ingMMQQ" name="values" type="_l4yNkM-0EeKO_rl5MA6s9A" direction="return">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_NfaCMNIVEeKovM8ingMMQQ" name="values" type="_l4yNkM-0EeKO_rl5MA6s9A" direction="return">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_NfaCMdIVEeKovM8ingMMQQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_NfaCMtIVEeKovM8ingMMQQ" value="*"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:id="_SH5a0NIWEeKovM8ingMMQQ" name="getAvailableProperties">
- <ownedComment xmi:id="_SH5a0dIWEeKovM8ingMMQQ">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_SH5a0NIWEeKovM8ingMMQQ" name="getAvailableProperties">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_SH5a0dIWEeKovM8ingMMQQ">
<body>Get the property descriptors available from</body>
</ownedComment>
- <ownedParameter xmi:id="_SH5a09IWEeKovM8ingMMQQ" name="result" type="_UzekYM-yEeKO_rl5MA6s9A" direction="return">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_SH5a09IWEeKovM8ingMMQQ" name="result" type="_UzekYM-yEeKO_rl5MA6s9A" direction="return">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_SH5a1NIWEeKovM8ingMMQQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_SH5a1dIWEeKovM8ingMMQQ" value="*"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_saCQ4M-wEeKO_rl5MA6s9A" name="LayerOperatorExpression" isAbstract="true">
- <generalization xmi:id="_w9X5MM-wEeKO_rl5MA6s9A" general="_q3GegM-wEeKO_rl5MA6s9A"/>
- <ownedAttribute xmi:id="_Jk2f4NIPEeKovM8ingMMQQ" name="expressions" type="_q3GegM-wEeKO_rl5MA6s9A" aggregation="composite" association="_JlCtINIPEeKovM8ingMMQQ">
+ <generalization xmi:type="uml:Generalization" xmi:id="_w9X5MM-wEeKO_rl5MA6s9A" general="_q3GegM-wEeKO_rl5MA6s9A"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Jk2f4NIPEeKovM8ingMMQQ" name="expressions" type="_q3GegM-wEeKO_rl5MA6s9A" aggregation="composite" association="_JlCtINIPEeKovM8ingMMQQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Jk2f4dIPEeKovM8ingMMQQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Jk2f4tIPEeKovM8ingMMQQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_uIcTcM-wEeKO_rl5MA6s9A" name="Layer" isAbstract="true">
- <generalization xmi:id="_x2M-oM-wEeKO_rl5MA6s9A" general="_q3GegM-wEeKO_rl5MA6s9A"/>
- <ownedAttribute xmi:id="_rl4TQM-0EeKO_rl5MA6s9A" name="views" type="_kextsM-0EeKO_rl5MA6s9A" association="_rmCEQM-0EeKO_rl5MA6s9A">
+ <generalization xmi:type="uml:Generalization" xmi:id="_x2M-oM-wEeKO_rl5MA6s9A" general="_q3GegM-wEeKO_rl5MA6s9A"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_rl4TQM-0EeKO_rl5MA6s9A" name="views" type="_kextsM-0EeKO_rl5MA6s9A" association="_rmCEQM-0EeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rl4TQc-0EeKO_rl5MA6s9A"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_rl4TQs-0EeKO_rl5MA6s9A" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_sdjiIM-0EeKO_rl5MA6s9A" name="propertyValues" type="_l4yNkM-0EeKO_rl5MA6s9A" isDerived="true" association="_sd2dEM-0EeKO_rl5MA6s9A">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_sdjiIM-0EeKO_rl5MA6s9A" name="propertyValues" type="_l4yNkM-0EeKO_rl5MA6s9A" isDerived="true" association="_sd2dEM-0EeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sdjiIc-0EeKO_rl5MA6s9A"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sdjiIs-0EeKO_rl5MA6s9A" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_PYT20NIQEeKovM8ingMMQQ" name="availableProperties" type="_UzekYM-yEeKO_rl5MA6s9A" isDerived="true" association="_PYgEENIQEeKovM8ingMMQQ">
- <ownedComment xmi:id="_sI_z8NIQEeKovM8ingMMQQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_PYT20NIQEeKovM8ingMMQQ" name="availableProperties" type="_UzekYM-yEeKO_rl5MA6s9A" isDerived="true" association="_PYgEENIQEeKovM8ingMMQQ">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_sI_z8NIQEeKovM8ingMMQQ">
<body>Return a list of properties that this layer support. This is a derived property (from Layer descriptor).</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PYT20dIQEeKovM8ingMMQQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PYT20tIQEeKovM8ingMMQQ" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_3x5JsNIQEeKovM8ingMMQQ" name="attachedProperties" type="_UzekYM-yEeKO_rl5MA6s9A" isDerived="true" association="_3yFW8NIQEeKovM8ingMMQQ">
- <ownedComment xmi:id="_LuHnkNIREeKovM8ingMMQQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_3x5JsNIQEeKovM8ingMMQQ" name="attachedProperties" type="_UzekYM-yEeKO_rl5MA6s9A" isDerived="true" association="_3yFW8NIQEeKovM8ingMMQQ">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_LuHnkNIREeKovM8ingMMQQ">
<body>Return a list of properties already attached to the Layer.&#xD;
This is a derived property.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_3x5JsdIQEeKovM8ingMMQQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_3x5JstIQEeKovM8ingMMQQ" value="*"/>
</ownedAttribute>
- <ownedAttribute xmi:id="__8qywNIQEeKovM8ingMMQQ" name="notAttachedProperties" type="_UzekYM-yEeKO_rl5MA6s9A" isDerived="true" association="__8-UwNIQEeKovM8ingMMQQ">
- <ownedComment xmi:id="_ZhROYNIREeKovM8ingMMQQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="__8qywNIQEeKovM8ingMMQQ" name="notAttachedProperties" type="_UzekYM-yEeKO_rl5MA6s9A" isDerived="true" association="__8-UwNIQEeKovM8ingMMQQ">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_ZhROYNIREeKovM8ingMMQQ">
<body>Return a list of not already attached properties. This is a derived property.</body>
</ownedComment>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="__8qywdIQEeKovM8ingMMQQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="__8qywtIQEeKovM8ingMMQQ" value="*"/>
</ownedAttribute>
- <ownedOperation xmi:id="_AYzD8NeJEeKpd73UUMObaQ" name="setPropertyValue">
- <ownedParameter xmi:id="_HezdUNeJEeKpd73UUMObaQ" name="index" type="_-DoC8NIPEeKovM8ingMMQQ"/>
- <ownedParameter xmi:id="_LoMUkNeJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="inout"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AYzD8NeJEeKpd73UUMObaQ" name="setPropertyValue">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_HezdUNeJEeKpd73UUMObaQ" name="index" type="_-DoC8NIPEeKovM8ingMMQQ"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_LoMUkNeJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="inout"/>
</ownedOperation>
- <ownedOperation xmi:id="_aJy80NeJEeKpd73UUMObaQ" name="setPropertyValue">
- <ownedParameter xmi:id="_aJy80deJEeKpd73UUMObaQ" name="name" type="_70TEoNIPEeKovM8ingMMQQ"/>
- <ownedParameter xmi:id="_aJy80teJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="inout"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aJy80NeJEeKpd73UUMObaQ" name="setPropertyValue">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_aJy80deJEeKpd73UUMObaQ" name="name" type="_70TEoNIPEeKovM8ingMMQQ"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_aJy80teJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="inout"/>
</ownedOperation>
- <ownedOperation xmi:id="_aou7kNeJEeKpd73UUMObaQ" name="setPropertyValue">
- <ownedParameter xmi:id="_aou7kdeJEeKpd73UUMObaQ" name="propDesc" type="_UzekYM-yEeKO_rl5MA6s9A"/>
- <ownedParameter xmi:id="_aou7kteJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="inout"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aou7kNeJEeKpd73UUMObaQ" name="setPropertyValue">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_aou7kdeJEeKpd73UUMObaQ" name="propDesc" type="_UzekYM-yEeKO_rl5MA6s9A"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_aou7kteJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="inout"/>
</ownedOperation>
- <ownedOperation xmi:id="_urYKgNeJEeKpd73UUMObaQ" name="getPropertyValue">
- <ownedParameter xmi:id="_urYKgdeJEeKpd73UUMObaQ" name="name" type="_70TEoNIPEeKovM8ingMMQQ"/>
- <ownedParameter xmi:id="_urYKgteJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="return"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_urYKgNeJEeKpd73UUMObaQ" name="getPropertyValue">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_urYKgdeJEeKpd73UUMObaQ" name="name" type="_70TEoNIPEeKovM8ingMMQQ"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_urYKgteJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:id="_urhUcNeJEeKpd73UUMObaQ" name="getPropertyValue">
- <ownedParameter xmi:id="_urhUcdeJEeKpd73UUMObaQ" name="index" type="_-DoC8NIPEeKovM8ingMMQQ"/>
- <ownedParameter xmi:id="_urhUcteJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="return"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_urhUcNeJEeKpd73UUMObaQ" name="getPropertyValue">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_urhUcdeJEeKpd73UUMObaQ" name="index" type="_-DoC8NIPEeKovM8ingMMQQ"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_urhUcteJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="return"/>
</ownedOperation>
- <ownedOperation xmi:id="_uropMNeJEeKpd73UUMObaQ" name="getPropertyValue">
- <ownedParameter xmi:id="_urpQQNeJEeKpd73UUMObaQ" name="propDesc" type="_UzekYM-yEeKO_rl5MA6s9A"/>
- <ownedParameter xmi:id="_urpQQdeJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="return"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_uropMNeJEeKpd73UUMObaQ" name="getPropertyValue">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_urpQQNeJEeKpd73UUMObaQ" name="propDesc" type="_UzekYM-yEeKO_rl5MA6s9A"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_urpQQdeJEeKpd73UUMObaQ" name="value" type="_NwL70NeJEeKpd73UUMObaQ" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_zRG2YM-wEeKO_rl5MA6s9A" name="Class1" isAbstract="true">
- <generalization xmi:id="_pd8dwM-xEeKO_rl5MA6s9A" general="_saCQ4M-wEeKO_rl5MA6s9A"/>
- <ownedAttribute xmi:id="_awVkYM-yEeKO_rl5MA6s9A" name="propertyOperators" type="_SZ1McM-yEeKO_rl5MA6s9A" aggregation="composite" association="_awpGYM-yEeKO_rl5MA6s9A">
- <ownedComment xmi:id="_KvpSgM-zEeKO_rl5MA6s9A">
+ <generalization xmi:type="uml:Generalization" xmi:id="_pd8dwM-xEeKO_rl5MA6s9A" general="_saCQ4M-wEeKO_rl5MA6s9A"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_awVkYM-yEeKO_rl5MA6s9A" name="propertyOperators" type="_SZ1McM-yEeKO_rl5MA6s9A" aggregation="composite" association="_awpGYM-yEeKO_rl5MA6s9A">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_KvpSgM-zEeKO_rl5MA6s9A">
<body>Collection of property operators used to compute two operands. Each property operator is designed to &#xD;
operate on one type of property.</body>
</ownedComment>
@@ -656,147 +656,147 @@ operate on one type of property.</body>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_cLZCkM-xEeKO_rl5MA6s9A" name="CustomOperator">
- <generalization xmi:id="_ooh4sM-xEeKO_rl5MA6s9A" general="_saCQ4M-wEeKO_rl5MA6s9A"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_ooh4sM-xEeKO_rl5MA6s9A" general="_saCQ4M-wEeKO_rl5MA6s9A"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_hp55sM-xEeKO_rl5MA6s9A" name="StackedOperator">
- <generalization xmi:id="_qGHRAM-xEeKO_rl5MA6s9A" general="_zRG2YM-wEeKO_rl5MA6s9A"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_qGHRAM-xEeKO_rl5MA6s9A" general="_zRG2YM-wEeKO_rl5MA6s9A"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_jAMXMM-xEeKO_rl5MA6s9A" name="TopOperator">
- <generalization xmi:id="_quvXQM-xEeKO_rl5MA6s9A" general="_zRG2YM-wEeKO_rl5MA6s9A"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_quvXQM-xEeKO_rl5MA6s9A" general="_zRG2YM-wEeKO_rl5MA6s9A"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_t0KQEM-xEeKO_rl5MA6s9A" name="SimpleLayer">
- <generalization xmi:id="_yiCUcM-xEeKO_rl5MA6s9A" general="_uIcTcM-wEeKO_rl5MA6s9A"/>
+ <generalization xmi:type="uml:Generalization" xmi:id="_yiCUcM-xEeKO_rl5MA6s9A" general="_uIcTcM-wEeKO_rl5MA6s9A"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_u6-HIM-xEeKO_rl5MA6s9A" name="RegExpLayer">
- <generalization xmi:id="_zKNHsM-xEeKO_rl5MA6s9A" general="_uIcTcM-wEeKO_rl5MA6s9A"/>
- <ownedAttribute xmi:id="_pRx2AFzHEeOeP67GJGKDkA" name="expressionMatcher" type="_sc15QFzGEeOeP67GJGKDkA" aggregation="composite" association="_pR38oFzHEeOeP67GJGKDkA">
+ <generalization xmi:type="uml:Generalization" xmi:id="_zKNHsM-xEeKO_rl5MA6s9A" general="_uIcTcM-wEeKO_rl5MA6s9A"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_pRx2AFzHEeOeP67GJGKDkA" name="expressionMatcher" type="_sc15QFzGEeOeP67GJGKDkA" aggregation="composite" association="_pR38oFzHEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_pRx2AVzHEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_pRx2AlzHEeOeP67GJGKDkA" value="1"/>
</ownedAttribute>
- <ownedOperation xmi:id="_LTBBsEysEeObF6ELIGKT-g" name="computeExpression"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_LTBBsEysEeObF6ELIGKT-g" name="computeExpression"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_SZ1McM-yEeKO_rl5MA6s9A" name="PropertyOperator" isAbstract="true">
- <ownedComment xmi:id="_lk1MQM-zEeKO_rl5MA6s9A">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_lk1MQM-zEeKO_rl5MA6s9A">
<body>An operator used to compute two operands. The operator is designed to operate on specified property.</body>
</ownedComment>
- <ownedAttribute xmi:id="_mjPKsM-yEeKO_rl5MA6s9A" name="propertyDescriptor" type="_UzekYM-yEeKO_rl5MA6s9A" association="_mjiFoM-yEeKO_rl5MA6s9A">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_mjPKsM-yEeKO_rl5MA6s9A" name="propertyDescriptor" type="_UzekYM-yEeKO_rl5MA6s9A" association="_mjiFoM-yEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_mjPKsc-yEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_mjPKss-yEeKO_rl5MA6s9A" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_UzekYM-yEeKO_rl5MA6s9A" name="PropertyDescriptor">
- <ownedAttribute xmi:id="_xNNKINIPEeKovM8ingMMQQ" name="name" visibility="public" type="_70TEoNIPEeKovM8ingMMQQ" isUnique="false">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_xNNKINIPEeKovM8ingMMQQ" name="name" visibility="public" type="_70TEoNIPEeKovM8ingMMQQ" isUnique="false">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_CadgUNIQEeKovM8ingMMQQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_CariwNIQEeKovM8ingMMQQ" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_CbWRINIQEeKovM8ingMMQQ">
<value xsi:nil="true"/>
</defaultValue>
</ownedAttribute>
- <ownedAttribute xmi:id="_C8tRwNIQEeKovM8ingMMQQ" name="icon" visibility="public" type="_GiHSMNIQEeKovM8ingMMQQ" isUnique="false">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_C8tRwNIQEeKovM8ingMMQQ" name="icon" visibility="public" type="_GiHSMNIQEeKovM8ingMMQQ" isUnique="false">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_JxGWsNIQEeKovM8ingMMQQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_JxYqkNIQEeKovM8ingMMQQ" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_JyDY8NIQEeKovM8ingMMQQ">
<value xsi:nil="true"/>
</defaultValue>
</ownedAttribute>
- <ownedAttribute xmi:id="_cX5PQNeNEeKpd73UUMObaQ" name="defaultValue" type="_l4yNkM-0EeKO_rl5MA6s9A" aggregation="composite" association="_cYKVANeNEeKpd73UUMObaQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_cX5PQNeNEeKpd73UUMObaQ" name="defaultValue" type="_l4yNkM-0EeKO_rl5MA6s9A" aggregation="composite" association="_cYKVANeNEeKpd73UUMObaQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cX5PQdeNEeKpd73UUMObaQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_cX5PQteNEeKpd73UUMObaQ" value="1"/>
</ownedAttribute>
- <ownedOperation xmi:id="_NDsscNeNEeKpd73UUMObaQ" name="newPropertyValueInstance"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_NDsscNeNEeKpd73UUMObaQ" name="newPropertyValueInstance"/>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_awpGYM-yEeKO_rl5MA6s9A" name="class1_propertyOperator_1" memberEnd="_awpGYc-yEeKO_rl5MA6s9A _awVkYM-yEeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_awpGYc-yEeKO_rl5MA6s9A" name="class1" type="_zRG2YM-wEeKO_rl5MA6s9A" association="_awpGYM-yEeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_awpGYc-yEeKO_rl5MA6s9A" name="class1" type="_zRG2YM-wEeKO_rl5MA6s9A" association="_awpGYM-yEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_awpGYs-yEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_awpGY8-yEeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_mjiFoM-yEeKO_rl5MA6s9A" name="propertyOperator_propertyDescriptor_1" memberEnd="_mjiFoc-yEeKO_rl5MA6s9A _mjPKsM-yEeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_mjiFoc-yEeKO_rl5MA6s9A" name="propertyOperator" type="_SZ1McM-yEeKO_rl5MA6s9A" association="_mjiFoM-yEeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_mjiFoc-yEeKO_rl5MA6s9A" name="propertyOperator" type="_SZ1McM-yEeKO_rl5MA6s9A" association="_mjiFoM-yEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_mjiFos-yEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_mjiFo8-yEeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_kextsM-0EeKO_rl5MA6s9A" name="View"/>
<packagedElement xmi:type="uml:Class" xmi:id="_l4yNkM-0EeKO_rl5MA6s9A" name="TypeValue">
- <ownedAttribute xmi:id="_OFQ7wM-5EeKO_rl5MA6s9A" name="descriptor" type="_UzekYM-yEeKO_rl5MA6s9A" association="_OFj2sM-5EeKO_rl5MA6s9A">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_OFQ7wM-5EeKO_rl5MA6s9A" name="descriptor" type="_UzekYM-yEeKO_rl5MA6s9A" association="_OFj2sM-5EeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_OFQ7wc-5EeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_OFQ7ws-5EeKO_rl5MA6s9A" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_rmCEQM-0EeKO_rl5MA6s9A" name="layer_view_1" memberEnd="_rmCEQc-0EeKO_rl5MA6s9A _rl4TQM-0EeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_rmCEQc-0EeKO_rl5MA6s9A" name="layer" type="_uIcTcM-wEeKO_rl5MA6s9A" association="_rmCEQM-0EeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_rmCEQc-0EeKO_rl5MA6s9A" name="layer" type="_uIcTcM-wEeKO_rl5MA6s9A" association="_rmCEQM-0EeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rmCEQs-0EeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_rmCEQ8-0EeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_sd2dEM-0EeKO_rl5MA6s9A" name="layer_propertyValue_1" memberEnd="_sd2dEc-0EeKO_rl5MA6s9A _sdjiIM-0EeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_sd2dEc-0EeKO_rl5MA6s9A" name="layer" type="_uIcTcM-wEeKO_rl5MA6s9A" association="_sd2dEM-0EeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_sd2dEc-0EeKO_rl5MA6s9A" name="layer" type="_uIcTcM-wEeKO_rl5MA6s9A" association="_sd2dEM-0EeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sd2dEs-0EeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sd2dE8-0EeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_OFj2sM-5EeKO_rl5MA6s9A" name="propertyValue_propertyDescriptor_1" memberEnd="_OFj2sc-5EeKO_rl5MA6s9A _OFQ7wM-5EeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_OFj2sc-5EeKO_rl5MA6s9A" name="propertyValue" type="_l4yNkM-0EeKO_rl5MA6s9A" association="_OFj2sM-5EeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_OFj2sc-5EeKO_rl5MA6s9A" name="propertyValue" type="_l4yNkM-0EeKO_rl5MA6s9A" association="_OFj2sM-5EeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_OFj2ss-5EeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_OFj2s8-5EeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_JlCtINIPEeKovM8ingMMQQ" name="operatorExpression_layerExpression_1" memberEnd="_JlCtIdIPEeKovM8ingMMQQ _Jk2f4NIPEeKovM8ingMMQQ">
- <ownedEnd xmi:id="_JlCtIdIPEeKovM8ingMMQQ" name="operatorExpression" type="_saCQ4M-wEeKO_rl5MA6s9A" association="_JlCtINIPEeKovM8ingMMQQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_JlCtIdIPEeKovM8ingMMQQ" name="operatorExpression" type="_saCQ4M-wEeKO_rl5MA6s9A" association="_JlCtINIPEeKovM8ingMMQQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_JlCtItIPEeKovM8ingMMQQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_JlCtI9IPEeKovM8ingMMQQ" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_PYgEENIQEeKovM8ingMMQQ" name="layer_propertyDescriptor_1" memberEnd="_PYgEEdIQEeKovM8ingMMQQ _PYT20NIQEeKovM8ingMMQQ">
- <ownedEnd xmi:id="_PYgEEdIQEeKovM8ingMMQQ" name="layer" type="_q3GegM-wEeKO_rl5MA6s9A" association="_PYgEENIQEeKovM8ingMMQQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_PYgEEdIQEeKovM8ingMMQQ" name="layer" type="_q3GegM-wEeKO_rl5MA6s9A" association="_PYgEENIQEeKovM8ingMMQQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PYgEEtIQEeKovM8ingMMQQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PYgEE9IQEeKovM8ingMMQQ" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_3yFW8NIQEeKovM8ingMMQQ" name="layerExpression_propertyDescriptor_2" memberEnd="_3yFW8dIQEeKovM8ingMMQQ _3x5JsNIQEeKovM8ingMMQQ">
- <ownedEnd xmi:id="_3yFW8dIQEeKovM8ingMMQQ" name="expr" type="_q3GegM-wEeKO_rl5MA6s9A" association="_3yFW8NIQEeKovM8ingMMQQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_3yFW8dIQEeKovM8ingMMQQ" name="expr" type="_q3GegM-wEeKO_rl5MA6s9A" association="_3yFW8NIQEeKovM8ingMMQQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_3yFW8tIQEeKovM8ingMMQQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_3yFW89IQEeKovM8ingMMQQ" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="__8-UwNIQEeKovM8ingMMQQ" name="layer_propertyDescriptor_3" memberEnd="__8-UwdIQEeKovM8ingMMQQ __8qywNIQEeKovM8ingMMQQ">
- <ownedEnd xmi:id="__8-UwdIQEeKovM8ingMMQQ" name="layer" type="_uIcTcM-wEeKO_rl5MA6s9A" association="__8-UwNIQEeKovM8ingMMQQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="__8-UwdIQEeKovM8ingMMQQ" name="layer" type="_uIcTcM-wEeKO_rl5MA6s9A" association="__8-UwNIQEeKovM8ingMMQQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="__8-UwtIQEeKovM8ingMMQQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="__8-Uw9IQEeKovM8ingMMQQ" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_unRJANIXEeKovM8ingMMQQ" name="layerExpression_view_1" memberEnd="_unRJAdIXEeKovM8ingMMQQ _unLCYNIXEeKovM8ingMMQQ">
- <ownedEnd xmi:id="_unRJAdIXEeKovM8ingMMQQ" name="layerExpression" type="_q3GegM-wEeKO_rl5MA6s9A" association="_unRJANIXEeKovM8ingMMQQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_unRJAdIXEeKovM8ingMMQQ" name="layerExpression" type="_q3GegM-wEeKO_rl5MA6s9A" association="_unRJANIXEeKovM8ingMMQQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_unRJAtIXEeKovM8ingMMQQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_unRJA9IXEeKovM8ingMMQQ" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_3qy5UNNnEeKwWoA8j13SIg" name="LayerStacks">
- <ownedComment xmi:id="_QvVU0NNoEeKwWoA8j13SIg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_QvVU0NNoEeKwWoA8j13SIg">
<body>Entry point of the model.&#xD;
LayerStack are associated to their diagram.&#xD;
</body>
</ownedComment>
- <ownedAttribute xmi:id="_8-4CENNnEeKwWoA8j13SIg" name="layerStacks" type="_t0NNoM9UEeKO_rl5MA6s9A" aggregation="composite" association="_8_KV8NNnEeKwWoA8j13SIg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_8-4CENNnEeKwWoA8j13SIg" name="layerStacks" type="_t0NNoM9UEeKO_rl5MA6s9A" aggregation="composite" association="_8_KV8NNnEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_8-4CEdNnEeKwWoA8j13SIg"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_8-4CEtNnEeKwWoA8j13SIg" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_8_KV8NNnEeKwWoA8j13SIg" name="layerStacks_layerStack_1" memberEnd="_8_KV8dNnEeKwWoA8j13SIg _8-4CENNnEeKwWoA8j13SIg">
- <ownedEnd xmi:id="_8_KV8dNnEeKwWoA8j13SIg" name="layerStacks" type="_3qy5UNNnEeKwWoA8j13SIg" association="_8_KV8NNnEeKwWoA8j13SIg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_8_KV8dNnEeKwWoA8j13SIg" name="layerStacks" type="_3qy5UNNnEeKwWoA8j13SIg" association="_8_KV8NNnEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_8_KV8tNnEeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_8_KV89NnEeKwWoA8j13SIg" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_iOVr4NN0EeKwWoA8j13SIg" name="SelectionManager">
- <ownedComment xmi:id="_Rkak4NN3EeKwWoA8j13SIg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Rkak4NN3EeKwWoA8j13SIg">
<body>This class is used to maintain the current layer selected.&#xD;
It listen on LayerStack event, and set the current layer accordingly.&#xD;
The current layer can also be set by methods.&#xD;
The class can be observed to listen to selection changed.</body>
</ownedComment>
- <ownedAttribute xmi:id="_zPQPMNN0EeKwWoA8j13SIg" name="currentLayer" visibility="public" type="_uIcTcM-wEeKO_rl5MA6s9A" isUnique="false">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_zPQPMNN0EeKwWoA8j13SIg" name="currentLayer" visibility="public" type="_uIcTcM-wEeKO_rl5MA6s9A" isUnique="false">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_2bmPYNN0EeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_2b4jQNN0EeKwWoA8j13SIg" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_2cu30NN0EeKwWoA8j13SIg">
@@ -805,80 +805,80 @@ The class can be observed to listen to selection changed.</body>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_4CAMgNN0EeKwWoA8j13SIg" name="layerStack_selectionManager_1" memberEnd="_4CAMgdN0EeKwWoA8j13SIg _4B6F4NN0EeKwWoA8j13SIg">
- <ownedEnd xmi:id="_4CAMgdN0EeKwWoA8j13SIg" name="layerStack" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_4CAMgNN0EeKwWoA8j13SIg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_4CAMgdN0EeKwWoA8j13SIg" name="layerStack" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_4CAMgNN0EeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_4CAMgtN0EeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_4CAMg9N0EeKwWoA8j13SIg" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_OS41oNNqEeKwWoA8j13SIg" clientDependency="_TW8v8NNrEeKwWoA8j13SIg _XY1RANNrEeKwWoA8j13SIg" name="ILayersModelEventListener">
- <ownedOperation xmi:id="_SmexwNNqEeKwWoA8j13SIg" name="propertyValueAdded">
- <ownedParameter xmi:id="_eeKKYNNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_SmexwNNqEeKwWoA8j13SIg" name="propertyValueAdded">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_eeKKYNNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_htRxwNNqEeKwWoA8j13SIg" name="propertyValueRemoved">
- <ownedParameter xmi:id="_htRxwdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_htRxwNNqEeKwWoA8j13SIg" name="propertyValueRemoved">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_htRxwdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_h5JDgNNqEeKwWoA8j13SIg" name="propertyValueChanged">
- <ownedParameter xmi:id="_h5JDgdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_h5JDgNNqEeKwWoA8j13SIg" name="propertyValueChanged">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_h5JDgdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_h69BYNNqEeKwWoA8j13SIg" name="layerAdded">
- <ownedParameter xmi:id="_h69BYdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_h69BYNNqEeKwWoA8j13SIg" name="layerAdded">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_h69BYdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_iGe78NNqEeKwWoA8j13SIg" name="layerRemoved">
- <ownedParameter xmi:id="_iGe78dNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_iGe78NNqEeKwWoA8j13SIg" name="layerRemoved">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_iGe78dNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_iKn1ENNqEeKwWoA8j13SIg" name="layerMoved">
- <ownedParameter xmi:id="_iKn1EdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_iKn1ENNqEeKwWoA8j13SIg" name="layerMoved">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_iKn1EdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_iUNO4NNqEeKwWoA8j13SIg" name="layerStackEnable">
- <ownedParameter xmi:id="_iUNO4dNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_iUNO4NNqEeKwWoA8j13SIg" name="layerStackEnable">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_iUNO4dNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_1WChENNqEeKwWoA8j13SIg" name="layerStackDisable">
- <ownedParameter xmi:id="_1WChEdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_1WChENNqEeKwWoA8j13SIg" name="layerStackDisable">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_1WChEdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_1iV3sNNqEeKwWoA8j13SIg" name="viewAddedToLayer">
- <ownedParameter xmi:id="_1iV3sdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_1iV3sNNqEeKwWoA8j13SIg" name="viewAddedToLayer">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_1iV3sdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_1mcUkNNqEeKwWoA8j13SIg" name="viewRemovedFromLayer">
- <ownedParameter xmi:id="_1mcUkdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_1mcUkNNqEeKwWoA8j13SIg" name="viewRemovedFromLayer">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_1mcUkdNqEeKwWoA8j13SIg" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_94G1IN9lEeKCZbxNW-U3VQ" name="viewMovedBetweenLayers">
- <ownedParameter xmi:id="_94G1Id9lEeKCZbxNW-U3VQ" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_94G1IN9lEeKCZbxNW-U3VQ" name="viewMovedBetweenLayers">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_94G1Id9lEeKCZbxNW-U3VQ" name="event" type="_XbvQgNNqEeKwWoA8j13SIg"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_XbvQgNNqEeKwWoA8j13SIg" name="LayersModelEvent"/>
<packagedElement xmi:type="uml:Dependency" xmi:id="_TW8v8NNrEeKwWoA8j13SIg" name="listenOn" client="_OS41oNNqEeKwWoA8j13SIg" supplier="_t0NNoM9UEeKO_rl5MA6s9A"/>
<packagedElement xmi:type="uml:Dependency" xmi:id="_XY1RANNrEeKwWoA8j13SIg" name="Dependency2" client="_OS41oNNqEeKwWoA8j13SIg" supplier="_XbvQgNNqEeKwWoA8j13SIg"/>
<packagedElement xmi:type="uml:Class" xmi:id="_WMWIcNeMEeKpd73UUMObaQ" name="PropertyFactory">
- <ownedAttribute xmi:id="_H-rd8NeOEeKpd73UUMObaQ" name="propertyDescriptors" type="_UzekYM-yEeKO_rl5MA6s9A" association="_H-9x0NeOEeKpd73UUMObaQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_H-rd8NeOEeKpd73UUMObaQ" name="propertyDescriptors" type="_UzekYM-yEeKO_rl5MA6s9A" association="_H-9x0NeOEeKpd73UUMObaQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_H-rd8deOEeKpd73UUMObaQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_H-rd8teOEeKpd73UUMObaQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_cYKVANeNEeKpd73UUMObaQ" name="propertyDescriptor_propertyValue_1" memberEnd="_cYKVAdeNEeKpd73UUMObaQ _cX5PQNeNEeKpd73UUMObaQ">
- <ownedEnd xmi:id="_cYKVAdeNEeKpd73UUMObaQ" name="propertyDescriptor" type="_UzekYM-yEeKO_rl5MA6s9A" association="_cYKVANeNEeKpd73UUMObaQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_cYKVAdeNEeKpd73UUMObaQ" name="propertyDescriptor" type="_UzekYM-yEeKO_rl5MA6s9A" association="_cYKVANeNEeKpd73UUMObaQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cYKVAteNEeKpd73UUMObaQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_cYKVA9eNEeKpd73UUMObaQ" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_H-9x0NeOEeKpd73UUMObaQ" name="propertyFactory_propertyDescriptor_1" memberEnd="_H-9x0deOEeKpd73UUMObaQ _H-rd8NeOEeKpd73UUMObaQ">
- <ownedEnd xmi:id="_H-9x0deOEeKpd73UUMObaQ" name="propertyFactory" type="_WMWIcNeMEeKpd73UUMObaQ" association="_H-9x0NeOEeKpd73UUMObaQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_H-9x0deOEeKpd73UUMObaQ" name="propertyFactory" type="_WMWIcNeMEeKpd73UUMObaQ" association="_H-9x0NeOEeKpd73UUMObaQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_H-9x0teOEeKpd73UUMObaQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_H-9x09eOEeKpd73UUMObaQ" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_Gkz8QEyjEeObF6ELIGKT-g" name="notifiers">
<packagedElement xmi:type="uml:Class" xmi:id="_JwRLoEyjEeObF6ELIGKT-g" clientDependency="_SokpEEyjEeObF6ELIGKT-g" name="DiagramViewEventNotifier">
- <ownedOperation xmi:id="_h14fwEyuEeObF6ELIGKT-g" name="stopListening"/>
- <ownedOperation xmi:id="_h15G0EyuEeObF6ELIGKT-g" name="startListening"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_h14fwEyuEeObF6ELIGKT-g" name="stopListening"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_h15G0EyuEeObF6ELIGKT-g" name="startListening"/>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_HJLoANNqEeKwWoA8j13SIg" name="IDiagramViewEventListener">
- <ownedOperation xmi:id="_JZ7ioNNqEeKwWoA8j13SIg" name="viewAddedEvent"/>
- <ownedOperation xmi:id="_Ft6TwN9mEeKCZbxNW-U3VQ" name="viewRemovedEvent"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_JZ7ioNNqEeKwWoA8j13SIg" name="viewAddedEvent"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Ft6TwN9mEeKCZbxNW-U3VQ" name="viewRemovedEvent"/>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_SokpEEyjEeObF6ELIGKT-g" name="Usage1" client="_JwRLoEyjEeObF6ELIGKT-g" supplier="_HJLoANNqEeKwWoA8j13SIg"/>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_pR38oFzHEeOeP67GJGKDkA" name="regExpLayer_expressionMatcher_1" memberEnd="_pR38oVzHEeOeP67GJGKDkA _pRx2AFzHEeOeP67GJGKDkA">
- <ownedEnd xmi:id="_pR38oVzHEeOeP67GJGKDkA" name="regExpLayer" type="_u6-HIM-xEeKO_rl5MA6s9A" association="_pR38oFzHEeOeP67GJGKDkA">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_pR38oVzHEeOeP67GJGKDkA" name="regExpLayer" type="_u6-HIM-xEeKO_rl5MA6s9A" association="_pR38oFzHEeOeP67GJGKDkA">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_pR38olzHEeOeP67GJGKDkA" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_pR38o1zHEeOeP67GJGKDkA" value="1"/>
</ownedEnd>
@@ -886,19 +886,19 @@ The class can be observed to listen to selection changed.</body>
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_ShE8QL2QEeKKJJ5BmR3W3Q" name="notation">
<packagedElement xmi:type="uml:Class" xmi:id="_rqknoM9UEeKO_rl5MA6s9A" name="Diagram">
- <ownedAttribute xmi:id="_5PP4IM9VEeKO_rl5MA6s9A" name="namedStyle" type="_0Q5HwM9VEeKO_rl5MA6s9A" association="_5PcFYM9VEeKO_rl5MA6s9A">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_5PP4IM9VEeKO_rl5MA6s9A" name="namedStyle" type="_0Q5HwM9VEeKO_rl5MA6s9A" association="_5PcFYM9VEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_5PP4Ic9VEeKO_rl5MA6s9A"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_5PP4Is9VEeKO_rl5MA6s9A" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_5PcFYM9VEeKO_rl5MA6s9A" name="diagram_namedStyle_1" memberEnd="_5PcFYc9VEeKO_rl5MA6s9A _5PP4IM9VEeKO_rl5MA6s9A">
- <ownedEnd xmi:id="_5PcFYc9VEeKO_rl5MA6s9A" name="diagram" type="_rqknoM9UEeKO_rl5MA6s9A" association="_5PcFYM9VEeKO_rl5MA6s9A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_5PcFYc9VEeKO_rl5MA6s9A" name="diagram" type="_rqknoM9UEeKO_rl5MA6s9A" association="_5PcFYM9VEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_5PcFYs9VEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_5PcFY89VEeKO_rl5MA6s9A" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_0Q5HwM9VEeKO_rl5MA6s9A" name="NamedStyle">
- <ownedAttribute xmi:id="_54-KkM9VEeKO_rl5MA6s9A" name="value" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_55Ll8M9VEeKO_rl5MA6s9A">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_54-KkM9VEeKO_rl5MA6s9A" name="value" type="_t0NNoM9UEeKO_rl5MA6s9A" association="_55Ll8M9VEeKO_rl5MA6s9A">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_54-Kkc9VEeKO_rl5MA6s9A" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_54-Kks9VEeKO_rl5MA6s9A" value="1"/>
</ownedAttribute>
@@ -915,38 +915,38 @@ The class can be observed to listen to selection changed.</body>
<packagedElement xmi:type="uml:Model" xmi:id="_3PV9kNLREeKwWoA8j13SIg" name="patterns">
<packagedElement xmi:type="uml:Package" xmi:id="_93lc4NLREeKwWoA8j13SIg" name="eventProviderOneListener">
<packagedElement xmi:type="uml:Class" xmi:id="_FpeE0NLSEeKwWoA8j13SIg" clientDependency="_vlovUNLTEeKwWoA8j13SIg" name="ClassnameEventProvider">
- <ownedAttribute xmi:id="_qQgTINLSEeKwWoA8j13SIg" name="eventListener" type="_MFiwYNLSEeKwWoA8j13SIg" association="_qQmZwNLSEeKwWoA8j13SIg">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_qQgTINLSEeKwWoA8j13SIg" name="eventListener" type="_MFiwYNLSEeKwWoA8j13SIg" association="_qQmZwNLSEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_qQgTIdLSEeKwWoA8j13SIg"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qQgTItLSEeKwWoA8j13SIg" value="1"/>
</ownedAttribute>
- <ownedOperation xmi:id="___ERUNLSEeKwWoA8j13SIg" name="addClassnameEventListener">
- <ownedParameter xmi:id="_K04kUNLTEeKwWoA8j13SIg" name="listener" type="_MFiwYNLSEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="___ERUNLSEeKwWoA8j13SIg" name="addClassnameEventListener">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_K04kUNLTEeKwWoA8j13SIg" name="listener" type="_MFiwYNLSEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_OXuY8NLTEeKwWoA8j13SIg" name="removeClassnameEventListener">
- <ownedParameter xmi:id="_OXuY8dLTEeKwWoA8j13SIg" name="listener" type="_MFiwYNLSEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_OXuY8NLTEeKwWoA8j13SIg" name="removeClassnameEventListener">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_OXuY8dLTEeKwWoA8j13SIg" name="listener" type="_MFiwYNLSEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_c-YVwNLSEeKwWoA8j13SIg" name="fireName1Event">
- <ownedParameter xmi:id="_k6tTINLSEeKwWoA8j13SIg" name="event" type="_TqDqsNLSEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_c-YVwNLSEeKwWoA8j13SIg" name="fireName1Event">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_k6tTINLSEeKwWoA8j13SIg" name="event" type="_TqDqsNLSEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_dAOTYNLTEeKwWoA8j13SIg" name="fireName2Event">
- <ownedParameter xmi:id="_dAOTYdLTEeKwWoA8j13SIg" name="event" type="_TqDqsNLSEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_dAOTYNLTEeKwWoA8j13SIg" name="fireName2Event">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_dAOTYdLTEeKwWoA8j13SIg" name="event" type="_TqDqsNLSEeKwWoA8j13SIg"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_MFiwYNLSEeKwWoA8j13SIg" clientDependency="_wSvs8NLTEeKwWoA8j13SIg" name="IClassnameEventListener">
- <ownedOperation xmi:id="_7UNrwNLSEeKwWoA8j13SIg" name="name1Event">
- <ownedParameter xmi:id="_7UNrwdLSEeKwWoA8j13SIg" name="event" type="_TqDqsNLSEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_7UNrwNLSEeKwWoA8j13SIg" name="name1Event">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_7UNrwdLSEeKwWoA8j13SIg" name="event" type="_TqDqsNLSEeKwWoA8j13SIg"/>
</ownedOperation>
- <ownedOperation xmi:id="_hnQI4NLTEeKwWoA8j13SIg" name="name2Event">
- <ownedParameter xmi:id="_hnQI4dLTEeKwWoA8j13SIg" name="event" type="_TqDqsNLSEeKwWoA8j13SIg"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_hnQI4NLTEeKwWoA8j13SIg" name="name2Event">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_hnQI4dLTEeKwWoA8j13SIg" name="event" type="_TqDqsNLSEeKwWoA8j13SIg"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_TqDqsNLSEeKwWoA8j13SIg" name="ClassnameEvent">
- <ownedComment xmi:id="_1Q1-oNLTEeKwWoA8j13SIg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_1Q1-oNLTEeKwWoA8j13SIg">
<body>The Event class is used to carry data from the sender to the listener.</body>
</ownedComment>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_qQmZwNLSEeKwWoA8j13SIg" name="classnameEventProvider_iClassnameEventListener_1" memberEnd="_qQmZwdLSEeKwWoA8j13SIg _qQgTINLSEeKwWoA8j13SIg">
- <ownedEnd xmi:id="_qQmZwdLSEeKwWoA8j13SIg" name="classnameEventProvider" type="_FpeE0NLSEeKwWoA8j13SIg" association="_qQmZwNLSEeKwWoA8j13SIg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_qQmZwdLSEeKwWoA8j13SIg" name="classnameEventProvider" type="_FpeE0NLSEeKwWoA8j13SIg" association="_qQmZwNLSEeKwWoA8j13SIg">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_qQmZwtLSEeKwWoA8j13SIg" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qQmZw9LSEeKwWoA8j13SIg" value="1"/>
</ownedEnd>
@@ -957,18 +957,18 @@ The class can be observed to listen to selection changed.</body>
</packagedElement>
<packagedElement xmi:type="uml:Model" xmi:id="_Hq1QwNRgEeKHbZ6TDsPmrQ" name="design">
<packagedElement xmi:type="uml:Package" xmi:id="_MIZBMNRgEeKHbZ6TDsPmrQ" name="extensible properties">
- <ownedComment xmi:id="_8tJPoNRpEeKHbZ6TDsPmrQ">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_8tJPoNRpEeKHbZ6TDsPmrQ">
<body>Type and TypeValue are part of the system ?</body>
</ownedComment>
- <ownedComment xmi:id="_4zs_QNRxEeKHbZ6TDsPmrQ">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_4zs_QNRxEeKHbZ6TDsPmrQ">
<body>LayerDescriptor and Property are not saved with LayerStack</body>
</ownedComment>
<packagedElement xmi:type="uml:Class" xmi:id="_WWBS0NRgEeKHbZ6TDsPmrQ" name="Property">
- <ownedAttribute xmi:id="_bo_oUNRgEeKHbZ6TDsPmrQ" name="type" type="_XqHX8NRgEeKHbZ6TDsPmrQ" association="_bpFu8NRgEeKHbZ6TDsPmrQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_bo_oUNRgEeKHbZ6TDsPmrQ" name="type" type="_XqHX8NRgEeKHbZ6TDsPmrQ" association="_bpFu8NRgEeKHbZ6TDsPmrQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_bo_oUdRgEeKHbZ6TDsPmrQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_bo_oUtRgEeKHbZ6TDsPmrQ" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_h2j90NRgEeKHbZ6TDsPmrQ" name="name" visibility="public" type="_70TEoNIPEeKovM8ingMMQQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_h2j90NRgEeKHbZ6TDsPmrQ" name="name" visibility="public" type="_70TEoNIPEeKovM8ingMMQQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ko6JoNRgEeKHbZ6TDsPmrQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_kpG98NRgEeKHbZ6TDsPmrQ" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_kp95kNRgEeKHbZ6TDsPmrQ">
@@ -978,59 +978,103 @@ The class can be observed to listen to selection changed.</body>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_XqHX8NRgEeKHbZ6TDsPmrQ" name="Type"/>
<packagedElement xmi:type="uml:Class" xmi:id="_Y8NR8NRgEeKHbZ6TDsPmrQ" name="PropertyValue">
- <ownedAttribute xmi:id="_HqSBsNRhEeKHbZ6TDsPmrQ" name="typeValue" type="_F0T-kNRhEeKHbZ6TDsPmrQ" association="_HqkVkNRhEeKHbZ6TDsPmrQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_HqSBsNRhEeKHbZ6TDsPmrQ" name="typeValue" type="_F0T-kNRhEeKHbZ6TDsPmrQ" association="_HqkVkNRhEeKHbZ6TDsPmrQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HqSBsdRhEeKHbZ6TDsPmrQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_HqSBstRhEeKHbZ6TDsPmrQ" value="1"/>
</ownedAttribute>
- <ownedAttribute xmi:id="_IvGUsNRhEeKHbZ6TDsPmrQ" name="property" type="_WWBS0NRgEeKHbZ6TDsPmrQ" association="_IvSh8NRhEeKHbZ6TDsPmrQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_IvGUsNRhEeKHbZ6TDsPmrQ" name="property" type="_WWBS0NRgEeKHbZ6TDsPmrQ" association="_IvSh8NRhEeKHbZ6TDsPmrQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_IvGUsdRhEeKHbZ6TDsPmrQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_IvGUstRhEeKHbZ6TDsPmrQ" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_bpFu8NRgEeKHbZ6TDsPmrQ" name="property_type_1" memberEnd="_bpFu8dRgEeKHbZ6TDsPmrQ _bo_oUNRgEeKHbZ6TDsPmrQ">
- <ownedEnd xmi:id="_bpFu8dRgEeKHbZ6TDsPmrQ" name="property" type="_WWBS0NRgEeKHbZ6TDsPmrQ" association="_bpFu8NRgEeKHbZ6TDsPmrQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_bpFu8dRgEeKHbZ6TDsPmrQ" name="property" type="_WWBS0NRgEeKHbZ6TDsPmrQ" association="_bpFu8NRgEeKHbZ6TDsPmrQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_bpFu8tRgEeKHbZ6TDsPmrQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_bpFu89RgEeKHbZ6TDsPmrQ" value="*"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_dFTOQNRgEeKHbZ6TDsPmrQ" name="LayerDescriptor">
- <ownedAttribute xmi:id="_gXohsNRgEeKHbZ6TDsPmrQ" name="AllowedProperties" type="_WWBS0NRgEeKHbZ6TDsPmrQ" aggregation="composite" association="_gX0u8NRgEeKHbZ6TDsPmrQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gXohsNRgEeKHbZ6TDsPmrQ" name="AllowedProperties" type="_WWBS0NRgEeKHbZ6TDsPmrQ" aggregation="composite" association="_gX0u8NRgEeKHbZ6TDsPmrQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gXohsdRgEeKHbZ6TDsPmrQ"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_gXohstRgEeKHbZ6TDsPmrQ" value="*"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_gX0u8NRgEeKHbZ6TDsPmrQ" name="layerDescriptor_property_1" memberEnd="_gX0u8dRgEeKHbZ6TDsPmrQ _gXohsNRgEeKHbZ6TDsPmrQ">
- <ownedEnd xmi:id="_gX0u8dRgEeKHbZ6TDsPmrQ" name="layerDescriptor" type="_dFTOQNRgEeKHbZ6TDsPmrQ" association="_gX0u8NRgEeKHbZ6TDsPmrQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_gX0u8dRgEeKHbZ6TDsPmrQ" name="layerDescriptor" type="_dFTOQNRgEeKHbZ6TDsPmrQ" association="_gX0u8NRgEeKHbZ6TDsPmrQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gX0u8tRgEeKHbZ6TDsPmrQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_gX0u89RgEeKHbZ6TDsPmrQ" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_BrSTsNRhEeKHbZ6TDsPmrQ" name="Layer">
- <ownedAttribute xmi:id="_EeaioNRhEeKHbZ6TDsPmrQ" name="propertyValue" type="_Y8NR8NRgEeKHbZ6TDsPmrQ" association="_Eemv4NRhEeKHbZ6TDsPmrQ">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_EeaioNRhEeKHbZ6TDsPmrQ" name="propertyValue" type="_Y8NR8NRgEeKHbZ6TDsPmrQ" association="_Eemv4NRhEeKHbZ6TDsPmrQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_EeaiodRhEeKHbZ6TDsPmrQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_EeaiotRhEeKHbZ6TDsPmrQ" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_Eemv4NRhEeKHbZ6TDsPmrQ" name="layer_propertyValue_1" memberEnd="_Eemv4dRhEeKHbZ6TDsPmrQ _EeaioNRhEeKHbZ6TDsPmrQ">
- <ownedEnd xmi:id="_Eemv4dRhEeKHbZ6TDsPmrQ" name="layer" type="_BrSTsNRhEeKHbZ6TDsPmrQ" association="_Eemv4NRhEeKHbZ6TDsPmrQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_Eemv4dRhEeKHbZ6TDsPmrQ" name="layer" type="_BrSTsNRhEeKHbZ6TDsPmrQ" association="_Eemv4NRhEeKHbZ6TDsPmrQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Eemv4tRhEeKHbZ6TDsPmrQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Eemv49RhEeKHbZ6TDsPmrQ" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_F0T-kNRhEeKHbZ6TDsPmrQ" name="TypeValue"/>
<packagedElement xmi:type="uml:Association" xmi:id="_HqkVkNRhEeKHbZ6TDsPmrQ" name="propertyValue_typeValue_1" memberEnd="_HqkVkdRhEeKHbZ6TDsPmrQ _HqSBsNRhEeKHbZ6TDsPmrQ">
- <ownedEnd xmi:id="_HqkVkdRhEeKHbZ6TDsPmrQ" name="propertyValue" type="_Y8NR8NRgEeKHbZ6TDsPmrQ" association="_HqkVkNRhEeKHbZ6TDsPmrQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_HqkVkdRhEeKHbZ6TDsPmrQ" name="propertyValue" type="_Y8NR8NRgEeKHbZ6TDsPmrQ" association="_HqkVkNRhEeKHbZ6TDsPmrQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HqkVktRhEeKHbZ6TDsPmrQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_HqkVk9RhEeKHbZ6TDsPmrQ" value="1"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_IvSh8NRhEeKHbZ6TDsPmrQ" name="propertyValue_property_1" memberEnd="_IvSh8dRhEeKHbZ6TDsPmrQ _IvGUsNRhEeKHbZ6TDsPmrQ">
- <ownedEnd xmi:id="_IvSh8dRhEeKHbZ6TDsPmrQ" name="propertyValue" type="_Y8NR8NRgEeKHbZ6TDsPmrQ" association="_IvSh8NRhEeKHbZ6TDsPmrQ">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_IvSh8dRhEeKHbZ6TDsPmrQ" name="propertyValue" type="_Y8NR8NRgEeKHbZ6TDsPmrQ" association="_IvSh8NRhEeKHbZ6TDsPmrQ">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_IvSh8tRhEeKHbZ6TDsPmrQ" value="1"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_IvSh89RhEeKHbZ6TDsPmrQ" value="1"/>
</ownedEnd>
</packagedElement>
</packagedElement>
+ <packagedElement xmi:type="uml:Model" xmi:id="_pa8XAHh8EeOlpfB_tZS-QA" name="layers life cycle">
+ <packagedElement xmi:type="uml:StateMachine" xmi:id="_sqYugHh8EeOlpfB_tZS-QA" name="StateMachine1">
+ <region xmi:type="uml:Region" xmi:id="_uQQgIHh8EeOlpfB_tZS-QA" name="Region1">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_A8brYHh9EeOlpfB_tZS-QA" annotatedElement="_5CvLQHh8EeOlpfB_tZS-QA">
+ <body>Attached to a LayersStack.&#xD;
+All attributes are set: &#xD;
+ - owningLayersStack&#xD;
+ - application&#xD;
+ - parent/container&#xD;
+</body>
+ </ownedComment>
+ <transition xmi:type="uml:Transition" xmi:id="_QzWgwHh9EeOlpfB_tZS-QA" name="createLayerXxx()" source="_vdgWYHh8EeOlpfB_tZS-QA" target="_wpIcAHh8EeOlpfB_tZS-QA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_T3PIgHh9EeOlpfB_tZS-QA" name="model.load()" source="_SOtrgHh9EeOlpfB_tZS-QA" target="_1L6DoHh8EeOlpfB_tZS-QA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_Wz5G4Hh9EeOlpfB_tZS-QA" name="detach()" source="_5CvLQHh8EeOlpfB_tZS-QA" target="_88sfYHh8EeOlpfB_tZS-QA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_X_U_QHh9EeOlpfB_tZS-QA" name="attach(diagramProvider)" source="_88sfYHh8EeOlpfB_tZS-QA" target="_5CvLQHh8EeOlpfB_tZS-QA">
+ <trigger xmi:type="uml:Trigger" xmi:id="_YoUxkHiAEeOlpfB_tZS-QA" name="attach(DiagramProvider)"/>
+ <trigger xmi:type="uml:Trigger" xmi:id="_ca2A8HiAEeOlpfB_tZS-QA" name="attach(DiagramProvider, Application)"/>
+ </transition>
+ <transition xmi:type="uml:Transition" xmi:id="_ZpOVQHh9EeOlpfB_tZS-QA" name="parent.add" source="_wpIcAHh8EeOlpfB_tZS-QA" target="_5CvLQHh8EeOlpfB_tZS-QA">
+ <trigger xmi:type="uml:Trigger" xmi:id="_teoZcHh9EeOlpfB_tZS-QA" name="parent.layers.add"/>
+ </transition>
+ <transition xmi:type="uml:Transition" xmi:id="_a0LsgHh9EeOlpfB_tZS-QA" name="startAfterReload()" source="_1L6DoHh8EeOlpfB_tZS-QA" target="_5CvLQHh8EeOlpfB_tZS-QA"/>
+ <subvertex xmi:type="uml:Pseudostate" xmi:id="_vdgWYHh8EeOlpfB_tZS-QA" name="create"/>
+ <subvertex xmi:type="uml:State" xmi:id="_wpIcAHh8EeOlpfB_tZS-QA" name="created"/>
+ <subvertex xmi:type="uml:State" xmi:id="_1L6DoHh8EeOlpfB_tZS-QA" name="reloaded"/>
+ <subvertex xmi:type="uml:State" xmi:id="_5CvLQHh8EeOlpfB_tZS-QA" name="attached"/>
+ <subvertex xmi:type="uml:State" xmi:id="_88sfYHh8EeOlpfB_tZS-QA" name="detached"/>
+ <subvertex xmi:type="uml:Pseudostate" xmi:id="_SOtrgHh9EeOlpfB_tZS-QA" name="load model"/>
+ </region>
+ </packagedElement>
+ <packagedElement xmi:type="uml:StateMachine" xmi:id="_E3DwEHiMEeOlpfB_tZS-QA" name="StateMachine2">
+ <region xmi:type="uml:Region" xmi:id="_GqKscHiMEeOlpfB_tZS-QA" name="Region1">
+ <transition xmi:type="uml:Transition" xmi:id="_QsmasHiMEeOlpfB_tZS-QA" name="Transition0" source="_IRX60HiMEeOlpfB_tZS-QA" target="_IqdJMHiMEeOlpfB_tZS-QA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_S2BlUHiMEeOlpfB_tZS-QA" name="Transition1" source="_IqdJMHiMEeOlpfB_tZS-QA" target="_KcUvcHiMEeOlpfB_tZS-QA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_T6ZzcHiMEeOlpfB_tZS-QA" name="Transition2" source="_IqdJMHiMEeOlpfB_tZS-QA" target="_M9r48HiMEeOlpfB_tZS-QA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_VI4_0HiMEeOlpfB_tZS-QA" name="attach (all cond=true)" source="_M9r48HiMEeOlpfB_tZS-QA" target="_KcUvcHiMEeOlpfB_tZS-QA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_WOy38HiMEeOlpfB_tZS-QA" name="detach" source="_KcUvcHiMEeOlpfB_tZS-QA" target="_M9r48HiMEeOlpfB_tZS-QA"/>
+ <subvertex xmi:type="uml:Pseudostate" xmi:id="_IRX60HiMEeOlpfB_tZS-QA" name="Initial0"/>
+ <subvertex xmi:type="uml:State" xmi:id="_IqdJMHiMEeOlpfB_tZS-QA" name="new"/>
+ <subvertex xmi:type="uml:State" xmi:id="_KcUvcHiMEeOlpfB_tZS-QA" name="attached"/>
+ <subvertex xmi:type="uml:State" xmi:id="_M9r48HiMEeOlpfB_tZS-QA" name="detached"/>
+ </region>
+ </packagedElement>
+ </packagedElement>
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_0oBF4EyqEeObF6ELIGKT-g" name="emf">
<packagedElement xmi:type="uml:Class" xmi:id="_3MwTgEyqEeObF6ELIGKT-g" name="EObject"/>
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/plugin.properties b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/plugin.properties
index e9f98ba0b6c..2c2939eb903 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/plugin.properties
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/plugin.properties
@@ -229,3 +229,7 @@ _UI_EventLevel_allLevels_literal = allLevels
_UI_LayerExpression_isBranchEnabled_feature = Is Branch Enabled
_UI_LayerExpression_owningLayersStack_feature = Owning Layers Stack
_UI_AllViewsDerivedLayer_type = All Views Derived Layer
+_UI_LayerExpression_state_feature = State
+_UI_LayerState_detached_literal = detached
+_UI_LayerState_attached_literal = attached
+_UI_LayersStack_state_feature = State
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/src/org/eclipse/papyrus/layers/stackmodel/layers/provider/LayerExpressionItemProvider.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/src/org/eclipse/papyrus/layers/stackmodel/layers/provider/LayerExpressionItemProvider.java
index 36c9fff93b7..e0c72c9a36b 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/src/org/eclipse/papyrus/layers/stackmodel/layers/provider/LayerExpressionItemProvider.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/src/org/eclipse/papyrus/layers/stackmodel/layers/provider/LayerExpressionItemProvider.java
@@ -71,6 +71,7 @@ ApplicationDependantElementItemProvider
addIsLayerEnabledPropertyDescriptor(object);
addIsBranchEnabledPropertyDescriptor(object);
addOwningLayersStackPropertyDescriptor(object);
+ addStatePropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
@@ -208,6 +209,28 @@ ApplicationDependantElementItemProvider
}
/**
+ * This adds a property descriptor for the State feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addStatePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_LayerExpression_state_feature"),
+ getString("_UI_PropertyDescriptor_description", "_UI_LayerExpression_state_feature", "_UI_LayerExpression_type"),
+ LayersPackage.Literals.LAYER_EXPRESSION__STATE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -238,6 +261,7 @@ ApplicationDependantElementItemProvider
case LayersPackage.LAYER_EXPRESSION__IS_LAYER_ENABLED_INTERNAL:
case LayersPackage.LAYER_EXPRESSION__IS_LAYER_ENABLED:
case LayersPackage.LAYER_EXPRESSION__IS_BRANCH_ENABLED:
+ case LayersPackage.LAYER_EXPRESSION__STATE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/src/org/eclipse/papyrus/layers/stackmodel/layers/provider/LayersStackItemProvider.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/src/org/eclipse/papyrus/layers/stackmodel/layers/provider/LayersStackItemProvider.java
index b566db9f4b1..40b370c347e 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/src/org/eclipse/papyrus/layers/stackmodel/layers/provider/LayersStackItemProvider.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.edit/src/org/eclipse/papyrus/layers/stackmodel/layers/provider/LayersStackItemProvider.java
@@ -72,6 +72,7 @@ public class LayersStackItemProvider
addNamePropertyDescriptor(object);
addDescriptionPropertyDescriptor(object);
addDiagramPropertyDescriptor(object);
+ addStatePropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
@@ -143,6 +144,28 @@ public class LayersStackItemProvider
}
/**
+ * This adds a property descriptor for the State feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addStatePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_LayersStack_state_feature"),
+ getString("_UI_PropertyDescriptor_description", "_UI_LayersStack_state_feature", "_UI_LayersStack_type"),
+ LayersPackage.Literals.LAYERS_STACK__STATE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
* This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
* {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
* {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
@@ -219,6 +242,7 @@ public class LayersStackItemProvider
switch (notification.getFeatureID(LayersStack.class)) {
case LayersPackage.LAYERS_STACK__NAME:
case LayersPackage.LAYERS_STACK__DESCRIPTION:
+ case LayersPackage.LAYERS_STACK__STATE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
case LayersPackage.LAYERS_STACK__LAYERS:
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.tests/src/org/eclipse/papyrus/layers/stackmodel/layers/tests/LayerExpressionTest.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.tests/src/org/eclipse/papyrus/layers/stackmodel/layers/tests/LayerExpressionTest.java
index d6f0ef5d5b8..e54b89eb3b0 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.tests/src/org/eclipse/papyrus/layers/stackmodel/layers/tests/LayerExpressionTest.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.tests/src/org/eclipse/papyrus/layers/stackmodel/layers/tests/LayerExpressionTest.java
@@ -20,8 +20,12 @@ import org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression;
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getComputePropertyValueCommand(org.eclipse.gmf.runtime.notation.View, org.eclipse.papyrus.layers.stackmodel.layers.Property) <em>Get Compute Property Value Command</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getViewsComputePropertyValueCommand(org.eclipse.emf.common.util.EList, org.eclipse.papyrus.layers.stackmodel.layers.Property) <em>Get Views Compute Property Value Command</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getPropertiesComputePropertyValueCommand(org.eclipse.gmf.runtime.notation.View, org.eclipse.emf.common.util.EList) <em>Get Properties Compute Property Value Command</em>}</li>
- * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#initLayer(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack) <em>Init Layer</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#attachToLayersStack(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack) <em>Attach To Layers Stack</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getLayersStack() <em>Get Layers Stack</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#enterAttachedState() <em>Enter Attached State</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#attach() <em>Attach</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#detach() <em>Detach</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#exitAttachedState() <em>Exit Attached State</em>}</li>
* </ul>
* </p>
* @generated
@@ -102,13 +106,13 @@ public abstract class LayerExpressionTest extends ApplicationDependantElementTes
}
/**
- * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#initLayer(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack) <em>Init Layer</em>}' operation.
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#attachToLayersStack(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack) <em>Attach To Layers Stack</em>}' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#initLayer(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack)
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#attachToLayersStack(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack)
* @generated
*/
- public void testInitLayer__LayersStack() {
+ public void testAttachToLayersStack__LayersStack() {
// TODO: implement this operation test method
// Ensure that you remove @generated or mark it @generated NOT
fail();
@@ -127,4 +131,56 @@ public abstract class LayerExpressionTest extends ApplicationDependantElementTes
fail();
}
+ /**
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#enterAttachedState() <em>Enter Attached State</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#enterAttachedState()
+ * @generated
+ */
+ public void testEnterAttachedState() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#attach() <em>Attach</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#attach()
+ * @generated
+ */
+ public void testAttach() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#detach() <em>Detach</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#detach()
+ * @generated
+ */
+ public void testDetach() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#exitAttachedState() <em>Exit Attached State</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#exitAttachedState()
+ * @generated
+ */
+ public void testExitAttachedState() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
} //LayerExpressionTest
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.tests/src/org/eclipse/papyrus/layers/stackmodel/layers/tests/LayersStackTest.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.tests/src/org/eclipse/papyrus/layers/stackmodel/layers/tests/LayersStackTest.java
index 2d3bb829452..e73d9660835 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.tests/src/org/eclipse/papyrus/layers/stackmodel/layers/tests/LayersStackTest.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel.tests/src/org/eclipse/papyrus/layers/stackmodel/layers/tests/LayersStackTest.java
@@ -19,6 +19,12 @@ import org.eclipse.papyrus.layers.stackmodel.layers.LayersStack;
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getComputePropertyValueCommand(org.eclipse.gmf.runtime.notation.View, org.eclipse.papyrus.layers.stackmodel.layers.Property) <em>Get Compute Property Value Command</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getPropertiesComputePropertyValueCommand(org.eclipse.gmf.runtime.notation.View, org.eclipse.emf.common.util.EList) <em>Get Properties Compute Property Value Command</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getViewsComputePropertyValueCommand(org.eclipse.emf.common.util.EList, org.eclipse.papyrus.layers.stackmodel.layers.Property) <em>Get Views Compute Property Value Command</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#startAfterCreation() <em>Start After Creation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#attachLayers() <em>Attach Layers</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#attach() <em>Attach</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#detach() <em>Detach</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#enterAttachedState() <em>Enter Attached State</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#exitAttachedState() <em>Exit Attached State</em>}</li>
* </ul>
* </p>
* @generated
@@ -133,4 +139,82 @@ public class LayersStackTest extends TestCase {
fail();
}
+ /**
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#startAfterCreation() <em>Start After Creation</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#startAfterCreation()
+ * @generated
+ */
+ public void testStartAfterCreation() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#attachLayers() <em>Attach Layers</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#attachLayers()
+ * @generated
+ */
+ public void testAttachLayers() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#attach() <em>Attach</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#attach()
+ * @generated
+ */
+ public void testAttach() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#detach() <em>Detach</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#detach()
+ * @generated
+ */
+ public void testDetach() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#enterAttachedState() <em>Enter Attached State</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#enterAttachedState()
+ * @generated
+ */
+ public void testEnterAttachedState() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#exitAttachedState() <em>Exit Attached State</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#exitAttachedState()
+ * @generated
+ */
+ public void testExitAttachedState() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
} //LayersStackTest
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.di b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.di
index 4f8b162bb47..be066f27bda 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.di
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.di
@@ -37,6 +37,9 @@
<availablePage>
<emfPageIdentifier href="layers.notation#_Up8U8P91EeKlldop5b2mtw"/>
</availablePage>
+ <availablePage>
+ <emfPageIdentifier href="layers.notation#_Vjf6UHbuEeOlpfB_tZS-QA"/>
+ </availablePage>
</pageList>
<sashModel currentSelection="//@sashModel/@windows.0/@children.0">
<windows>
@@ -48,6 +51,9 @@
<emfPageIdentifier href="layers.notation#_y-BQANa7EeKPiuTfpuvqHA"/>
</children>
<children>
+ <emfPageIdentifier href="layers.notation#_Vjf6UHbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children>
<emfPageIdentifier href="layers.notation#_C_qusNa8EeKPiuTfpuvqHA"/>
</children>
<children>
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.ecore b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.ecore
index b11af1d433b..e6f5952988a 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.ecore
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.ecore
@@ -1,6 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="layers" nsURI="org.eclipse.papyrus.layers.0.10" nsPrefix="org.eclipse.papyrus.layers.stackmodel.layers">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Start the LayesStack.&#xD;&#xA;This method should be called after the LayersStack creation. It is not called from the constructor, because &#xD;&#xA;the initialisation can differ if the LayersStack is created by the user or by EMF after a reloading.&#xD;&#xA;"/>
+ </eAnnotations>
<eClassifiers xsi:type="ecore:EClass" name="LayerNamedStyle" eSuperTypes="../../org.eclipse.gmf.runtime.notation/model/notation.ecore#//NamedStyle">
<eStructuralFeatures xsi:type="ecore:EReference" name="layersStack" ordered="false"
upperBound="-1" eType="#//LayersStack" containment="true"/>
@@ -21,6 +24,32 @@
<eParameters name="view" upperBound="-1" eType="ecore:EClass ../../org.eclipse.gmf.runtime.notation/model/notation.ecore#//View"/>
<eParameters name="property" ordered="false" lowerBound="1" eType="#//Property"/>
</eOperations>
+ <eOperations name="startAfterCreation" ordered="false" lowerBound="1"/>
+ <eOperations name="attachLayers" ordered="false" lowerBound="1" eExceptions="#//LayersException">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Start the LayersStack after a reloading by EMF. This method should be explicitly called after a reloading.&#xD;&#xA;The method usually start the layer behaviors."/>
+ </eAnnotations>
+ </eOperations>
+ <eOperations name="attach" ordered="false" lowerBound="1" eExceptions="#//LayersException">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Try to attach this Layer. If successful, the state go to &quot;attached&quot;. Otherwise, an exception is thrown.&#xD;&#xA;A Layer can be attached if its required attributes are set.&#xD;&#xA;Required attributes:&#xD;&#xA;&lt;ul>&#xD;&#xA; &lt;li>application&lt;/li>&#xD;&#xA; &lt;li>owningLayerStack&lt;/li>&#xD;&#xA; &lt;li>parent container&lt;/li>&#xD;&#xA; &lt;li>&lt;/li>&#xD;&#xA;&lt;/ul>&#xD;&#xA;Just after enterring in &quot;attached&quot; state, the enterAttachedState() method is called.&#xD;&#xA;If this Layer is successfully attached, then attach subLayers."/>
+ </eAnnotations>
+ </eOperations>
+ <eOperations name="detach" ordered="false" lowerBound="1" eExceptions="#//LayersException">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Detach the Layer. The state go to &quot;detached&quot;.&#xD;&#xA;Associated behavior are stopped."/>
+ </eAnnotations>
+ </eOperations>
+ <eOperations name="enterAttachedState" ordered="false" lowerBound="1" eExceptions="#//LayersException">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This method is called by the class immediately after entering in attached state.&#xD;&#xA;The methodcan be used to start the layer behaviors."/>
+ </eAnnotations>
+ </eOperations>
+ <eOperations name="exitAttachedState" ordered="false" lowerBound="1">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This method is called just before this Layer leave the attached state.&#xD;&#xA;"/>
+ </eAnnotations>
+ </eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="layers" ordered="false"
eType="#//LayerExpression" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" lowerBound="1"
@@ -29,6 +58,8 @@
lowerBound="1" eType="#//String"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="diagram" ordered="false"
eType="ecore:EClass ../../org.eclipse.gmf.runtime.notation/model/notation.ecore#//Diagram"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="state" ordered="false"
+ unique="false" lowerBound="1" eType="#//LayerState" defaultValueLiteral="detached"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LayerExpression" abstract="true" eSuperTypes="#//ApplicationDependantElement">
<eOperations name="getComputePropertyValueCommand" ordered="false" lowerBound="1"
@@ -46,9 +77,9 @@
<eParameters name="view" ordered="false" lowerBound="1" eType="ecore:EClass ../../org.eclipse.gmf.runtime.notation/model/notation.ecore#//View"/>
<eParameters name="property" lowerBound="1" upperBound="-1" eType="#//Property"/>
</eOperations>
- <eOperations name="initLayer" ordered="false" lowerBound="1">
+ <eOperations name="attachToLayersStack" ordered="false" lowerBound="1">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Method called to specify that this Layer should be initialized for the specified LayerStack.&#xD;&#xA;Init this Layer for the specified LayersStack."/>
+ <details key="documentation" value="Method called to specify that this Layer should be initialized for the specified LayerStack.&#xD;&#xA;Init this Layer for the specified LayersStack.&#xD;&#xA;This method is called by the LayersStack when it detect that tha layer is attached to it.&#xD;&#xA;"/>
</eAnnotations>
<eParameters name="owningLayersStack" ordered="false" lowerBound="1" eType="#//LayersStack"/>
</eOperations>
@@ -58,6 +89,26 @@
<details key="documentation" value="A checked version of getOwningLayersStack.&#xD;&#xA;"/>
</eAnnotations>
</eOperations>
+ <eOperations name="enterAttachedState" ordered="false" lowerBound="1" eExceptions="#//LayersException">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This method is called by the class immediately after entering in attached state.&#xD;&#xA;The methodcan be used to start the layer behaviors."/>
+ </eAnnotations>
+ </eOperations>
+ <eOperations name="attach" ordered="false" lowerBound="1" eExceptions="#//LayersException">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Try to attach this Layer. If successful, the state go to &quot;attached&quot;. Otherwise, an exception is thrown.&#xD;&#xA;A Layer can be attached if its required attributes are set.&#xD;&#xA;Required attributes:&#xD;&#xA;&lt;ul>&#xD;&#xA; &lt;li>application&lt;/li>&#xD;&#xA; &lt;li>owningLayerStack&lt;/li>&#xD;&#xA; &lt;li>parent container&lt;/li>&#xD;&#xA; &lt;li>&lt;/li>&#xD;&#xA;&lt;/ul>&#xD;&#xA;Just after enterring in &quot;attached&quot; state, the enterAttachedState() method is called.&#xD;&#xA;If this Layer is successfully attached, then attach subLayers."/>
+ </eAnnotations>
+ </eOperations>
+ <eOperations name="detach" ordered="false" lowerBound="1" eExceptions="#//LayersException">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Detach the Layer. The state go to &quot;detached&quot;.&#xD;&#xA;Associated behavior are stopped."/>
+ </eAnnotations>
+ </eOperations>
+ <eOperations name="exitAttachedState" ordered="false" lowerBound="1">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This method is called just before this Layer leave the attached state.&#xD;&#xA;"/>
+ </eAnnotations>
+ </eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" lowerBound="1"
eType="#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" ordered="false"
@@ -75,6 +126,8 @@
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningLayersStack" ordered="false"
eType="#//LayersStack"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="state" ordered="false"
+ unique="false" lowerBound="1" eType="#//LayerState" defaultValueLiteral="detached"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ApplicationDependantElement" abstract="true">
<eStructuralFeatures xsi:type="ecore:EReference" name="application" ordered="false"
@@ -337,6 +390,10 @@
eType="#//LayerExpression" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DefaultPropertyOperator" eSuperTypes="#//PropertyOperator"/>
+ <eClassifiers xsi:type="ecore:EEnum" name="LayerState">
+ <eLiterals name="detached"/>
+ <eLiterals name="attached" value="1"/>
+ </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AbstractLayer" abstract="true" eSuperTypes="#//LayerExpression">
<eOperations name="addPropertyInstance" ordered="false" lowerBound="1" eType="#//TypeInstance"
eExceptions="#//LayersException">
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.genmodel b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.genmodel
index 5b0b8a988b0..1fcbb2aaabb 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.genmodel
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.genmodel
@@ -29,6 +29,10 @@
<foreignModel>layers.uml</foreignModel>
<genPackages xsi:type="genmodel:GenPackage" prefix="Layers" basePackage="org.eclipse.papyrus.layers.stackmodel"
disposableProviderFactory="true" ecorePackage="layers.ecore#/">
+ <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="layers.ecore#//LayerState">
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="layers.ecore#//LayerState/detached"/>
+ <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="layers.ecore#//LayerState/attached"/>
+ </genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="layers.ecore#//EventLevel">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="layers.ecore#//EventLevel/level1"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="layers.ecore#//EventLevel/allLevels"/>
@@ -54,6 +58,7 @@
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute layers.ecore#//LayersStack/description"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference layers.ecore#//LayersStack/diagram"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute layers.ecore#//LayersStack/state"/>
<genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayersStack/getComputePropertyValueCommand">
<genParameters xsi:type="genmodel:GenParameter" ecoreParameter="layers.ecore#//LayersStack/getComputePropertyValueCommand/view"/>
<genParameters xsi:type="genmodel:GenParameter" ecoreParameter="layers.ecore#//LayersStack/getComputePropertyValueCommand/property"/>
@@ -66,6 +71,12 @@
<genParameters xsi:type="genmodel:GenParameter" ecoreParameter="layers.ecore#//LayersStack/getViewsComputePropertyValueCommand/view"/>
<genParameters xsi:type="genmodel:GenParameter" ecoreParameter="layers.ecore#//LayersStack/getViewsComputePropertyValueCommand/property"/>
</genOperations>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayersStack/startAfterCreation"/>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayersStack/attachLayers"/>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayersStack/attach"/>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayersStack/detach"/>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayersStack/enterAttachedState"/>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayersStack/exitAttachedState"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="layers.ecore#//LayerExpression">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute layers.ecore#//LayerExpression/name"/>
@@ -76,6 +87,7 @@
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute layers.ecore#//LayerExpression/isBranchEnabled"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference layers.ecore#//LayerExpression/owningLayersStack"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute layers.ecore#//LayerExpression/state"/>
<genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayerExpression/getComputePropertyValueCommand">
<genParameters xsi:type="genmodel:GenParameter" ecoreParameter="layers.ecore#//LayerExpression/getComputePropertyValueCommand/view"/>
<genParameters xsi:type="genmodel:GenParameter" ecoreParameter="layers.ecore#//LayerExpression/getComputePropertyValueCommand/property"/>
@@ -88,10 +100,14 @@
<genParameters xsi:type="genmodel:GenParameter" ecoreParameter="layers.ecore#//LayerExpression/getPropertiesComputePropertyValueCommand/view"/>
<genParameters xsi:type="genmodel:GenParameter" ecoreParameter="layers.ecore#//LayerExpression/getPropertiesComputePropertyValueCommand/property"/>
</genOperations>
- <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayerExpression/initLayer">
- <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="layers.ecore#//LayerExpression/initLayer/owningLayersStack"/>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayerExpression/attachToLayersStack">
+ <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="layers.ecore#//LayerExpression/attachToLayersStack/owningLayersStack"/>
</genOperations>
<genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayerExpression/getLayersStack"/>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayerExpression/enterAttachedState"/>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayerExpression/attach"/>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayerExpression/detach"/>
+ <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="layers.ecore#//LayerExpression/exitAttachedState"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="layers.ecore#//ApplicationDependantElement">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.notation b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.notation
index 313bed87174..6a5038b50e4 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.notation
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.notation
@@ -826,6 +826,14 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_zpKezda7EeKPiuTfpuvqHA"/>
</children>
<children xmi:type="notation:BasicCompartment" xmi:id="_zpKezta7EeKPiuTfpuvqHA" type="7018">
+ <children xmi:type="notation:Shape" xmi:id="_U4pyQHl6EeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_9n-f4HbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_U4pyQXl6EeOlpfB_tZS-QA" x="50" y="17"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_VuiRYHl6EeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_rQGJoHbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VuiRYXl6EeOlpfB_tZS-QA" x="71" y="17"/>
+ </children>
<styles xmi:type="notation:TitleStyle" xmi:id="_zpKez9a7EeKPiuTfpuvqHA"/>
<styles xmi:type="notation:SortingStyle" xmi:id="_zpKe0Na7EeKPiuTfpuvqHA"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_zpKe0da7EeKPiuTfpuvqHA"/>
@@ -838,7 +846,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_zpKe19a7EeKPiuTfpuvqHA"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_gT0asNa7EeKPiuTfpuvqHA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zpKewda7EeKPiuTfpuvqHA" x="-24" y="78" height="133"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zpKewda7EeKPiuTfpuvqHA" x="120" y="108" width="242" height="133"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_52F7ENa7EeKPiuTfpuvqHA" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_52F7Eta7EeKPiuTfpuvqHA" source="ShadowFigure">
@@ -870,7 +878,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_52F7J9a7EeKPiuTfpuvqHA"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_51zAINa7EeKPiuTfpuvqHA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_52F7Eda7EeKPiuTfpuvqHA" x="480" y="348" width="115" height="193"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_52F7Eda7EeKPiuTfpuvqHA" x="696" y="378" width="115" height="193"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_AjwF4Na8EeKPiuTfpuvqHA" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_AjwF4ta8EeKPiuTfpuvqHA" source="ShadowFigure">
@@ -902,7 +910,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_AjwF99a8EeKPiuTfpuvqHA"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_AjTZ8Na8EeKPiuTfpuvqHA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AjwF4da8EeKPiuTfpuvqHA" x="747" y="349"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AjwF4da8EeKPiuTfpuvqHA" x="963" y="379"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_T7HNENbFEeKPiuTfpuvqHA" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_T7HNEtbFEeKPiuTfpuvqHA" source="ShadowFigure">
@@ -934,7 +942,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_T7QXB9bFEeKPiuTfpuvqHA"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_eNnjMNa7EeKPiuTfpuvqHA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T7HNEdbFEeKPiuTfpuvqHA" x="744" y="228"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T7HNEdbFEeKPiuTfpuvqHA" x="960" y="258"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_vMekkNjKEeKgkM6XJF9t4A" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vMkrMNjKEeKgkM6XJF9t4A" source="ShadowFigure">
@@ -974,7 +982,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_vMkrRdjKEeKgkM6XJF9t4A"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_vMMQsNjKEeKgkM6XJF9t4A"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vMekkdjKEeKgkM6XJF9t4A" x="744" y="480" width="203"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vMekkdjKEeKgkM6XJF9t4A" x="960" y="510" width="203"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_9IsT4NjiEeKQqZMBCFd2Uw" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9IsT4tjiEeKQqZMBCFd2Uw" source="ShadowFigure">
@@ -1062,7 +1070,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_9IyakNjiEeKQqZMBCFd2Uw"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_9IaAANjiEeKQqZMBCFd2Uw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9IsT4djiEeKQqZMBCFd2Uw" x="252" y="54" width="475" height="238"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9IsT4djiEeKQqZMBCFd2Uw" x="468" y="72" width="475" height="250"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_Hoi98NjjEeKQqZMBCFd2Uw" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Hoi98tjjEeKQqZMBCFd2Uw" source="ShadowFigure">
@@ -1094,7 +1102,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Hoi-B9jjEeKQqZMBCFd2Uw"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_HoKjcNjjEeKQqZMBCFd2Uw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Hoi98djjEeKQqZMBCFd2Uw" x="144" y="330" width="115"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Hoi98djjEeKQqZMBCFd2Uw" x="360" y="360" width="115"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_WunlMNjjEeKQqZMBCFd2Uw" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Wutr0NjjEeKQqZMBCFd2Uw" source="ShadowFigure">
@@ -1126,7 +1134,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wutr5djjEeKQqZMBCFd2Uw"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_WuVRUNjjEeKQqZMBCFd2Uw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WunlMdjjEeKQqZMBCFd2Uw" x="240" y="504" width="157"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WunlMdjjEeKQqZMBCFd2Uw" x="456" y="534" width="157"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_gqpJcNjjEeKQqZMBCFd2Uw" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_gqvQENjjEeKQqZMBCFd2Uw" source="ShadowFigure">
@@ -1158,7 +1166,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_gqvQJdjjEeKQqZMBCFd2Uw"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_gqW1kNjjEeKQqZMBCFd2Uw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gqpJcdjjEeKQqZMBCFd2Uw" x="366" y="642"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gqpJcdjjEeKQqZMBCFd2Uw" x="582" y="672"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_wpUMoNjjEeKQqZMBCFd2Uw" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_wpUMotjjEeKQqZMBCFd2Uw" source="ShadowFigure">
@@ -1190,7 +1198,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_wpUMt9jjEeKQqZMBCFd2Uw"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_wpB4wNjjEeKQqZMBCFd2Uw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wpUModjjEeKQqZMBCFd2Uw" x="156" y="642" width="169"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wpUModjjEeKQqZMBCFd2Uw" x="372" y="672" width="169"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_1xfAUNjjEeKQqZMBCFd2Uw" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1xfnYNjjEeKQqZMBCFd2Uw" source="ShadowFigure">
@@ -1222,7 +1230,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_1xgOg9jjEeKQqZMBCFd2Uw"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_1xJCENjjEeKQqZMBCFd2Uw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1xfAUdjjEeKQqZMBCFd2Uw" x="6" y="504" width="163"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1xfAUdjjEeKQqZMBCFd2Uw" x="222" y="534" width="163"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_zT_qYNt5EeKwptaAAanMDg" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zT_qYtt5EeKwptaAAanMDg" source="ShadowFigure">
@@ -1254,7 +1262,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_zT_qd9t5EeKwptaAAanMDg"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_325AENt0EeKQqZMBCFd2Uw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zT_qYdt5EeKwptaAAanMDg" x="396" y="-48" height="45"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zT_qYdt5EeKwptaAAanMDg" x="612" y="-18" height="45"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_z-jdcOHTEeKCZbxNW-U3VQ" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_z-jdcuHTEeKCZbxNW-U3VQ" source="ShadowFigure">
@@ -1342,7 +1350,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_z-jdh-HTEeKCZbxNW-U3VQ"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_z9aN8OHTEeKCZbxNW-U3VQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z-jdceHTEeKCZbxNW-U3VQ" x="684" y="666"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z-jdceHTEeKCZbxNW-U3VQ" x="900" y="696"/>
</children>
<children xmi:type="notation:Shape" xmi:id="__1eoIOHTEeKCZbxNW-U3VQ" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__1eoIuHTEeKCZbxNW-U3VQ" source="ShadowFigure">
@@ -1374,7 +1382,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="__1eoN-HTEeKCZbxNW-U3VQ"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#__1GNoOHTEeKCZbxNW-U3VQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="__1eoIeHTEeKCZbxNW-U3VQ" x="516" y="666"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__1eoIeHTEeKCZbxNW-U3VQ" x="732" y="696"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_7c7RQFVHEeOah7Z-UYdQAA" type="2006" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7c7RQlVHEeOah7Z-UYdQAA" source="ShadowFigure">
@@ -1402,7 +1410,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_7c7RTVVHEeOah7Z-UYdQAA"/>
</children>
<element xmi:type="uml:Enumeration" href="layers.uml#_7cWpgFVHEeOah7Z-UYdQAA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7c7RQVVHEeOah7Z-UYdQAA" x="280" y="790"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7c7RQVVHEeOah7Z-UYdQAA" x="496" y="820"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_ft-hUWtpEeOlpfB_tZS-QA" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ft-hU2tpEeOlpfB_tZS-QA" source="ShadowFigure">
@@ -1434,7 +1442,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_fuEoA2tpEeOlpfB_tZS-QA"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_ft-hUGtpEeOlpfB_tZS-QA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ft-hUmtpEeOlpfB_tZS-QA" x="516" y="792"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ft-hUmtpEeOlpfB_tZS-QA" x="732" y="822"/>
</children>
<styles xmi:type="notation:DiagramStyle" xmi:id="_y-BQAda7EeKPiuTfpuvqHA"/>
<element xmi:type="uml:Model" href="layers.uml#_gAOFQLcqEeK8_t7Rpq6ZJA"/>
@@ -2052,7 +2060,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_bHgZ5NhbEeKgkM6XJF9t4A"/>
</children>
<element xmi:type="uml:Class" href="layers.uml#_-vaacNa7EeKPiuTfpuvqHA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bHaTMdhbEeKgkM6XJF9t4A" x="96" y="150" height="385"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bHaTMdhbEeKgkM6XJF9t4A" x="18" y="144" height="385"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_bvJBkNhbEeKgkM6XJF9t4A" type="2008" fontName="Segoe UI" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bvJBkthbEeKgkM6XJF9t4A" source="ShadowFigure">
@@ -3438,7 +3446,6 @@
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_M3hWt9kDEeKQqZMBCFd2Uw" key="QualifiedNameDepth" value="1000"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_M3hWuNkDEeKQqZMBCFd2Uw" type="5038"/>
- <element xmi:type="uml:Comment" href="layers.uml#_M28u8NkDEeKQqZMBCFd2Uw"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_M3hWsdkDEeKQqZMBCFd2Uw" x="246" y="180"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_a8TPANqCEeKQqZMBCFd2Uw" type="2008" fontName="Segoe UI" lineColor="0">
@@ -5621,4 +5628,413 @@
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UrRKYgxJEeOjX-JbGFEH7w" id="(0.8253275109170306,1.0)"/>
</edges>
</notation:Diagram>
+ <notation:Diagram xmi:id="_Vjf6UHbuEeOlpfB_tZS-QA" type="PapyrusUMLClassDiagram" name="LayersStack" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_bGfo0HbuEeOlpfB_tZS-QA" type="2008" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfo0XbuEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo0nbuEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfo03buEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo1HbuEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfo1XbuEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo1nbuEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfo13buEeOlpfB_tZS-QA" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfo2HbuEeOlpfB_tZS-QA" type="7017">
+ <children xmi:type="notation:Shape" xmi:id="_bGfo2XbuEeOlpfB_tZS-QA" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="layers.uml#_AWx_gNjuEeKQqZMBCFd2Uw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfo2nbuEeOlpfB_tZS-QA" x="47" y="9"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfo23buEeOlpfB_tZS-QA" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="layers.uml#_AW-MwNjuEeKQqZMBCFd2Uw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfo3HbuEeOlpfB_tZS-QA" x="47" y="9"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfo3XbuEeOlpfB_tZS-QA" type="3012" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfo3nbuEeOlpfB_tZS-QA" source="Stereotype_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo33buEeOlpfB_tZS-QA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo4HbuEeOlpfB_tZS-QA" key="StereotypeList" value="Ecore::EAttribute"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo4XbuEeOlpfB_tZS-QA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo4nbuEeOlpfB_tZS-QA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo43buEeOlpfB_tZS-QA" key="StereotypePropertyLocation" value="Compartment"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="layers.uml#_mCUIAAxEEeOjX-JbGFEH7w"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfo5HbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfo5XbuEeOlpfB_tZS-QA" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="layers.uml#_qaozIAxEEeOjX-JbGFEH7w"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfo5nbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfo53buEeOlpfB_tZS-QA" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="layers.uml#_xcbgQGQ7EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfo6HbuEeOlpfB_tZS-QA" x="153" y="77"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_E2yuoHluEeOlpfB_tZS-QA" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="layers.uml#_E2soAHluEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_E2yuoXluEeOlpfB_tZS-QA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfo6XbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfo6nbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfo63buEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfo7HbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfo7XbuEeOlpfB_tZS-QA" type="7018">
+ <children xmi:type="notation:Shape" xmi:id="_bGfo7nbuEeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfo73buEeOlpfB_tZS-QA" source="CustomAppearance_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo8HbuEeOlpfB_tZS-QA" key="CustomAppearance_MaskValue" value="17160"/>
+ </eAnnotations>
+ <element xmi:type="uml:Operation" href="layers.uml#_VdSFsO7HEeK0p4PkXjd-_Q"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfo8XbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfo8nbuEeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfo83buEeOlpfB_tZS-QA" source="CustomAppearance_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo9HbuEeOlpfB_tZS-QA" key="CustomAppearance_MaskValue" value="17160"/>
+ </eAnnotations>
+ <element xmi:type="uml:Operation" href="layers.uml#_xfz8UO7HEeK0p4PkXjd-_Q"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfo9XbuEeOlpfB_tZS-QA" x="93" y="23"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfo9nbuEeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfo93buEeOlpfB_tZS-QA" source="CustomAppearance_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfo-HbuEeOlpfB_tZS-QA" key="CustomAppearance_MaskValue" value="17160"/>
+ </eAnnotations>
+ <element xmi:type="uml:Operation" href="layers.uml#_x2PfUO7HEeK0p4PkXjd-_Q"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfo-XbuEeOlpfB_tZS-QA" x="93" y="23"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfo-nbuEeOlpfB_tZS-QA" type="3013" fontColor="8421504" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_Ps2L4GUaEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfo-3buEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfo_HbuEeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_kzSSwGUdEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfo_XbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_g7BWwHbvEeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_YeJ4IHbvEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_g7BWwXbvEeOlpfB_tZS-QA" x="212" y="84"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_VTiN4HluEeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_VTcHQHluEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VTiN4XluEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XeS1QXluEeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_XeS1QHluEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XeS1QnluEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_XNTkMXl0EeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_XNTkMHl0EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XNTkMnl0EeOlpfB_tZS-QA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfo_nbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfo_3buEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfpAHbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfpAXbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfpAnbuEeOlpfB_tZS-QA" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfpA3buEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfpBHbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfpBXbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfpBnbuEeOlpfB_tZS-QA"/>
+ </children>
+ <element xmi:type="uml:Class" href="layers.uml#_9IaAANjiEeKQqZMBCFd2Uw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfpCnbuEeOlpfB_tZS-QA" x="546" y="132" width="481" height="349"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfp73buEeOlpfB_tZS-QA" type="2008" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfp8HbuEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfp8XbuEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfp8nbuEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfp83buEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfp9HbuEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfp9XbuEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfp9nbuEeOlpfB_tZS-QA" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfp93buEeOlpfB_tZS-QA" type="7017">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfp-HbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfp-XbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfp-nbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfp-3buEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfp_HbuEeOlpfB_tZS-QA" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfp_XbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfp_nbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfp_3buEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfqAHbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfqAXbuEeOlpfB_tZS-QA" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfqAnbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfqA3buEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfqBHbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfqBXbuEeOlpfB_tZS-QA"/>
+ </children>
+ <element xmi:type="uml:Class" href="layers.uml#_325AENt0EeKQqZMBCFd2Uw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfqCXbuEeOlpfB_tZS-QA" x="690" y="30" height="45"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfqCnbuEeOlpfB_tZS-QA" type="2008" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfqC3buEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfqDHbuEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfqDXbuEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfqDnbuEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfqD3buEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfqEHbuEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfqEXbuEeOlpfB_tZS-QA" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfqEnbuEeOlpfB_tZS-QA" type="7017">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfqE3buEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfqFHbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfqFXbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfqFnbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfqF3buEeOlpfB_tZS-QA" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfqGHbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfqGXbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfqGnbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfqG3buEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfqHHbuEeOlpfB_tZS-QA" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfqHXbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfqHnbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfqH3buEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfqIHbuEeOlpfB_tZS-QA"/>
+ </children>
+ <element xmi:type="uml:Class" href="layers.uml#_51zAINa7EeKPiuTfpuvqHA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfqJHbuEeOlpfB_tZS-QA" x="774" y="576" width="115" height="193"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfq6HbuEeOlpfB_tZS-QA" type="2008" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfq6XbuEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfq6nbuEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfq63buEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfq7HbuEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfq7XbuEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfq7nbuEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfq73buEeOlpfB_tZS-QA" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfq8HbuEeOlpfB_tZS-QA" type="7017">
+ <children xmi:type="notation:Shape" xmi:id="_bGfq8XbuEeOlpfB_tZS-QA" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="layers.uml#_ctvjINjwEeKQqZMBCFd2Uw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfq8nbuEeOlpfB_tZS-QA" x="58" y="16"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfq83buEeOlpfB_tZS-QA" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="layers.uml#_ct7wYNjwEeKQqZMBCFd2Uw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfq9HbuEeOlpfB_tZS-QA" x="58" y="16"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_fKXnwHl8EeOlpfB_tZS-QA" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="layers.uml#_c5OEgHl8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_fKXnwXl8EeOlpfB_tZS-QA" x="112" y="67"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfq9XbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfq9nbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfq93buEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfq-HbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfq-XbuEeOlpfB_tZS-QA" type="7018">
+ <children xmi:type="notation:Shape" xmi:id="_rQGJoXbuEeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_rQGJoHbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rQGJonbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_9n-f4XbuEeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_9n-f4HbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9n-f4nbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_an4UAHl8EeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_RnmmUHl8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_an4UAXl8EeOlpfB_tZS-QA" x="90" y="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_an-aoHl8EeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_RnmmUnl8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_an-aoXl8EeOlpfB_tZS-QA" x="90" y="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_aoEhQHl8EeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_RnmmVHl8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aoEhQXl8EeOlpfB_tZS-QA" x="90" y="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_aoEhQnl8EeOlpfB_tZS-QA" type="3013" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Operation" href="layers.uml#_RnmmVnl8EeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aoEhQ3l8EeOlpfB_tZS-QA" x="90" y="100"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfq-nbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfq-3buEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfq_HbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfq_XbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfq_nbuEeOlpfB_tZS-QA" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfq_3buEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfrAHbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfrAXbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfrAnbuEeOlpfB_tZS-QA"/>
+ </children>
+ <element xmi:type="uml:Class" href="layers.uml#_gT0asNa7EeKPiuTfpuvqHA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfrBnbuEeOlpfB_tZS-QA" x="72" y="132" width="310" height="343"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bGfrN3buEeOlpfB_tZS-QA" type="2008" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfrOHbuEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfrOXbuEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfrOnbuEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfrO3buEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bGfrPHbuEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bGfrPXbuEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfrPnbuEeOlpfB_tZS-QA" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfrP3buEeOlpfB_tZS-QA" type="7017">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfrQHbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfrQXbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfrQnbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfrQ3buEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfrRHbuEeOlpfB_tZS-QA" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfrRXbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfrRnbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfrR3buEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfrSHbuEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_bGfrSXbuEeOlpfB_tZS-QA" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_bGfrSnbuEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_bGfrS3buEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_bGfrTHbuEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfrTXbuEeOlpfB_tZS-QA"/>
+ </children>
+ <element xmi:type="uml:Class" href="layers.uml#_HoKjcNjjEeKQqZMBCFd2Uw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bGfrUXbuEeOlpfB_tZS-QA" x="438" y="576" width="115"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_9AF4IHltEeOlpfB_tZS-QA" type="2006" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9AL-wHltEeOlpfB_tZS-QA" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9AL-wXltEeOlpfB_tZS-QA" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9AL-wnltEeOlpfB_tZS-QA" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9AL-w3ltEeOlpfB_tZS-QA" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9AL-xHltEeOlpfB_tZS-QA" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9AL-xXltEeOlpfB_tZS-QA" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_9AL-xnltEeOlpfB_tZS-QA" type="5023"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_9AL-x3ltEeOlpfB_tZS-QA" type="7015">
+ <children xmi:type="notation:Shape" xmi:id="_AKSjQHluEeOlpfB_tZS-QA" type="3017" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:EnumerationLiteral" href="layers.uml#_AKMcoHluEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AKSjQXluEeOlpfB_tZS-QA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_BUS4QXluEeOlpfB_tZS-QA" type="3017" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:EnumerationLiteral" href="layers.uml#_BUS4QHluEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BUS4QnluEeOlpfB_tZS-QA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_9AL-yHltEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_9AL-yXltEeOlpfB_tZS-QA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_9AL-ynltEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9AL-y3ltEeOlpfB_tZS-QA"/>
+ </children>
+ <element xmi:type="uml:Enumeration" href="layers.uml#_8__xgHltEeOlpfB_tZS-QA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9AF4IXltEeOlpfB_tZS-QA" x="1122" y="162"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_Vjf6UXbuEeOlpfB_tZS-QA"/>
+ <element xmi:type="uml:Model" href="layers.uml#_gAOFQLcqEeK8_t7Rpq6ZJA"/>
+ <edges xmi:type="notation:Connector" xmi:id="_bGfpC3buEeOlpfB_tZS-QA" type="4002" source="_bGfrN3buEeOlpfB_tZS-QA" target="_bGfo0HbuEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfpDHbuEeOlpfB_tZS-QA" type="6007">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfpDXbuEeOlpfB_tZS-QA" y="40"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_bGfpDnbuEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Generalization" href="layers.uml#_OJCPcNjjEeKQqZMBCFd2Uw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bGfpD3buEeOlpfB_tZS-QA" points="[2, -2, -91, 72]$[90, -64, -3, 10]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfpEHbuEeOlpfB_tZS-QA" id="(0.6,0.02)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfpEXbuEeOlpfB_tZS-QA" id="(0.4122137404580153,0.9)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_bGfpVnbuEeOlpfB_tZS-QA" type="4002" source="_bGfo0HbuEeOlpfB_tZS-QA" target="_bGfp73buEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfpV3buEeOlpfB_tZS-QA" type="6007">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfpWHbuEeOlpfB_tZS-QA" y="40"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_bGfpWXbuEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Generalization" href="layers.uml#_18JYYNt5EeKwptaAAanMDg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bGfpWnbuEeOlpfB_tZS-QA" points="[-3, -5, 0, 82]$[-11, -80, -8, 7]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfpW3buEeOlpfB_tZS-QA" id="(0.48210526315789476,0.004672897196261682)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfpXHbuEeOlpfB_tZS-QA" id="(0.41624365482233505,0.8444444444444444)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_bGfpXXbuEeOlpfB_tZS-QA" type="4002" source="_bGfqCnbuEeOlpfB_tZS-QA" target="_bGfo0HbuEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfpXnbuEeOlpfB_tZS-QA" type="6007">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfpX3buEeOlpfB_tZS-QA" y="40"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_bGfpYHbuEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Generalization" href="layers.uml#__ujk4NjMEeKgkM6XJF9t4A"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bGfpYXbuEeOlpfB_tZS-QA" points="[25, -12, -69, 32]$[88, -42, -6, 2]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfpYnbuEeOlpfB_tZS-QA" id="(0.62,0.053811659192825115)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfpY3buEeOlpfB_tZS-QA" id="(0.08396946564885496,0.59)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_bGfp3nbuEeOlpfB_tZS-QA" type="4001" source="_bGfq6HbuEeOlpfB_tZS-QA" target="_bGfo0HbuEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfp33buEeOlpfB_tZS-QA" visible="false" type="6001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfp4HbuEeOlpfB_tZS-QA" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfp4XbuEeOlpfB_tZS-QA" visible="false" type="6002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfp4nbuEeOlpfB_tZS-QA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfp43buEeOlpfB_tZS-QA" visible="false" type="6003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfp5HbuEeOlpfB_tZS-QA" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfp5XbuEeOlpfB_tZS-QA" type="6005">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfp5nbuEeOlpfB_tZS-QA" x="-16" y="9"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfp53buEeOlpfB_tZS-QA" visible="false" type="6033">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfp6HbuEeOlpfB_tZS-QA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfp6XbuEeOlpfB_tZS-QA" type="6034">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfp6nbuEeOlpfB_tZS-QA" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_bGfp63buEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Association" href="layers.uml#_cHkbsNbGEeKPiuTfpuvqHA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bGfp7HbuEeOlpfB_tZS-QA" points="[5, -6, -94, 0]$[97, -7, -2, -1]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfp7XbuEeOlpfB_tZS-QA" id="(0.9941176470588236,0.3533834586466165)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfp7nbuEeOlpfB_tZS-QA" id="(0.002079002079002079,0.2591362126245847)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_bGfqJXbuEeOlpfB_tZS-QA" type="4001" source="_bGfo0HbuEeOlpfB_tZS-QA" target="_bGfq6HbuEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfqJnbuEeOlpfB_tZS-QA" visible="false" type="6001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfqJ3buEeOlpfB_tZS-QA" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfqKHbuEeOlpfB_tZS-QA" visible="false" type="6002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfqKXbuEeOlpfB_tZS-QA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfqKnbuEeOlpfB_tZS-QA" visible="false" type="6003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfqK3buEeOlpfB_tZS-QA" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfqLHbuEeOlpfB_tZS-QA" type="6005">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfqLXbuEeOlpfB_tZS-QA" x="-22" y="15"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfqLnbuEeOlpfB_tZS-QA" visible="false" type="6033">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfqL3buEeOlpfB_tZS-QA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfqMHbuEeOlpfB_tZS-QA" type="6034">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfqMXbuEeOlpfB_tZS-QA" x="-14" y="-15"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_bGfqMnbuEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Association" href="layers.uml#_PznBc2Q5EeOlpfB_tZS-QA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bGfqM3buEeOlpfB_tZS-QA" points="[-2, -4, 81, 0]$[-78, -1, 5, 3]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfqNHbuEeOlpfB_tZS-QA" id="(0.004210526315789474,0.5560747663551402)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfqNXbuEeOlpfB_tZS-QA" id="(0.9705882352941176,0.8646616541353384)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_bGfrB3buEeOlpfB_tZS-QA" type="4001" source="_bGfrN3buEeOlpfB_tZS-QA" target="_bGfo0HbuEeOlpfB_tZS-QA" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfrCHbuEeOlpfB_tZS-QA" visible="false" type="6001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfrCXbuEeOlpfB_tZS-QA" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfrCnbuEeOlpfB_tZS-QA" visible="false" type="6002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfrC3buEeOlpfB_tZS-QA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfrDHbuEeOlpfB_tZS-QA" visible="false" type="6003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfrDXbuEeOlpfB_tZS-QA" x="-34" y="-41"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfrDnbuEeOlpfB_tZS-QA" type="6005">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfrD3buEeOlpfB_tZS-QA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfrEHbuEeOlpfB_tZS-QA" visible="false" type="6033">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfrEXbuEeOlpfB_tZS-QA" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bGfrEnbuEeOlpfB_tZS-QA" type="6034">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bGfrE3buEeOlpfB_tZS-QA" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_bGfrFHbuEeOlpfB_tZS-QA" fontName="Segoe UI"/>
+ <element xmi:type="uml:Association" href="layers.uml#_em-rwNjnEeKQqZMBCFd2Uw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bGfrFXbuEeOlpfB_tZS-QA" points="[0, -4, -89, 78]$[0, -76, -89, 6]$[87, -76, -2, 6]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfrFnbuEeOlpfB_tZS-QA" id="(0.1826086956521739,0.04)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bGfrF3buEeOlpfB_tZS-QA" id="(0.015267175572519083,0.84)"/>
+ </edges>
+ </notation:Diagram>
</xmi:XMI>
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.uml b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.uml
index a73e8958beb..97a0944861e 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.uml
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/model/layers.uml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="20110701" xmlns:xmi="http://www.omg.org/spec/XMI/20110701" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA">
<uml:Model xmi:id="_gAOFQLcqEeK8_t7Rpq6ZJA" name="layers">
- <ownedComment xmi:type="uml:Comment" xmi:id="_M28u8NkDEeKQqZMBCFd2Uw">
- <body>Not use anymore</body>
+ <ownedComment xmi:type="uml:Comment" xmi:id="_7_dC4HbuEeOlpfB_tZS-QA" annotatedElement="_gAOFQLcqEeK8_t7Rpq6ZJA">
+ <body>Start the LayesStack.&#xD;
+This method should be called after the LayersStack creation. It is not called from the constructor, because &#xD;
+the initialisation can differ if the LayersStack is created by the user or by EMF after a reloading.&#xD;
+</body>
</ownedComment>
<packageImport xmi:type="uml:PackageImport" xmi:id="_uhlc8LcqEeK8_t7Rpq6ZJA">
<importedPackage xmi:type="uml:Model" href="notation/notation.uml#_AziHILcnEeKeLJDBCBPhPw"/>
@@ -47,6 +50,11 @@
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_hQIS8dkhEeKQqZMBCFd2Uw"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_hQIS8tkhEeKQqZMBCFd2Uw" value="1"/>
</ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_c5OEgHl8EeOlpfB_tZS-QA" name="state" visibility="public" type="_8__xgHltEeOlpfB_tZS-QA" isUnique="false">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_c5OEgXl8EeOlpfB_tZS-QA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_c5OEgnl8EeOlpfB_tZS-QA" value="1"/>
+ <defaultValue xmi:type="uml:LiteralString" xmi:id="_c5OEg3l8EeOlpfB_tZS-QA" name="detached" value="detached"/>
+ </ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_8H1xgO70EeK0p4PkXjd-_Q" name="getComputePropertyValueCommand" raisedException="_iYKFMNxGEeKwptaAAanMDg">
<ownedComment xmi:type="uml:Comment" xmi:id="_8H1xge70EeK0p4PkXjd-_Q">
<body>Get the ComputePropertyValueCommands for the specified views and Property.&#xD;
@@ -91,6 +99,46 @@
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_8ILIuO70EeK0p4PkXjd-_Q" value="*"/>
</ownedParameter>
</ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_rQGJoHbuEeOlpfB_tZS-QA" name="startAfterCreation"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_9n-f4HbuEeOlpfB_tZS-QA" name="attachLayers" raisedException="_iYKFMNxGEeKwptaAAanMDg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Go6U4HbvEeOlpfB_tZS-QA" annotatedElement="_9n-f4HbuEeOlpfB_tZS-QA">
+ <body>Start the LayersStack after a reloading by EMF. This method should be explicitly called after a reloading.&#xD;
+The method usually start the layer behaviors.</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_RnmmUHl8EeOlpfB_tZS-QA" name="attach" raisedException="_iYKFMNxGEeKwptaAAanMDg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_RnmmUXl8EeOlpfB_tZS-QA" annotatedElement="_RnmmUHl8EeOlpfB_tZS-QA">
+ <body>Try to attach this Layer. If successful, the state go to &quot;attached&quot;. Otherwise, an exception is thrown.&#xD;
+A Layer can be attached if its required attributes are set.&#xD;
+Required attributes:&#xD;
+&lt;ul>&#xD;
+ &lt;li>application&lt;/li>&#xD;
+ &lt;li>owningLayerStack&lt;/li>&#xD;
+ &lt;li>parent container&lt;/li>&#xD;
+ &lt;li>&lt;/li>&#xD;
+&lt;/ul>&#xD;
+Just after enterring in &quot;attached&quot; state, the enterAttachedState() method is called.&#xD;
+If this Layer is successfully attached, then attach subLayers.</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_RnmmUnl8EeOlpfB_tZS-QA" name="detach" raisedException="_iYKFMNxGEeKwptaAAanMDg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_RnmmU3l8EeOlpfB_tZS-QA" annotatedElement="_RnmmUnl8EeOlpfB_tZS-QA">
+ <body>Detach the Layer. The state go to &quot;detached&quot;.&#xD;
+Associated behavior are stopped.</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_RnmmVHl8EeOlpfB_tZS-QA" name="enterAttachedState" raisedException="_iYKFMNxGEeKwptaAAanMDg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_RnmmVXl8EeOlpfB_tZS-QA" annotatedElement="_RnmmVHl8EeOlpfB_tZS-QA">
+ <body>This method is called by the class immediately after entering in attached state.&#xD;
+The methodcan be used to start the layer behaviors.</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_RnmmVnl8EeOlpfB_tZS-QA" name="exitAttachedState">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_RnmmV3l8EeOlpfB_tZS-QA" annotatedElement="_RnmmVnl8EeOlpfB_tZS-QA">
+ <body>This method is called just before this Layer leave the attached state.&#xD;
+</body>
+ </ownedComment>
+ </ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_jWQ4ANa7EeKPiuTfpuvqHA" name="layerNamedStyle_layerStack_1" memberEnd="_jWQ4Ada7EeKPiuTfpuvqHA _jWHHANa7EeKPiuTfpuvqHA">
<ownedEnd xmi:type="uml:Property" xmi:id="_jWQ4Ada7EeKPiuTfpuvqHA" name="layerNamedStyle" type="_yN_dQLcqEeK8_t7Rpq6ZJA" association="_jWQ4ANa7EeKPiuTfpuvqHA">
@@ -551,6 +599,11 @@ Setting the value of this node set the value of the subnodes.</body>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PznBcWQ5EeOlpfB_tZS-QA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PznBcmQ5EeOlpfB_tZS-QA" value="1"/>
</ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_E2soAHluEeOlpfB_tZS-QA" name="state" visibility="public" type="_8__xgHltEeOlpfB_tZS-QA" isUnique="false">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ISCtgHluEeOlpfB_tZS-QA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ISCtgXluEeOlpfB_tZS-QA" value="1"/>
+ <defaultValue xmi:type="uml:LiteralString" xmi:id="_QPjWoHluEeOlpfB_tZS-QA" name="detached" value="detached"/>
+ </ownedAttribute>
<ownedOperation xmi:type="uml:Operation" xmi:id="_VdSFsO7HEeK0p4PkXjd-_Q" name="getComputePropertyValueCommand" raisedException="_iYKFMNxGEeKwptaAAanMDg">
<ownedComment xmi:type="uml:Comment" xmi:id="_CI71QO7JEeK0p4PkXjd-_Q">
<body>Get the ComputePropertyValueCommands for the specified views and Property.&#xD;
@@ -595,10 +648,12 @@ Setting the value of this node set the value of the subnodes.</body>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_cpKoIO7IEeK0p4PkXjd-_Q" value="*"/>
</ownedParameter>
</ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_Ps2L4GUaEeOlpfB_tZS-QA" name="initLayer">
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Ps2L4GUaEeOlpfB_tZS-QA" name="attachToLayersStack">
<ownedComment xmi:type="uml:Comment" xmi:id="_nC1a4GUaEeOlpfB_tZS-QA" annotatedElement="_Ps2L4GUaEeOlpfB_tZS-QA">
<body>Method called to specify that this Layer should be initialized for the specified LayerStack.&#xD;
-Init this Layer for the specified LayersStack.</body>
+Init this Layer for the specified LayersStack.&#xD;
+This method is called by the LayersStack when it detect that tha layer is attached to it.&#xD;
+</body>
</ownedComment>
<ownedParameter xmi:type="uml:Parameter" xmi:id="_cr5cQGUaEeOlpfB_tZS-QA" name="owningLayersStack" type="_gT0asNa7EeKPiuTfpuvqHA"/>
</ownedOperation>
@@ -609,6 +664,39 @@ Init this Layer for the specified LayersStack.</body>
</ownedComment>
<ownedParameter xmi:type="uml:Parameter" xmi:id="_r3jmwGUdEeOlpfB_tZS-QA" name="layersStack" type="_gT0asNa7EeKPiuTfpuvqHA" direction="return"/>
</ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_YeJ4IHbvEeOlpfB_tZS-QA" name="enterAttachedState" raisedException="_iYKFMNxGEeKwptaAAanMDg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_YeJ4IXbvEeOlpfB_tZS-QA" annotatedElement="_YeJ4IHbvEeOlpfB_tZS-QA">
+ <body>This method is called by the class immediately after entering in attached state.&#xD;
+The methodcan be used to start the layer behaviors.</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_VTcHQHluEeOlpfB_tZS-QA" name="attach" raisedException="_iYKFMNxGEeKwptaAAanMDg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_tUEZQHlvEeOlpfB_tZS-QA" annotatedElement="_VTcHQHluEeOlpfB_tZS-QA">
+ <body>Try to attach this Layer. If successful, the state go to &quot;attached&quot;. Otherwise, an exception is thrown.&#xD;
+A Layer can be attached if its required attributes are set.&#xD;
+Required attributes:&#xD;
+&lt;ul>&#xD;
+ &lt;li>application&lt;/li>&#xD;
+ &lt;li>owningLayerStack&lt;/li>&#xD;
+ &lt;li>parent container&lt;/li>&#xD;
+ &lt;li>&lt;/li>&#xD;
+&lt;/ul>&#xD;
+Just after enterring in &quot;attached&quot; state, the enterAttachedState() method is called.&#xD;
+If this Layer is successfully attached, then attach subLayers.</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_XeS1QHluEeOlpfB_tZS-QA" name="detach" raisedException="_iYKFMNxGEeKwptaAAanMDg">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_yitoYHlvEeOlpfB_tZS-QA" annotatedElement="_XeS1QHluEeOlpfB_tZS-QA">
+ <body>Detach the Layer. The state go to &quot;detached&quot;.&#xD;
+Associated behavior are stopped.</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_XNTkMHl0EeOlpfB_tZS-QA" name="exitAttachedState">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_e9TVwHl0EeOlpfB_tZS-QA" annotatedElement="_XNTkMHl0EeOlpfB_tZS-QA">
+ <body>This method is called just before this Layer leave the attached state.&#xD;
+</body>
+ </ownedComment>
+ </ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_HoKjcNjjEeKQqZMBCFd2Uw" name="LayerOperator" isAbstract="true">
<generalization xmi:type="uml:Generalization" xmi:id="_OJCPcNjjEeKQqZMBCFd2Uw" general="_9IaAANjiEeKQqZMBCFd2Uw"/>
@@ -1406,6 +1494,10 @@ layerStackChanged().</body>
<packagedElement xmi:type="uml:Class" xmi:id="_ft-hUGtpEeOlpfB_tZS-QA" name="AllViewsDerivedLayer">
<generalization xmi:type="uml:Generalization" xmi:id="_p-dSoGtpEeOlpfB_tZS-QA" general="_51zAINa7EeKPiuTfpuvqHA"/>
</packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_8__xgHltEeOlpfB_tZS-QA" name="LayerState">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_AKMcoHluEeOlpfB_tZS-QA" name="detached"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_BUS4QHluEeOlpfB_tZS-QA" name="attached"/>
+ </packagedElement>
<profileApplication xmi:type="uml:ProfileApplication" xmi:id="_X07z8LcsEeK8_t7Rpq6ZJA">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_X2lZwLcsEeK8_t7Rpq6ZJA" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA"/>
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayerExpression.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayerExpression.java
index 566f3b50aa7..1999e47b892 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayerExpression.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayerExpression.java
@@ -34,6 +34,7 @@ import org.eclipse.papyrus.layers.stackmodel.command.ComputePropertyValueCommand
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#isLayerEnabled <em>Is Layer Enabled</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#isBranchEnabled <em>Is Branch Enabled</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getOwningLayersStack <em>Owning Layers Stack</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getState <em>State</em>}</li>
* </ul>
* </p>
*
@@ -193,6 +194,36 @@ public interface LayerExpression extends ApplicationDependantElement {
void setOwningLayersStack(LayersStack value);
/**
+ * Returns the value of the '<em><b>State</b></em>' attribute.
+ * The default value is <code>"detached"</code>.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.layers.stackmodel.layers.LayerState}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>State</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>State</em>' attribute.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerState
+ * @see #setState(LayerState)
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersPackage#getLayerExpression_State()
+ * @model default="detached" unique="false" required="true" ordered="false"
+ * @generated
+ */
+ LayerState getState();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getState <em>State</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>State</em>' attribute.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerState
+ * @see #getState()
+ * @generated
+ */
+ void setState(LayerState value);
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.papyrus.layers.stackmodel.layers.ComputePropertyValueCommand" required="true" ordered="false" exceptions="org.eclipse.papyrus.layers.stackmodel.layers.LayersException" viewRequired="true" viewOrdered="false" propertyRequired="true" propertyOrdered="false"
@@ -222,11 +253,13 @@ public interface LayerExpression extends ApplicationDependantElement {
* <!-- begin-model-doc -->
* Method called to specify that this Layer should be initialized for the specified LayerStack.
* Init this Layer for the specified LayersStack.
+ * This method is called by the LayersStack when it detect that tha layer is attached to it.
+ *
* <!-- end-model-doc -->
* @model owningLayersStackRequired="true" owningLayersStackOrdered="false"
* @generated
*/
- void initLayer(LayersStack owningLayersStack);
+ void attachToLayersStack(LayersStack owningLayersStack);
/**
* <!-- begin-user-doc -->
@@ -243,6 +276,63 @@ public interface LayerExpression extends ApplicationDependantElement {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This method is called by the class immediately after entering in attached state.
+ * The methodcan be used to start the layer behaviors.
+ * <!-- end-model-doc -->
+ * @model exceptions="org.eclipse.papyrus.layers.stackmodel.layers.LayersException"
+ * @generated
+ */
+ void enterAttachedState() throws LayersException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Try to attach this Layer. If successful, the state go to "attached". Otherwise, an exception is thrown.
+ * A Layer can be attached if its required attributes are set.
+ * Required attributes:
+ * <ul>
+ * <li>application</li>
+ * <li>owningLayerStack</li>
+ * <li>parent container</li>
+ * <li></li>
+ * </ul>
+ * Just after enterring in "attached" state, the enterAttachedState() method is called.
+ * If this Layer is successfully attached, then attach subLayers.
+ * <!-- end-model-doc -->
+ * @model exceptions="org.eclipse.papyrus.layers.stackmodel.layers.LayersException"
+ * @generated
+ */
+ void attach() throws LayersException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Detach the Layer. The state go to "detached".
+ * Associated behavior are stopped.
+ * <!-- end-model-doc -->
+ * @model exceptions="org.eclipse.papyrus.layers.stackmodel.layers.LayersException"
+ * @generated
+ */
+ void detach() throws LayersException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This method is called just before this Layer leave the attached state.
+ *
+ * <!-- end-model-doc -->
+ * @model
+ * @generated
+ */
+ void exitAttachedState();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
* @throws LayersException
* @model dataType="org.eclipse.papyrus.layers.stackmodel.layers.ComputePropertyValueCommand" viewMany="true" propertyRequired="true" propertyOrdered="false"
* @generated NOT
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayerState.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayerState.java
new file mode 100644
index 00000000000..6932cacaba8
--- /dev/null
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayerState.java
@@ -0,0 +1,208 @@
+/**
+ */
+package org.eclipse.papyrus.layers.stackmodel.layers;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Layer State</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersPackage#getLayerState()
+ * @model
+ * @generated
+ */
+public enum LayerState implements Enumerator {
+ /**
+ * The '<em><b>Detached</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #DETACHED_VALUE
+ * @generated
+ * @ordered
+ */
+ DETACHED(0, "detached", "detached"),
+
+ /**
+ * The '<em><b>Attached</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #ATTACHED_VALUE
+ * @generated
+ * @ordered
+ */
+ ATTACHED(1, "attached", "attached");
+
+ /**
+ * The '<em><b>Detached</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Detached</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #DETACHED
+ * @model name="detached"
+ * @generated
+ * @ordered
+ */
+ public static final int DETACHED_VALUE = 0;
+
+ /**
+ * The '<em><b>Attached</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Attached</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #ATTACHED
+ * @model name="attached"
+ * @generated
+ * @ordered
+ */
+ public static final int ATTACHED_VALUE = 1;
+
+ /**
+ * An array of all the '<em><b>Layer State</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final LayerState[] VALUES_ARRAY =
+ new LayerState[] {
+ DETACHED,
+ ATTACHED,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Layer State</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<LayerState> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Layer State</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static LayerState get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ LayerState result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Layer State</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static LayerState getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ LayerState result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Layer State</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static LayerState get(int value) {
+ switch (value) {
+ case DETACHED_VALUE: return DETACHED;
+ case ATTACHED_VALUE: return ATTACHED;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private LayerState(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //LayerState
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayersPackage.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayersPackage.java
index 116205a39d7..a36aa51364c 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayersPackage.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayersPackage.java
@@ -34,6 +34,12 @@ import org.eclipse.gmf.runtime.notation.NotationPackage;
* <li>and each data type</li>
* </ul>
* <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Start the LayesStack.
+ * This method should be called after the LayersStack creation. It is not called from the constructor, because
+ * the initialisation can differ if the LayersStack is created by the user or by EMF after a reloading.
+ *
+ * <!-- end-model-doc -->
* @see org.eclipse.papyrus.layers.stackmodel.layers.LayersFactory
* @model kind="package"
* @generated
@@ -224,13 +230,22 @@ public interface LayersPackage extends EPackage {
int LAYERS_STACK__DIAGRAM = 3;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYERS_STACK__STATE = 4;
+
+ /**
* The number of structural features of the '<em>Stack</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int LAYERS_STACK_FEATURE_COUNT = 4;
+ int LAYERS_STACK_FEATURE_COUNT = 5;
/**
* The operation id for the '<em>Get Compute Property Value Command</em>' operation.
@@ -260,13 +275,67 @@ public interface LayersPackage extends EPackage {
int LAYERS_STACK___GET_VIEWS_COMPUTE_PROPERTY_VALUE_COMMAND__ELIST_PROPERTY = 2;
/**
+ * The operation id for the '<em>Start After Creation</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYERS_STACK___START_AFTER_CREATION = 3;
+
+ /**
+ * The operation id for the '<em>Attach Layers</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYERS_STACK___ATTACH_LAYERS = 4;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYERS_STACK___ATTACH = 5;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYERS_STACK___DETACH = 6;
+
+ /**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYERS_STACK___ENTER_ATTACHED_STATE = 7;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYERS_STACK___EXIT_ATTACHED_STATE = 8;
+
+ /**
* The number of operations of the '<em>Stack</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int LAYERS_STACK_OPERATION_COUNT = 3;
+ int LAYERS_STACK_OPERATION_COUNT = 9;
/**
* The meta object id for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.ApplicationDependantElementImpl <em>Application Dependant Element</em>}' class.
@@ -369,13 +438,22 @@ public interface LayersPackage extends EPackage {
int LAYER_EXPRESSION__OWNING_LAYERS_STACK = APPLICATION_DEPENDANT_ELEMENT_FEATURE_COUNT + 5;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_EXPRESSION__STATE = APPLICATION_DEPENDANT_ELEMENT_FEATURE_COUNT + 6;
+
+ /**
* The number of structural features of the '<em>Layer Expression</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int LAYER_EXPRESSION_FEATURE_COUNT = APPLICATION_DEPENDANT_ELEMENT_FEATURE_COUNT + 6;
+ int LAYER_EXPRESSION_FEATURE_COUNT = APPLICATION_DEPENDANT_ELEMENT_FEATURE_COUNT + 7;
/**
* The operation id for the '<em>Get Compute Property Value Command</em>' operation.
@@ -405,13 +483,13 @@ public interface LayersPackage extends EPackage {
int LAYER_EXPRESSION___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = APPLICATION_DEPENDANT_ELEMENT_OPERATION_COUNT + 2;
/**
- * The operation id for the '<em>Init Layer</em>' operation.
+ * The operation id for the '<em>Attach To Layers Stack</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int LAYER_EXPRESSION___INIT_LAYER__LAYERSSTACK = APPLICATION_DEPENDANT_ELEMENT_OPERATION_COUNT + 3;
+ int LAYER_EXPRESSION___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = APPLICATION_DEPENDANT_ELEMENT_OPERATION_COUNT + 3;
/**
* The operation id for the '<em>Get Layers Stack</em>' operation.
@@ -423,13 +501,49 @@ public interface LayersPackage extends EPackage {
int LAYER_EXPRESSION___GET_LAYERS_STACK = APPLICATION_DEPENDANT_ELEMENT_OPERATION_COUNT + 4;
/**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_EXPRESSION___ENTER_ATTACHED_STATE = APPLICATION_DEPENDANT_ELEMENT_OPERATION_COUNT + 5;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_EXPRESSION___ATTACH = APPLICATION_DEPENDANT_ELEMENT_OPERATION_COUNT + 6;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_EXPRESSION___DETACH = APPLICATION_DEPENDANT_ELEMENT_OPERATION_COUNT + 7;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_EXPRESSION___EXIT_ATTACHED_STATE = APPLICATION_DEPENDANT_ELEMENT_OPERATION_COUNT + 8;
+
+ /**
* The number of operations of the '<em>Layer Expression</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int LAYER_EXPRESSION_OPERATION_COUNT = APPLICATION_DEPENDANT_ELEMENT_OPERATION_COUNT + 5;
+ int LAYER_EXPRESSION_OPERATION_COUNT = APPLICATION_DEPENDANT_ELEMENT_OPERATION_COUNT + 9;
/**
* The meta object id for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.LayerApplicationFactoryImpl <em>Layer Application Factory</em>}' class.
@@ -2041,6 +2155,15 @@ public interface LayersPackage extends EPackage {
int LAYER_OPERATOR__OWNING_LAYERS_STACK = LAYER_EXPRESSION__OWNING_LAYERS_STACK;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_OPERATOR__STATE = LAYER_EXPRESSION__STATE;
+
+ /**
* The feature id for the '<em><b>Layers</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2086,13 +2209,13 @@ public interface LayersPackage extends EPackage {
int LAYER_OPERATOR___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = LAYER_EXPRESSION___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST;
/**
- * The operation id for the '<em>Init Layer</em>' operation.
+ * The operation id for the '<em>Attach To Layers Stack</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int LAYER_OPERATOR___INIT_LAYER__LAYERSSTACK = LAYER_EXPRESSION___INIT_LAYER__LAYERSSTACK;
+ int LAYER_OPERATOR___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = LAYER_EXPRESSION___ATTACH_TO_LAYERS_STACK__LAYERSSTACK;
/**
* The operation id for the '<em>Get Layers Stack</em>' operation.
@@ -2104,6 +2227,42 @@ public interface LayersPackage extends EPackage {
int LAYER_OPERATOR___GET_LAYERS_STACK = LAYER_EXPRESSION___GET_LAYERS_STACK;
/**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_OPERATOR___ENTER_ATTACHED_STATE = LAYER_EXPRESSION___ENTER_ATTACHED_STATE;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_OPERATOR___ATTACH = LAYER_EXPRESSION___ATTACH;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_OPERATOR___DETACH = LAYER_EXPRESSION___DETACH;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER_OPERATOR___EXIT_ATTACHED_STATE = LAYER_EXPRESSION___EXIT_ATTACHED_STATE;
+
+ /**
* The number of operations of the '<em>Layer Operator</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2176,6 +2335,15 @@ public interface LayersPackage extends EPackage {
int ABSTRACT_LAYER_OPERATOR__OWNING_LAYERS_STACK = LAYER_OPERATOR__OWNING_LAYERS_STACK;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_LAYER_OPERATOR__STATE = LAYER_OPERATOR__STATE;
+
+ /**
* The feature id for the '<em><b>Layers</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2239,13 +2407,13 @@ public interface LayersPackage extends EPackage {
int ABSTRACT_LAYER_OPERATOR___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = LAYER_OPERATOR___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST;
/**
- * The operation id for the '<em>Init Layer</em>' operation.
+ * The operation id for the '<em>Attach To Layers Stack</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int ABSTRACT_LAYER_OPERATOR___INIT_LAYER__LAYERSSTACK = LAYER_OPERATOR___INIT_LAYER__LAYERSSTACK;
+ int ABSTRACT_LAYER_OPERATOR___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = LAYER_OPERATOR___ATTACH_TO_LAYERS_STACK__LAYERSSTACK;
/**
* The operation id for the '<em>Get Layers Stack</em>' operation.
@@ -2257,6 +2425,42 @@ public interface LayersPackage extends EPackage {
int ABSTRACT_LAYER_OPERATOR___GET_LAYERS_STACK = LAYER_OPERATOR___GET_LAYERS_STACK;
/**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_LAYER_OPERATOR___ENTER_ATTACHED_STATE = LAYER_OPERATOR___ENTER_ATTACHED_STATE;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_LAYER_OPERATOR___ATTACH = LAYER_OPERATOR___ATTACH;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_LAYER_OPERATOR___DETACH = LAYER_OPERATOR___DETACH;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_LAYER_OPERATOR___EXIT_ATTACHED_STATE = LAYER_OPERATOR___EXIT_ATTACHED_STATE;
+
+ /**
* The operation id for the '<em>Is Descriptor Set</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2383,6 +2587,15 @@ public interface LayersPackage extends EPackage {
int ABSTRACT_LAYER__OWNING_LAYERS_STACK = LAYER_EXPRESSION__OWNING_LAYERS_STACK;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_LAYER__STATE = LAYER_EXPRESSION__STATE;
+
+ /**
* The feature id for the '<em><b>Property Values</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2464,13 +2677,13 @@ public interface LayersPackage extends EPackage {
int ABSTRACT_LAYER___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = LAYER_EXPRESSION___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST;
/**
- * The operation id for the '<em>Init Layer</em>' operation.
+ * The operation id for the '<em>Attach To Layers Stack</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int ABSTRACT_LAYER___INIT_LAYER__LAYERSSTACK = LAYER_EXPRESSION___INIT_LAYER__LAYERSSTACK;
+ int ABSTRACT_LAYER___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = LAYER_EXPRESSION___ATTACH_TO_LAYERS_STACK__LAYERSSTACK;
/**
* The operation id for the '<em>Get Layers Stack</em>' operation.
@@ -2482,6 +2695,42 @@ public interface LayersPackage extends EPackage {
int ABSTRACT_LAYER___GET_LAYERS_STACK = LAYER_EXPRESSION___GET_LAYERS_STACK;
/**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_LAYER___ENTER_ATTACHED_STATE = LAYER_EXPRESSION___ENTER_ATTACHED_STATE;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_LAYER___ATTACH = LAYER_EXPRESSION___ATTACH;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_LAYER___DETACH = LAYER_EXPRESSION___DETACH;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_LAYER___EXIT_ATTACHED_STATE = LAYER_EXPRESSION___EXIT_ATTACHED_STATE;
+
+ /**
* The operation id for the '<em>Add Property Instance</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -3049,6 +3298,15 @@ public interface LayersPackage extends EPackage {
int TOP_LAYER_OPERATOR__OWNING_LAYERS_STACK = ABSTRACT_LAYER_OPERATOR__OWNING_LAYERS_STACK;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TOP_LAYER_OPERATOR__STATE = ABSTRACT_LAYER_OPERATOR__STATE;
+
+ /**
* The feature id for the '<em><b>Layers</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -3112,13 +3370,13 @@ public interface LayersPackage extends EPackage {
int TOP_LAYER_OPERATOR___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = ABSTRACT_LAYER_OPERATOR___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST;
/**
- * The operation id for the '<em>Init Layer</em>' operation.
+ * The operation id for the '<em>Attach To Layers Stack</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int TOP_LAYER_OPERATOR___INIT_LAYER__LAYERSSTACK = ABSTRACT_LAYER_OPERATOR___INIT_LAYER__LAYERSSTACK;
+ int TOP_LAYER_OPERATOR___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = ABSTRACT_LAYER_OPERATOR___ATTACH_TO_LAYERS_STACK__LAYERSSTACK;
/**
* The operation id for the '<em>Get Layers Stack</em>' operation.
@@ -3130,6 +3388,42 @@ public interface LayersPackage extends EPackage {
int TOP_LAYER_OPERATOR___GET_LAYERS_STACK = ABSTRACT_LAYER_OPERATOR___GET_LAYERS_STACK;
/**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TOP_LAYER_OPERATOR___ENTER_ATTACHED_STATE = ABSTRACT_LAYER_OPERATOR___ENTER_ATTACHED_STATE;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TOP_LAYER_OPERATOR___ATTACH = ABSTRACT_LAYER_OPERATOR___ATTACH;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TOP_LAYER_OPERATOR___DETACH = ABSTRACT_LAYER_OPERATOR___DETACH;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TOP_LAYER_OPERATOR___EXIT_ATTACHED_STATE = ABSTRACT_LAYER_OPERATOR___EXIT_ATTACHED_STATE;
+
+ /**
* The operation id for the '<em>Is Descriptor Set</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -3220,6 +3514,15 @@ public interface LayersPackage extends EPackage {
int STACKED_LAYER_OPERATOR__OWNING_LAYERS_STACK = ABSTRACT_LAYER_OPERATOR__OWNING_LAYERS_STACK;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STACKED_LAYER_OPERATOR__STATE = ABSTRACT_LAYER_OPERATOR__STATE;
+
+ /**
* The feature id for the '<em><b>Layers</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -3283,13 +3586,13 @@ public interface LayersPackage extends EPackage {
int STACKED_LAYER_OPERATOR___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = ABSTRACT_LAYER_OPERATOR___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST;
/**
- * The operation id for the '<em>Init Layer</em>' operation.
+ * The operation id for the '<em>Attach To Layers Stack</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int STACKED_LAYER_OPERATOR___INIT_LAYER__LAYERSSTACK = ABSTRACT_LAYER_OPERATOR___INIT_LAYER__LAYERSSTACK;
+ int STACKED_LAYER_OPERATOR___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = ABSTRACT_LAYER_OPERATOR___ATTACH_TO_LAYERS_STACK__LAYERSSTACK;
/**
* The operation id for the '<em>Get Layers Stack</em>' operation.
@@ -3301,6 +3604,42 @@ public interface LayersPackage extends EPackage {
int STACKED_LAYER_OPERATOR___GET_LAYERS_STACK = ABSTRACT_LAYER_OPERATOR___GET_LAYERS_STACK;
/**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STACKED_LAYER_OPERATOR___ENTER_ATTACHED_STATE = ABSTRACT_LAYER_OPERATOR___ENTER_ATTACHED_STATE;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STACKED_LAYER_OPERATOR___ATTACH = ABSTRACT_LAYER_OPERATOR___ATTACH;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STACKED_LAYER_OPERATOR___DETACH = ABSTRACT_LAYER_OPERATOR___DETACH;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STACKED_LAYER_OPERATOR___EXIT_ATTACHED_STATE = ABSTRACT_LAYER_OPERATOR___EXIT_ATTACHED_STATE;
+
+ /**
* The operation id for the '<em>Is Descriptor Set</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -3391,6 +3730,15 @@ public interface LayersPackage extends EPackage {
int CUSTOM_LAYER_OPERATOR__OWNING_LAYERS_STACK = LAYER_OPERATOR__OWNING_LAYERS_STACK;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOM_LAYER_OPERATOR__STATE = LAYER_OPERATOR__STATE;
+
+ /**
* The feature id for the '<em><b>Layers</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -3436,13 +3784,13 @@ public interface LayersPackage extends EPackage {
int CUSTOM_LAYER_OPERATOR___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = LAYER_OPERATOR___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST;
/**
- * The operation id for the '<em>Init Layer</em>' operation.
+ * The operation id for the '<em>Attach To Layers Stack</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int CUSTOM_LAYER_OPERATOR___INIT_LAYER__LAYERSSTACK = LAYER_OPERATOR___INIT_LAYER__LAYERSSTACK;
+ int CUSTOM_LAYER_OPERATOR___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = LAYER_OPERATOR___ATTACH_TO_LAYERS_STACK__LAYERSSTACK;
/**
* The operation id for the '<em>Get Layers Stack</em>' operation.
@@ -3454,6 +3802,42 @@ public interface LayersPackage extends EPackage {
int CUSTOM_LAYER_OPERATOR___GET_LAYERS_STACK = LAYER_OPERATOR___GET_LAYERS_STACK;
/**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOM_LAYER_OPERATOR___ENTER_ATTACHED_STATE = LAYER_OPERATOR___ENTER_ATTACHED_STATE;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOM_LAYER_OPERATOR___ATTACH = LAYER_OPERATOR___ATTACH;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOM_LAYER_OPERATOR___DETACH = LAYER_OPERATOR___DETACH;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOM_LAYER_OPERATOR___EXIT_ATTACHED_STATE = LAYER_OPERATOR___EXIT_ATTACHED_STATE;
+
+ /**
* The number of operations of the '<em>Custom Layer Operator</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -3706,6 +4090,15 @@ public interface LayersPackage extends EPackage {
int REG_EXP_LAYER__OWNING_LAYERS_STACK = ABSTRACT_LAYER__OWNING_LAYERS_STACK;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REG_EXP_LAYER__STATE = ABSTRACT_LAYER__STATE;
+
+ /**
* The feature id for the '<em><b>Property Values</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -3850,13 +4243,13 @@ public interface LayersPackage extends EPackage {
int REG_EXP_LAYER___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = ABSTRACT_LAYER___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST;
/**
- * The operation id for the '<em>Init Layer</em>' operation.
+ * The operation id for the '<em>Attach To Layers Stack</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int REG_EXP_LAYER___INIT_LAYER__LAYERSSTACK = ABSTRACT_LAYER___INIT_LAYER__LAYERSSTACK;
+ int REG_EXP_LAYER___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = ABSTRACT_LAYER___ATTACH_TO_LAYERS_STACK__LAYERSSTACK;
/**
* The operation id for the '<em>Get Layers Stack</em>' operation.
@@ -3868,6 +4261,42 @@ public interface LayersPackage extends EPackage {
int REG_EXP_LAYER___GET_LAYERS_STACK = ABSTRACT_LAYER___GET_LAYERS_STACK;
/**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REG_EXP_LAYER___ENTER_ATTACHED_STATE = ABSTRACT_LAYER___ENTER_ATTACHED_STATE;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REG_EXP_LAYER___ATTACH = ABSTRACT_LAYER___ATTACH;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REG_EXP_LAYER___DETACH = ABSTRACT_LAYER___DETACH;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REG_EXP_LAYER___EXIT_ATTACHED_STATE = ABSTRACT_LAYER___EXIT_ATTACHED_STATE;
+
+ /**
* The operation id for the '<em>Add Property Instance</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -4039,6 +4468,15 @@ public interface LayersPackage extends EPackage {
int LAYER__OWNING_LAYERS_STACK = ABSTRACT_LAYER__OWNING_LAYERS_STACK;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER__STATE = ABSTRACT_LAYER__STATE;
+
+ /**
* The feature id for the '<em><b>Property Values</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -4120,13 +4558,13 @@ public interface LayersPackage extends EPackage {
int LAYER___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = ABSTRACT_LAYER___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST;
/**
- * The operation id for the '<em>Init Layer</em>' operation.
+ * The operation id for the '<em>Attach To Layers Stack</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int LAYER___INIT_LAYER__LAYERSSTACK = ABSTRACT_LAYER___INIT_LAYER__LAYERSSTACK;
+ int LAYER___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = ABSTRACT_LAYER___ATTACH_TO_LAYERS_STACK__LAYERSSTACK;
/**
* The operation id for the '<em>Get Layers Stack</em>' operation.
@@ -4138,6 +4576,42 @@ public interface LayersPackage extends EPackage {
int LAYER___GET_LAYERS_STACK = ABSTRACT_LAYER___GET_LAYERS_STACK;
/**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER___ENTER_ATTACHED_STATE = ABSTRACT_LAYER___ENTER_ATTACHED_STATE;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER___ATTACH = ABSTRACT_LAYER___ATTACH;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER___DETACH = ABSTRACT_LAYER___DETACH;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYER___EXIT_ATTACHED_STATE = ABSTRACT_LAYER___EXIT_ATTACHED_STATE;
+
+ /**
* The operation id for the '<em>Add Property Instance</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -5468,6 +5942,15 @@ public interface LayersPackage extends EPackage {
int ALL_VIEWS_DERIVED_LAYER__OWNING_LAYERS_STACK = ABSTRACT_LAYER__OWNING_LAYERS_STACK;
/**
+ * The feature id for the '<em><b>State</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALL_VIEWS_DERIVED_LAYER__STATE = ABSTRACT_LAYER__STATE;
+
+ /**
* The feature id for the '<em><b>Property Values</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -5549,13 +6032,13 @@ public interface LayersPackage extends EPackage {
int ALL_VIEWS_DERIVED_LAYER___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = ABSTRACT_LAYER___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST;
/**
- * The operation id for the '<em>Init Layer</em>' operation.
+ * The operation id for the '<em>Attach To Layers Stack</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int ALL_VIEWS_DERIVED_LAYER___INIT_LAYER__LAYERSSTACK = ABSTRACT_LAYER___INIT_LAYER__LAYERSSTACK;
+ int ALL_VIEWS_DERIVED_LAYER___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = ABSTRACT_LAYER___ATTACH_TO_LAYERS_STACK__LAYERSSTACK;
/**
* The operation id for the '<em>Get Layers Stack</em>' operation.
@@ -5567,6 +6050,42 @@ public interface LayersPackage extends EPackage {
int ALL_VIEWS_DERIVED_LAYER___GET_LAYERS_STACK = ABSTRACT_LAYER___GET_LAYERS_STACK;
/**
+ * The operation id for the '<em>Enter Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALL_VIEWS_DERIVED_LAYER___ENTER_ATTACHED_STATE = ABSTRACT_LAYER___ENTER_ATTACHED_STATE;
+
+ /**
+ * The operation id for the '<em>Attach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALL_VIEWS_DERIVED_LAYER___ATTACH = ABSTRACT_LAYER___ATTACH;
+
+ /**
+ * The operation id for the '<em>Detach</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALL_VIEWS_DERIVED_LAYER___DETACH = ABSTRACT_LAYER___DETACH;
+
+ /**
+ * The operation id for the '<em>Exit Attached State</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALL_VIEWS_DERIVED_LAYER___EXIT_ATTACHED_STATE = ABSTRACT_LAYER___EXIT_ATTACHED_STATE;
+
+ /**
* The operation id for the '<em>Add Property Instance</em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -5612,6 +6131,16 @@ public interface LayersPackage extends EPackage {
int ALL_VIEWS_DERIVED_LAYER_OPERATION_COUNT = ABSTRACT_LAYER_OPERATION_COUNT + 0;
/**
+ * The meta object id for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerState <em>Layer State</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerState
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getLayerState()
+ * @generated
+ */
+ int LAYER_STATE = 68;
+
+ /**
* The meta object id for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.EventLevel <em>Event Level</em>}' enum.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -5619,7 +6148,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getEventLevel()
* @generated
*/
- int EVENT_LEVEL = 68;
+ int EVENT_LEVEL = 69;
/**
* The meta object id for the '<em>String</em>' data type.
@@ -5629,7 +6158,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getString()
* @generated
*/
- int STRING = 69;
+ int STRING = 70;
/**
* The meta object id for the '<em>boolean</em>' data type.
@@ -5638,7 +6167,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getboolean()
* @generated
*/
- int BOOLEAN = 70;
+ int BOOLEAN = 71;
/**
* The meta object id for the '<em>EPackage</em>' data type.
@@ -5648,7 +6177,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getEPackage()
* @generated
*/
- int EPACKAGE = 71;
+ int EPACKAGE = 72;
/**
* The meta object id for the '<em>Not Found Exception</em>' data type.
@@ -5658,7 +6187,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getNotFoundException()
* @generated
*/
- int NOT_FOUND_EXCEPTION = 75;
+ int NOT_FOUND_EXCEPTION = 76;
/**
* The meta object id for the '<em>Compute Property Value Command</em>' data type.
@@ -5668,7 +6197,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getComputePropertyValueCommand()
* @generated
*/
- int COMPUTE_PROPERTY_VALUE_COMMAND = 76;
+ int COMPUTE_PROPERTY_VALUE_COMMAND = 77;
/**
* The meta object id for the '<em>Exception</em>' data type.
@@ -5678,7 +6207,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getLayersException()
* @generated
*/
- int LAYERS_EXCEPTION = 72;
+ int LAYERS_EXCEPTION = 73;
/**
* The meta object id for the '<em>int</em>' data type.
@@ -5687,7 +6216,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getint()
* @generated
*/
- int INT = 73;
+ int INT = 74;
/**
@@ -5698,7 +6227,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getObject()
* @generated
*/
- int OBJECT = 77;
+ int OBJECT = 78;
/**
@@ -5709,7 +6238,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getCustomPropertyOpertorInstance()
* @generated
*/
- int CUSTOM_PROPERTY_OPERTOR_INSTANCE = 78;
+ int CUSTOM_PROPERTY_OPERTOR_INSTANCE = 79;
/**
* The meta object id for the '<em>Bad State Exception</em>' data type.
@@ -5719,7 +6248,7 @@ public interface LayersPackage extends EPackage {
* @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getBadStateException()
* @generated
*/
- int BAD_STATE_EXCEPTION = 74;
+ int BAD_STATE_EXCEPTION = 75;
/**
@@ -5798,6 +6327,17 @@ public interface LayersPackage extends EPackage {
EReference getLayersStack_Diagram();
/**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getState <em>State</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>State</em>'.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getState()
+ * @see #getLayersStack()
+ * @generated
+ */
+ EAttribute getLayersStack_State();
+
+ /**
* Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getComputePropertyValueCommand(org.eclipse.gmf.runtime.notation.View, org.eclipse.papyrus.layers.stackmodel.layers.Property) <em>Get Compute Property Value Command</em>}' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -5828,6 +6368,66 @@ public interface LayersPackage extends EPackage {
EOperation getLayersStack__GetViewsComputePropertyValueCommand__EList_Property();
/**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#startAfterCreation() <em>Start After Creation</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Start After Creation</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#startAfterCreation()
+ * @generated
+ */
+ EOperation getLayersStack__StartAfterCreation();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#attachLayers() <em>Attach Layers</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Attach Layers</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#attachLayers()
+ * @generated
+ */
+ EOperation getLayersStack__AttachLayers();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#attach() <em>Attach</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Attach</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#attach()
+ * @generated
+ */
+ EOperation getLayersStack__Attach();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#detach() <em>Detach</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Detach</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#detach()
+ * @generated
+ */
+ EOperation getLayersStack__Detach();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#enterAttachedState() <em>Enter Attached State</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Enter Attached State</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#enterAttachedState()
+ * @generated
+ */
+ EOperation getLayersStack__EnterAttachedState();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#exitAttachedState() <em>Exit Attached State</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Exit Attached State</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#exitAttachedState()
+ * @generated
+ */
+ EOperation getLayersStack__ExitAttachedState();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.layers.stackmodel.layers.Layer <em>Layer</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -6304,6 +6904,16 @@ public interface LayersPackage extends EPackage {
EClass getAllViewsDerivedLayer();
/**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerState <em>Layer State</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Layer State</em>'.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerState
+ * @generated
+ */
+ EEnum getLayerState();
+
+ /**
* Returns the meta object for enum '{@link org.eclipse.papyrus.layers.stackmodel.layers.EventLevel <em>Event Level</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -6856,6 +7466,17 @@ public interface LayersPackage extends EPackage {
EReference getLayerExpression_OwningLayersStack();
/**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getState <em>State</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>State</em>'.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getState()
+ * @see #getLayerExpression()
+ * @generated
+ */
+ EAttribute getLayerExpression_State();
+
+ /**
* Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getComputePropertyValueCommand(org.eclipse.gmf.runtime.notation.View, org.eclipse.papyrus.layers.stackmodel.layers.Property) <em>Get Compute Property Value Command</em>}' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -6886,14 +7507,14 @@ public interface LayersPackage extends EPackage {
EOperation getLayerExpression__GetPropertiesComputePropertyValueCommand__View_EList();
/**
- * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#initLayer(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack) <em>Init Layer</em>}' operation.
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#attachToLayersStack(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack) <em>Attach To Layers Stack</em>}' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for the '<em>Init Layer</em>' operation.
- * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#initLayer(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack)
+ * @return the meta object for the '<em>Attach To Layers Stack</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#attachToLayersStack(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack)
* @generated
*/
- EOperation getLayerExpression__InitLayer__LayersStack();
+ EOperation getLayerExpression__AttachToLayersStack__LayersStack();
/**
* Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#getLayersStack() <em>Get Layers Stack</em>}' operation.
@@ -6906,6 +7527,46 @@ public interface LayersPackage extends EPackage {
EOperation getLayerExpression__GetLayersStack();
/**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#enterAttachedState() <em>Enter Attached State</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Enter Attached State</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#enterAttachedState()
+ * @generated
+ */
+ EOperation getLayerExpression__EnterAttachedState();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#attach() <em>Attach</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Attach</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#attach()
+ * @generated
+ */
+ EOperation getLayerExpression__Attach();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#detach() <em>Detach</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Detach</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#detach()
+ * @generated
+ */
+ EOperation getLayerExpression__Detach();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#exitAttachedState() <em>Exit Attached State</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Exit Attached State</em>' operation.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression#exitAttachedState()
+ * @generated
+ */
+ EOperation getLayerExpression__ExitAttachedState();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.layers.stackmodel.layers.ApplicationDependantElement <em>Application Dependant Element</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -8182,6 +8843,14 @@ public interface LayersPackage extends EPackage {
EReference LAYERS_STACK__DIAGRAM = eINSTANCE.getLayersStack_Diagram();
/**
+ * The meta object literal for the '<em><b>State</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LAYERS_STACK__STATE = eINSTANCE.getLayersStack_State();
+
+ /**
* The meta object literal for the '<em><b>Get Compute Property Value Command</b></em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -8206,6 +8875,54 @@ public interface LayersPackage extends EPackage {
EOperation LAYERS_STACK___GET_VIEWS_COMPUTE_PROPERTY_VALUE_COMMAND__ELIST_PROPERTY = eINSTANCE.getLayersStack__GetViewsComputePropertyValueCommand__EList_Property();
/**
+ * The meta object literal for the '<em><b>Start After Creation</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAYERS_STACK___START_AFTER_CREATION = eINSTANCE.getLayersStack__StartAfterCreation();
+
+ /**
+ * The meta object literal for the '<em><b>Attach Layers</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAYERS_STACK___ATTACH_LAYERS = eINSTANCE.getLayersStack__AttachLayers();
+
+ /**
+ * The meta object literal for the '<em><b>Attach</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAYERS_STACK___ATTACH = eINSTANCE.getLayersStack__Attach();
+
+ /**
+ * The meta object literal for the '<em><b>Detach</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAYERS_STACK___DETACH = eINSTANCE.getLayersStack__Detach();
+
+ /**
+ * The meta object literal for the '<em><b>Enter Attached State</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAYERS_STACK___ENTER_ATTACHED_STATE = eINSTANCE.getLayersStack__EnterAttachedState();
+
+ /**
+ * The meta object literal for the '<em><b>Exit Attached State</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAYERS_STACK___EXIT_ATTACHED_STATE = eINSTANCE.getLayersStack__ExitAttachedState();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.LayerImpl <em>Layer</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -8620,6 +9337,16 @@ public interface LayersPackage extends EPackage {
EClass ALL_VIEWS_DERIVED_LAYER = eINSTANCE.getAllViewsDerivedLayer();
/**
+ * The meta object literal for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayerState <em>Layer State</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerState
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersPackageImpl#getLayerState()
+ * @generated
+ */
+ EEnum LAYER_STATE = eINSTANCE.getLayerState();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.EventLevel <em>Event Level</em>}' enum.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -9062,6 +9789,14 @@ public interface LayersPackage extends EPackage {
EReference LAYER_EXPRESSION__OWNING_LAYERS_STACK = eINSTANCE.getLayerExpression_OwningLayersStack();
/**
+ * The meta object literal for the '<em><b>State</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute LAYER_EXPRESSION__STATE = eINSTANCE.getLayerExpression_State();
+
+ /**
* The meta object literal for the '<em><b>Get Compute Property Value Command</b></em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -9086,12 +9821,12 @@ public interface LayersPackage extends EPackage {
EOperation LAYER_EXPRESSION___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST = eINSTANCE.getLayerExpression__GetPropertiesComputePropertyValueCommand__View_EList();
/**
- * The meta object literal for the '<em><b>Init Layer</b></em>' operation.
+ * The meta object literal for the '<em><b>Attach To Layers Stack</b></em>' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
- EOperation LAYER_EXPRESSION___INIT_LAYER__LAYERSSTACK = eINSTANCE.getLayerExpression__InitLayer__LayersStack();
+ EOperation LAYER_EXPRESSION___ATTACH_TO_LAYERS_STACK__LAYERSSTACK = eINSTANCE.getLayerExpression__AttachToLayersStack__LayersStack();
/**
* The meta object literal for the '<em><b>Get Layers Stack</b></em>' operation.
@@ -9102,6 +9837,38 @@ public interface LayersPackage extends EPackage {
EOperation LAYER_EXPRESSION___GET_LAYERS_STACK = eINSTANCE.getLayerExpression__GetLayersStack();
/**
+ * The meta object literal for the '<em><b>Enter Attached State</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAYER_EXPRESSION___ENTER_ATTACHED_STATE = eINSTANCE.getLayerExpression__EnterAttachedState();
+
+ /**
+ * The meta object literal for the '<em><b>Attach</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAYER_EXPRESSION___ATTACH = eINSTANCE.getLayerExpression__Attach();
+
+ /**
+ * The meta object literal for the '<em><b>Detach</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAYER_EXPRESSION___DETACH = eINSTANCE.getLayerExpression__Detach();
+
+ /**
+ * The meta object literal for the '<em><b>Exit Attached State</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation LAYER_EXPRESSION___EXIT_ATTACHED_STATE = eINSTANCE.getLayerExpression__ExitAttachedState();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.ApplicationDependantElementImpl <em>Application Dependant Element</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayersStack.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayersStack.java
index 32dbe9ef117..838f89539c2 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayersStack.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/LayersStack.java
@@ -33,6 +33,7 @@ import org.eclipse.papyrus.layers.stackmodel.command.ComputePropertyValueCommand
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getName <em>Name</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getDiagram <em>Diagram</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getState <em>State</em>}</li>
* </ul>
* </p>
*
@@ -146,6 +147,36 @@ public interface LayersStack extends EObject {
void setDiagram(Diagram value);
/**
+ * Returns the value of the '<em><b>State</b></em>' attribute.
+ * The default value is <code>"detached"</code>.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.layers.stackmodel.layers.LayerState}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>State</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>State</em>' attribute.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerState
+ * @see #setState(LayerState)
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayersPackage#getLayersStack_State()
+ * @model default="detached" unique="false" required="true" ordered="false"
+ * @generated
+ */
+ LayerState getState();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.layers.stackmodel.layers.LayersStack#getState <em>State</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>State</em>' attribute.
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.LayerState
+ * @see #getState()
+ * @generated
+ */
+ void setState(LayerState value);
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.papyrus.layers.stackmodel.layers.ComputePropertyValueCommand" required="true" ordered="false" exceptions="org.eclipse.papyrus.layers.stackmodel.layers.LayersException" viewRequired="true" viewOrdered="false" propertyRequired="true" propertyOrdered="false"
@@ -172,6 +203,83 @@ public interface LayersStack extends EObject {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ void startAfterCreation();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Start the LayersStack after a reloading by EMF. This method should be explicitly called after a reloading.
+ * The method usually start the layer behaviors.
+ * <!-- end-model-doc -->
+ * @model exceptions="org.eclipse.papyrus.layers.stackmodel.layers.LayersException"
+ * @generated
+ */
+ void attachLayers() throws LayersException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Try to attach this Layer. If successful, the state go to "attached". Otherwise, an exception is thrown.
+ * A Layer can be attached if its required attributes are set.
+ * Required attributes:
+ * <ul>
+ * <li>application</li>
+ * <li>owningLayerStack</li>
+ * <li>parent container</li>
+ * <li></li>
+ * </ul>
+ * Just after enterring in "attached" state, the enterAttachedState() method is called.
+ * If this Layer is successfully attached, then attach subLayers.
+ * <!-- end-model-doc -->
+ * @model exceptions="org.eclipse.papyrus.layers.stackmodel.layers.LayersException"
+ * @generated
+ */
+ void attach() throws LayersException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Detach the Layer. The state go to "detached".
+ * Associated behavior are stopped.
+ * <!-- end-model-doc -->
+ * @model exceptions="org.eclipse.papyrus.layers.stackmodel.layers.LayersException"
+ * @generated
+ */
+ void detach() throws LayersException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This method is called by the class immediately after entering in attached state.
+ * The methodcan be used to start the layer behaviors.
+ * <!-- end-model-doc -->
+ * @model exceptions="org.eclipse.papyrus.layers.stackmodel.layers.LayersException"
+ * @generated
+ */
+ void enterAttachedState() throws LayersException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This method is called just before this Layer leave the attached state.
+ *
+ * <!-- end-model-doc -->
+ * @model
+ * @generated
+ */
+ void exitAttachedState();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
* @throws LayersException
* @model dataType="org.eclipse.papyrus.layers.stackmodel.layers.ComputePropertyValueCommand" viewRequired="true" viewOrdered="false" propertyRequired="true" propertyMany="true"
* @generated NOT
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/AbstractLayerImpl.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/AbstractLayerImpl.java
index 143361eddcd..7da435656f0 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/AbstractLayerImpl.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/AbstractLayerImpl.java
@@ -16,6 +16,7 @@ import java.lang.reflect.InvocationTargetException;
import java.util.Collection;
import java.util.List;
import java.util.Map.Entry;
+
import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain;
@@ -38,6 +39,7 @@ import org.eclipse.papyrus.layers.stackmodel.command.ComputePropertyValueCommand
import org.eclipse.papyrus.layers.stackmodel.layers.AbstractLayer;
import org.eclipse.papyrus.layers.stackmodel.layers.LayerDescriptor;
import org.eclipse.papyrus.layers.stackmodel.layers.LayersPackage;
+import org.eclipse.papyrus.layers.stackmodel.layers.LayersStack;
import org.eclipse.papyrus.layers.stackmodel.layers.LayersStackApplication;
import org.eclipse.papyrus.layers.stackmodel.layers.NullInstance;
import org.eclipse.papyrus.layers.stackmodel.layers.Property;
@@ -108,14 +110,23 @@ public abstract class AbstractLayerImpl extends LayerExpressionImpl implements A
*/
protected AbstractLayerImpl() {
super();
-
- // Add an observer
+ // Listen on application changed and propertyValues changed
+ // This behavior is set from the constructor, has it doesn't interfered with
+ // reloading
Adapter adapter = new PropertyValuesSynchronizer();
- this.eAdapters().add(adapter);
+ this.eAdapters().add(adapter);
}
/**
+ * Start the behaviors associated to this layer.
+ * This method is called by one of the methods: {@link #startAfterReloading()} or {@link #attachToLayersStack(LayersStack)}.
+ */
+ protected void startBehaviors() {
+ super.startBehaviors();
+ }
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/AbstractLayerOperatorImpl.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/AbstractLayerOperatorImpl.java
index 40d3cc18e23..8bc0816c2ec 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/AbstractLayerOperatorImpl.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/AbstractLayerOperatorImpl.java
@@ -175,6 +175,7 @@ public abstract class AbstractLayerOperatorImpl extends LayerOperatorImpl implem
* Nothing is done if one of the attribute is not set.
* Nothing is done if the descriptor can not be found (maybe a log is issue).
* <!-- begin-user-doc -->
+ * Not used ?
* <!-- end-user-doc -->
*
* @generated NOT
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerExpressionImpl.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerExpressionImpl.java
index 428ae846db4..5f312839910 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerExpressionImpl.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerExpressionImpl.java
@@ -14,6 +14,7 @@ package org.eclipse.papyrus.layers.stackmodel.layers.impl;
import java.lang.reflect.InvocationTargetException;
import java.util.List;
+
import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.impl.AdapterImpl;
@@ -23,11 +24,13 @@ import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.layers.stackmodel.BadStateException;
import org.eclipse.papyrus.layers.stackmodel.LayersException;
import org.eclipse.papyrus.layers.stackmodel.NotFoundException;
import org.eclipse.papyrus.layers.stackmodel.command.ComputePropertyValueCommand;
import org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression;
import org.eclipse.papyrus.layers.stackmodel.layers.LayerOperator;
+import org.eclipse.papyrus.layers.stackmodel.layers.LayerState;
import org.eclipse.papyrus.layers.stackmodel.layers.LayersPackage;
import org.eclipse.papyrus.layers.stackmodel.layers.LayersStack;
import org.eclipse.papyrus.layers.stackmodel.layers.Property;
@@ -45,6 +48,7 @@ import org.eclipse.papyrus.layers.stackmodel.layers.Property;
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.LayerExpressionImpl#isLayerEnabled <em>Is Layer Enabled</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.LayerExpressionImpl#isBranchEnabled <em>Is Branch Enabled</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.LayerExpressionImpl#getOwningLayersStack <em>Owning Layers Stack</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.LayerExpressionImpl#getState <em>State</em>}</li>
* </ul>
* </p>
*
@@ -145,6 +149,24 @@ ApplicationDependantElementImpl implements LayerExpression {
protected LayersStack owningLayersStack;
/**
+ * The default value of the '{@link #getState() <em>State</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getState()
+ * @generated
+ * @ordered
+ */
+ protected static final LayerState STATE_EDEFAULT = LayerState.DETACHED;
+ /**
+ * The cached value of the '{@link #getState() <em>State</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getState()
+ * @generated
+ * @ordered
+ */
+ protected LayerState state = STATE_EDEFAULT;
+ /**
* Listener on this object container (i.e owner) attached/detached events
*/
protected Adapter containerListener = new AdapterImpl() {
@@ -175,13 +197,27 @@ ApplicationDependantElementImpl implements LayerExpression {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @generated
+ * @generated NOT
*/
protected LayerExpressionImpl() {
super();
+
+ // Listen on this object attachment / detachment from its container.
+ // When this node is atttached to a parent, the owningLayerStack property is set.
+ // This is done in owningLayerChanged.
+ eAdapters().add(containerListener);
+
}
/**
+ * Start the behaviors associated to this layer.
+ * This method is called by one of the methods: {@link #startAfterReloading()} or {@link #attachToLayersStack(LayersStack)}.
+ */
+ protected void startBehaviors() {
+
+ }
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -330,6 +366,27 @@ ApplicationDependantElementImpl implements LayerExpression {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ * @generated
+ */
+ public LayerState getState() {
+ return state;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setState(LayerState newState) {
+ LayerState oldState = state;
+ state = newState == null ? STATE_EDEFAULT : newState;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, LayersPackage.LAYER_EXPRESSION__STATE, oldState, state));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
* @generated NOT
*/
public LayersStack getLayersStack() throws NotFoundException {
@@ -345,6 +402,80 @@ ApplicationDependantElementImpl implements LayerExpression {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public void enterAttachedState() throws LayersException {
+ // do nothing
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public void attach() throws LayersException {
+
+ // Stop if already in ATTACHED state.
+ if(getState() == LayerState.ATTACHED) {
+ return;
+ }
+
+ // Check required attributes
+ if( getApplication()==null || getOwningLayersStack() == null || eContainer() == null) {
+ throw new BadStateException("A required attribute is not set. The Layer can't be attached."
+ + "[layerName=" + getName()
+ + ", application=" + (getApplication()==null?"null":"ok")
+ + ", owningLayersStack=" + (getOwningLayersStack()==null?"null":"ok")
+ + ", container=" + (eContainer()==null?"null":"ok")
+ + "]"
+ );
+ }
+
+ // Can go in attached mode
+ setState(LayerState.ATTACHED);
+ enterAttachedState();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * Subclass can overload in order to stop some behaviors.
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public void detach() throws LayersException {
+
+
+ // Change the state
+ exitAttachedState();
+ setState(LayerState.DETACHED);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public void exitAttachedState() {
+ // do nothing.
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * Start this element after its reloading by EMF
+ * This method is called recursively by the parent of this element.
+ * <br>
+ * This default implementation start the associated behaviors.
+ *
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public void startAfterReloading() {
+ startBehaviors();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
* @generated
*/
public ComputePropertyValueCommand getComputePropertyValueCommand(View view, Property property) throws LayersException {
@@ -376,6 +507,24 @@ ApplicationDependantElementImpl implements LayerExpression {
}
/**
+ * <!-- begin-user-doc -->
+ * This default implementation set the layerStack, and start behaviors.
+ * This method can be overriden by subclasses. In this case, subclass must ensure that
+ * the {@link #owningLayersStack} is set and the behaviors are started.
+ * <!-- end-user-doc -->
+ *
+ * @generated NOT
+ */
+ public void attachToLayersStack(LayersStack owningLayersStack) {
+
+ // the owning stack
+ setOwningLayersStack(owningLayersStack);
+
+ // Start associated behavior
+ startBehaviors();
+ }
+
+ /**
* Init this Layer.
* Called by the LayerStack as soon as the layer is added in the tree of layers.
* This method can be subclassed to init a particular layer.
@@ -433,6 +582,8 @@ ApplicationDependantElementImpl implements LayerExpression {
case LayersPackage.LAYER_EXPRESSION__OWNING_LAYERS_STACK:
if (resolve) return getOwningLayersStack();
return basicGetOwningLayersStack();
+ case LayersPackage.LAYER_EXPRESSION__STATE:
+ return getState();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -460,6 +611,9 @@ ApplicationDependantElementImpl implements LayerExpression {
case LayersPackage.LAYER_EXPRESSION__OWNING_LAYERS_STACK:
setOwningLayersStack((LayersStack)newValue);
return;
+ case LayersPackage.LAYER_EXPRESSION__STATE:
+ setState((LayerState)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -487,6 +641,9 @@ ApplicationDependantElementImpl implements LayerExpression {
case LayersPackage.LAYER_EXPRESSION__OWNING_LAYERS_STACK:
setOwningLayersStack((LayersStack)null);
return;
+ case LayersPackage.LAYER_EXPRESSION__STATE:
+ setState(STATE_EDEFAULT);
+ return;
}
super.eUnset(featureID);
}
@@ -511,6 +668,8 @@ ApplicationDependantElementImpl implements LayerExpression {
return isBranchEnabled != IS_BRANCH_ENABLED_EDEFAULT;
case LayersPackage.LAYER_EXPRESSION__OWNING_LAYERS_STACK:
return owningLayersStack != null;
+ case LayersPackage.LAYER_EXPRESSION__STATE:
+ return state != STATE_EDEFAULT;
}
return super.eIsSet(featureID);
}
@@ -545,8 +704,8 @@ ApplicationDependantElementImpl implements LayerExpression {
catch (Throwable throwable) {
throw new InvocationTargetException(throwable);
}
- case LayersPackage.LAYER_EXPRESSION___INIT_LAYER__LAYERSSTACK:
- initLayer((LayersStack)arguments.get(0));
+ case LayersPackage.LAYER_EXPRESSION___ATTACH_TO_LAYERS_STACK__LAYERSSTACK:
+ attachToLayersStack((LayersStack)arguments.get(0));
return null;
case LayersPackage.LAYER_EXPRESSION___GET_LAYERS_STACK:
try {
@@ -555,6 +714,33 @@ ApplicationDependantElementImpl implements LayerExpression {
catch (Throwable throwable) {
throw new InvocationTargetException(throwable);
}
+ case LayersPackage.LAYER_EXPRESSION___ENTER_ATTACHED_STATE:
+ try {
+ enterAttachedState();
+ return null;
+ }
+ catch (Throwable throwable) {
+ throw new InvocationTargetException(throwable);
+ }
+ case LayersPackage.LAYER_EXPRESSION___ATTACH:
+ try {
+ attach();
+ return null;
+ }
+ catch (Throwable throwable) {
+ throw new InvocationTargetException(throwable);
+ }
+ case LayersPackage.LAYER_EXPRESSION___DETACH:
+ try {
+ detach();
+ return null;
+ }
+ catch (Throwable throwable) {
+ throw new InvocationTargetException(throwable);
+ }
+ case LayersPackage.LAYER_EXPRESSION___EXIT_ATTACHED_STATE:
+ exitAttachedState();
+ return null;
}
return super.eInvoke(operationID, arguments);
}
@@ -577,6 +763,8 @@ ApplicationDependantElementImpl implements LayerExpression {
result.append(isLayerEnabled);
result.append(", isBranchEnabled: ");
result.append(isBranchEnabled);
+ result.append(", state: ");
+ result.append(state);
result.append(')');
return result.toString();
}
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerOperatorImpl.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerOperatorImpl.java
index 2d3843469a7..d71603697e0 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerOperatorImpl.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerOperatorImpl.java
@@ -13,12 +13,14 @@
package org.eclipse.papyrus.layers.stackmodel.layers.impl;
import java.util.Collection;
+
import org.eclipse.emf.common.notify.NotificationChain;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.util.EObjectContainmentEList;
import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.layers.stackmodel.LayersException;
import org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression;
import org.eclipse.papyrus.layers.stackmodel.layers.LayerOperator;
import org.eclipse.papyrus.layers.stackmodel.layers.LayersPackage;
@@ -206,4 +208,60 @@ public abstract class LayerOperatorImpl extends LayerExpressionImpl implements L
layer.setOwningLayersStack(value);
}
}
+
+ /**
+ * <!-- begin-user-doc -->
+ * Start this element after its reloading by EMF
+ * This method is called recursively by the parent of this element.
+ *
+ * <!-- end-user-doc -->
+ * @throws LayersException
+ * @generated NOT
+ */
+ @Override
+ public void attach() throws LayersException {
+ // Try to attach this Layer
+ super.attach();
+ // attach children
+ for( LayerExpression l : getLayers()) {
+ l.attach();
+ }
+ }
+
+ /**
+ *
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayerExpressionImpl#detach()
+ *
+ * @throws LayersException
+ */
+ @Override
+ public void detach() throws LayersException {
+ // Detach this Layer
+ super.detach();
+ // detach children
+ for( LayerExpression l : getLayers()) {
+ l.detach();
+ }
+ }
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated unless we need it again
+ * @generated NOT
+ */
+ public void attachToLayersStack(LayersStack owningLayersStack) {
+
+ // the owning stack
+ setOwningLayersStack(owningLayersStack);
+
+ // Ensure child is started, if any
+ for( LayerExpression l : getLayers()) {
+ l.attachToLayersStack(owningLayersStack);
+ }
+
+ // Start local behaviors
+ startBehaviors();
+ }
+
+
} //LayerOperatorImpl
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersFactoryImpl.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersFactoryImpl.java
index a29bd77c671..90b77415b5a 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersFactoryImpl.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersFactoryImpl.java
@@ -146,6 +146,8 @@ public class LayersFactoryImpl extends EFactoryImpl implements LayersFactory {
@Override
public Object createFromString(EDataType eDataType, String initialValue) {
switch (eDataType.getClassifierID()) {
+ case LayersPackage.LAYER_STATE:
+ return createLayerStateFromString(eDataType, initialValue);
case LayersPackage.EVENT_LEVEL:
return createEventLevelFromString(eDataType, initialValue);
case LayersPackage.STRING:
@@ -181,6 +183,8 @@ public class LayersFactoryImpl extends EFactoryImpl implements LayersFactory {
@Override
public String convertToString(EDataType eDataType, Object instanceValue) {
switch (eDataType.getClassifierID()) {
+ case LayersPackage.LAYER_STATE:
+ return convertLayerStateToString(eDataType, instanceValue);
case LayersPackage.EVENT_LEVEL:
return convertEventLevelToString(eDataType, instanceValue);
case LayersPackage.STRING:
@@ -793,6 +797,26 @@ public class LayersFactoryImpl extends EFactoryImpl implements LayersFactory {
* <!-- end-user-doc -->
* @generated
*/
+ public LayerState createLayerStateFromString(EDataType eDataType, String initialValue) {
+ LayerState result = LayerState.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertLayerStateToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EventLevel createEventLevelFromString(EDataType eDataType, String initialValue) {
EventLevel result = EventLevel.get(initialValue);
if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersPackageImpl.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersPackageImpl.java
index 6236b206fa3..bb79017254c 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersPackageImpl.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersPackageImpl.java
@@ -63,6 +63,7 @@ import org.eclipse.papyrus.layers.stackmodel.layers.LayerOperator;
import org.eclipse.papyrus.layers.stackmodel.layers.LayerOperatorDescriptor;
import org.eclipse.papyrus.layers.stackmodel.layers.LayerOperatorDescriptorRegistry;
import org.eclipse.papyrus.layers.stackmodel.layers.LayerStackDescriptorRegistry;
+import org.eclipse.papyrus.layers.stackmodel.layers.LayerState;
import org.eclipse.papyrus.layers.stackmodel.layers.LayersFactory;
import org.eclipse.papyrus.layers.stackmodel.layers.LayersPackage;
import org.eclipse.papyrus.layers.stackmodel.layers.LayersStack;
@@ -582,6 +583,13 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
* <!-- end-user-doc -->
* @generated
*/
+ private EEnum layerStateEEnum = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
private EEnum eventLevelEEnum = null;
/**
@@ -786,6 +794,15 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
* <!-- end-user-doc -->
* @generated
*/
+ public EAttribute getLayersStack_State() {
+ return (EAttribute)layersStackEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EOperation getLayersStack__GetComputePropertyValueCommand__View_Property() {
return layersStackEClass.getEOperations().get(0);
}
@@ -813,6 +830,60 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
* <!-- end-user-doc -->
* @generated
*/
+ public EOperation getLayersStack__StartAfterCreation() {
+ return layersStackEClass.getEOperations().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLayersStack__AttachLayers() {
+ return layersStackEClass.getEOperations().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLayersStack__Attach() {
+ return layersStackEClass.getEOperations().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLayersStack__Detach() {
+ return layersStackEClass.getEOperations().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLayersStack__EnterAttachedState() {
+ return layersStackEClass.getEOperations().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLayersStack__ExitAttachedState() {
+ return layersStackEClass.getEOperations().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EClass getLayerExpression() {
return layerExpressionEClass;
}
@@ -876,6 +947,15 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
* <!-- end-user-doc -->
* @generated
*/
+ public EAttribute getLayerExpression_State() {
+ return (EAttribute)layerExpressionEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EOperation getLayerExpression__GetComputePropertyValueCommand__View_Property() {
return layerExpressionEClass.getEOperations().get(0);
}
@@ -903,7 +983,7 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
* <!-- end-user-doc -->
* @generated
*/
- public EOperation getLayerExpression__InitLayer__LayersStack() {
+ public EOperation getLayerExpression__AttachToLayersStack__LayersStack() {
return layerExpressionEClass.getEOperations().get(3);
}
@@ -921,6 +1001,42 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
* <!-- end-user-doc -->
* @generated
*/
+ public EOperation getLayerExpression__EnterAttachedState() {
+ return layerExpressionEClass.getEOperations().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLayerExpression__Attach() {
+ return layerExpressionEClass.getEOperations().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLayerExpression__Detach() {
+ return layerExpressionEClass.getEOperations().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getLayerExpression__ExitAttachedState() {
+ return layerExpressionEClass.getEOperations().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EClass getApplicationDependantElement() {
return applicationDependantElementEClass;
}
@@ -2658,6 +2774,15 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
* <!-- end-user-doc -->
* @generated
*/
+ public EEnum getLayerState() {
+ return layerStateEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EEnum getEventLevel() {
return eventLevelEEnum;
}
@@ -2788,9 +2913,16 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
createEAttribute(layersStackEClass, LAYERS_STACK__NAME);
createEAttribute(layersStackEClass, LAYERS_STACK__DESCRIPTION);
createEReference(layersStackEClass, LAYERS_STACK__DIAGRAM);
+ createEAttribute(layersStackEClass, LAYERS_STACK__STATE);
createEOperation(layersStackEClass, LAYERS_STACK___GET_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_PROPERTY);
createEOperation(layersStackEClass, LAYERS_STACK___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST);
createEOperation(layersStackEClass, LAYERS_STACK___GET_VIEWS_COMPUTE_PROPERTY_VALUE_COMMAND__ELIST_PROPERTY);
+ createEOperation(layersStackEClass, LAYERS_STACK___START_AFTER_CREATION);
+ createEOperation(layersStackEClass, LAYERS_STACK___ATTACH_LAYERS);
+ createEOperation(layersStackEClass, LAYERS_STACK___ATTACH);
+ createEOperation(layersStackEClass, LAYERS_STACK___DETACH);
+ createEOperation(layersStackEClass, LAYERS_STACK___ENTER_ATTACHED_STATE);
+ createEOperation(layersStackEClass, LAYERS_STACK___EXIT_ATTACHED_STATE);
layerExpressionEClass = createEClass(LAYER_EXPRESSION);
createEAttribute(layerExpressionEClass, LAYER_EXPRESSION__NAME);
@@ -2799,11 +2931,16 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
createEAttribute(layerExpressionEClass, LAYER_EXPRESSION__IS_LAYER_ENABLED);
createEAttribute(layerExpressionEClass, LAYER_EXPRESSION__IS_BRANCH_ENABLED);
createEReference(layerExpressionEClass, LAYER_EXPRESSION__OWNING_LAYERS_STACK);
+ createEAttribute(layerExpressionEClass, LAYER_EXPRESSION__STATE);
createEOperation(layerExpressionEClass, LAYER_EXPRESSION___GET_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_PROPERTY);
createEOperation(layerExpressionEClass, LAYER_EXPRESSION___GET_VIEWS_COMPUTE_PROPERTY_VALUE_COMMAND__ELIST_PROPERTY);
createEOperation(layerExpressionEClass, LAYER_EXPRESSION___GET_PROPERTIES_COMPUTE_PROPERTY_VALUE_COMMAND__VIEW_ELIST);
- createEOperation(layerExpressionEClass, LAYER_EXPRESSION___INIT_LAYER__LAYERSSTACK);
+ createEOperation(layerExpressionEClass, LAYER_EXPRESSION___ATTACH_TO_LAYERS_STACK__LAYERSSTACK);
createEOperation(layerExpressionEClass, LAYER_EXPRESSION___GET_LAYERS_STACK);
+ createEOperation(layerExpressionEClass, LAYER_EXPRESSION___ENTER_ATTACHED_STATE);
+ createEOperation(layerExpressionEClass, LAYER_EXPRESSION___ATTACH);
+ createEOperation(layerExpressionEClass, LAYER_EXPRESSION___DETACH);
+ createEOperation(layerExpressionEClass, LAYER_EXPRESSION___EXIT_ATTACHED_STATE);
applicationDependantElementEClass = createEClass(APPLICATION_DEPENDANT_ELEMENT);
createEReference(applicationDependantElementEClass, APPLICATION_DEPENDANT_ELEMENT__APPLICATION);
@@ -3064,6 +3201,7 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
allViewsDerivedLayerEClass = createEClass(ALL_VIEWS_DERIVED_LAYER);
// Create enums
+ layerStateEEnum = createEEnum(LAYER_STATE);
eventLevelEEnum = createEEnum(EVENT_LEVEL);
// Create data types
@@ -3168,6 +3306,7 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
initEAttribute(getLayersStack_Name(), this.getString(), "name", null, 1, 1, LayersStack.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getLayersStack_Description(), this.getString(), "description", null, 1, 1, LayersStack.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getLayersStack_Diagram(), theNotationPackage.getDiagram(), null, "diagram", null, 0, 1, LayersStack.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getLayersStack_State(), this.getLayerState(), "state", "detached", 1, 1, LayersStack.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
EOperation op = initEOperation(getLayersStack__GetComputePropertyValueCommand__View_Property(), this.getComputePropertyValueCommand(), "getComputePropertyValueCommand", 1, 1, IS_UNIQUE, !IS_ORDERED);
addEParameter(op, theNotationPackage.getView(), "view", 1, 1, IS_UNIQUE, !IS_ORDERED);
@@ -3184,6 +3323,22 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
addEParameter(op, this.getProperty(), "property", 1, 1, IS_UNIQUE, !IS_ORDERED);
addEException(op, this.getLayersException());
+ initEOperation(getLayersStack__StartAfterCreation(), null, "startAfterCreation", 1, 1, IS_UNIQUE, !IS_ORDERED);
+
+ op = initEOperation(getLayersStack__AttachLayers(), null, "attachLayers", 1, 1, IS_UNIQUE, !IS_ORDERED);
+ addEException(op, this.getLayersException());
+
+ op = initEOperation(getLayersStack__Attach(), null, "attach", 1, 1, IS_UNIQUE, !IS_ORDERED);
+ addEException(op, this.getLayersException());
+
+ op = initEOperation(getLayersStack__Detach(), null, "detach", 1, 1, IS_UNIQUE, !IS_ORDERED);
+ addEException(op, this.getLayersException());
+
+ op = initEOperation(getLayersStack__EnterAttachedState(), null, "enterAttachedState", 1, 1, IS_UNIQUE, !IS_ORDERED);
+ addEException(op, this.getLayersException());
+
+ initEOperation(getLayersStack__ExitAttachedState(), null, "exitAttachedState", 1, 1, IS_UNIQUE, !IS_ORDERED);
+
initEClass(layerExpressionEClass, LayerExpression.class, "LayerExpression", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getLayerExpression_Name(), this.getString(), "name", null, 1, 1, LayerExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getLayerExpression_Description(), this.getString(), "description", null, 1, 1, LayerExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
@@ -3191,6 +3346,7 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
initEAttribute(getLayerExpression_IsLayerEnabled(), this.getboolean(), "isLayerEnabled", "true", 1, 1, LayerExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getLayerExpression_IsBranchEnabled(), this.getboolean(), "isBranchEnabled", "true", 1, 1, LayerExpression.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getLayerExpression_OwningLayersStack(), this.getLayersStack(), null, "owningLayersStack", null, 0, 1, LayerExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getLayerExpression_State(), this.getLayerState(), "state", "detached", 1, 1, LayerExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
op = initEOperation(getLayerExpression__GetComputePropertyValueCommand__View_Property(), this.getComputePropertyValueCommand(), "getComputePropertyValueCommand", 1, 1, IS_UNIQUE, !IS_ORDERED);
addEParameter(op, theNotationPackage.getView(), "view", 1, 1, IS_UNIQUE, !IS_ORDERED);
@@ -3207,12 +3363,23 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
addEParameter(op, this.getProperty(), "property", 1, -1, IS_UNIQUE, IS_ORDERED);
addEException(op, this.getLayersException());
- op = initEOperation(getLayerExpression__InitLayer__LayersStack(), null, "initLayer", 1, 1, IS_UNIQUE, !IS_ORDERED);
+ op = initEOperation(getLayerExpression__AttachToLayersStack__LayersStack(), null, "attachToLayersStack", 1, 1, IS_UNIQUE, !IS_ORDERED);
addEParameter(op, this.getLayersStack(), "owningLayersStack", 1, 1, IS_UNIQUE, !IS_ORDERED);
op = initEOperation(getLayerExpression__GetLayersStack(), this.getLayersStack(), "getLayersStack", 1, 1, IS_UNIQUE, !IS_ORDERED);
addEException(op, this.getNotFoundException());
+ op = initEOperation(getLayerExpression__EnterAttachedState(), null, "enterAttachedState", 1, 1, IS_UNIQUE, !IS_ORDERED);
+ addEException(op, this.getLayersException());
+
+ op = initEOperation(getLayerExpression__Attach(), null, "attach", 1, 1, IS_UNIQUE, !IS_ORDERED);
+ addEException(op, this.getLayersException());
+
+ op = initEOperation(getLayerExpression__Detach(), null, "detach", 1, 1, IS_UNIQUE, !IS_ORDERED);
+ addEException(op, this.getLayersException());
+
+ initEOperation(getLayerExpression__ExitAttachedState(), null, "exitAttachedState", 1, 1, IS_UNIQUE, !IS_ORDERED);
+
initEClass(applicationDependantElementEClass, ApplicationDependantElement.class, "ApplicationDependantElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getApplicationDependantElement_Application(), this.getLayersStackApplication(), null, "application", null, 0, 1, ApplicationDependantElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
@@ -3577,6 +3744,10 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
initEClass(allViewsDerivedLayerEClass, AllViewsDerivedLayer.class, "AllViewsDerivedLayer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
// Initialize enums and add enum literals
+ initEEnum(layerStateEEnum, LayerState.class, "LayerState");
+ addEEnumLiteral(layerStateEEnum, LayerState.DETACHED);
+ addEEnumLiteral(layerStateEEnum, LayerState.ATTACHED);
+
initEEnum(eventLevelEEnum, EventLevel.class, "EventLevel");
addEEnumLiteral(eventLevelEEnum, EventLevel.LEVEL1);
addEEnumLiteral(eventLevelEEnum, EventLevel.ALL_LEVELS);
@@ -3608,7 +3779,7 @@ public class LayersPackageImpl extends EPackageImpl implements LayersPackage {
* @generated
*/
protected void createExtendedMetaDataAnnotations() {
- String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData";
+ String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData";
addAnnotation
(badStateExceptionEDataType,
source,
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersStackApplicationImpl.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersStackApplicationImpl.java
index 218b291cc38..e7dcc306250 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersStackApplicationImpl.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersStackApplicationImpl.java
@@ -531,6 +531,7 @@ FolderElementImpl implements LayersStackApplication {
// Create a new LayerStack and add it to application (this)
LayersStack layer = LayersFactory.eINSTANCE.createLayersStack();
+ layer.startAfterCreation();
layer.setDiagram(diagram);
// Create first layer in stack
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersStackImpl.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersStackImpl.java
index 36708046e88..f11081e2178 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersStackImpl.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayersStackImpl.java
@@ -28,6 +28,7 @@ import org.eclipse.papyrus.layers.stackmodel.BadStateException;
import org.eclipse.papyrus.layers.stackmodel.LayersException;
import org.eclipse.papyrus.layers.stackmodel.command.ComputePropertyValueCommand;
import org.eclipse.papyrus.layers.stackmodel.layers.LayerExpression;
+import org.eclipse.papyrus.layers.stackmodel.layers.LayerState;
import org.eclipse.papyrus.layers.stackmodel.layers.LayersPackage;
import org.eclipse.papyrus.layers.stackmodel.layers.LayersStack;
import org.eclipse.papyrus.layers.stackmodel.layers.Property;
@@ -46,6 +47,7 @@ import org.eclipse.papyrus.layers.stackmodel.notifier.LayersTreeEventNotifierFac
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersStackImpl#getName <em>Name</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersStackImpl#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersStackImpl#getDiagram <em>Diagram</em>}</li>
+ * <li>{@link org.eclipse.papyrus.layers.stackmodel.layers.impl.LayersStackImpl#getState <em>State</em>}</li>
* </ul>
* </p>
*
@@ -112,6 +114,26 @@ MinimalEObjectImpl.Container implements LayersStack {
protected Diagram diagram;
/**
+ * The default value of the '{@link #getState() <em>State</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getState()
+ * @generated
+ * @ordered
+ */
+ protected static final LayerState STATE_EDEFAULT = LayerState.DETACHED;
+
+ /**
+ * The cached value of the '{@link #getState() <em>State</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getState()
+ * @generated
+ * @ordered
+ */
+ protected LayerState state = STATE_EDEFAULT;
+
+ /**
* Listener on layers tree events.
* This listener take in charge the initialization of added layers.
*/
@@ -148,7 +170,9 @@ MinimalEObjectImpl.Container implements LayersStack {
*/
protected LayersStackImpl() {
super();
- init();
+
+ // Now, init should be called explicitly after creation.
+ //init();
}
/**
@@ -298,6 +322,27 @@ MinimalEObjectImpl.Container implements LayersStack {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ * @generated
+ */
+ public LayerState getState() {
+ return state;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setState(LayerState newState) {
+ LayerState oldState = state;
+ state = newState == null ? STATE_EDEFAULT : newState;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, LayersPackage.LAYERS_STACK__STATE, oldState, state));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
* @throws LayersException
* @generated NOT
*/
@@ -334,6 +379,98 @@ MinimalEObjectImpl.Container implements LayersStack {
/**
* <!-- begin-user-doc -->
+ * Start this LayersStack after its creation. This method should be explicitly called by
+ * user after the creation of a LayersStack.
+ * <!-- end-user-doc -->
+ * @deprecated Not used anymore
+ * @generated NOT
+ */
+ public void startAfterCreation() {
+ // Ensure child is initialized, if any
+ if( getLayers() != null ) {
+ getLayers().attachToLayersStack(this);
+ }
+
+ // Start local behaviors
+ init();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * Attach recursively the tree of layers.
+ * <!-- end-user-doc -->
+ * @throws LayersException
+ * @generated NOT
+ */
+ public void attachLayers() throws LayersException {
+ // Ensure child is started, if any
+ if( getLayers() != null ) {
+ getLayers().attach();
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public void attach() throws LayersException {
+ // Stop if already in ATTACHED state.
+ if(getState() == LayerState.ATTACHED) {
+ return;
+ }
+
+ // Check required attributes
+ if( getDiagram()==null ) {
+ throw new BadStateException("A required attribute is not set. The Layer can't be attached."
+ + "[layerName=" + getName()
+ + ", diagram=" + (getDiagram()==null?"null":"ok")
+ + "]"
+ );
+ }
+
+ // Can go in attached mode
+ setState(LayerState.ATTACHED);
+ enterAttachedState();
+ attachLayers();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public void detach() throws LayersException {
+ // Change the state
+ exitAttachedState();
+ setState(LayerState.DETACHED);
+ // Ensure child is started, if any
+ if( getLayers() != null ) {
+ getLayers().detach();
+ }
+
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public void enterAttachedState() throws LayersException {
+ init();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void exitAttachedState() {
+ // do nothing;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @throws LayersException
* @generated NOT
@@ -394,6 +531,8 @@ MinimalEObjectImpl.Container implements LayersStack {
case LayersPackage.LAYERS_STACK__DIAGRAM:
if (resolve) return getDiagram();
return basicGetDiagram();
+ case LayersPackage.LAYERS_STACK__STATE:
+ return getState();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -403,7 +542,6 @@ MinimalEObjectImpl.Container implements LayersStack {
* <!-- end-user-doc -->
* @generated
*/
- @SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
@@ -419,6 +557,9 @@ MinimalEObjectImpl.Container implements LayersStack {
case LayersPackage.LAYERS_STACK__DIAGRAM:
setDiagram((Diagram)newValue);
return;
+ case LayersPackage.LAYERS_STACK__STATE:
+ setState((LayerState)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -443,6 +584,9 @@ MinimalEObjectImpl.Container implements LayersStack {
case LayersPackage.LAYERS_STACK__DIAGRAM:
setDiagram((Diagram)null);
return;
+ case LayersPackage.LAYERS_STACK__STATE:
+ setState(STATE_EDEFAULT);
+ return;
}
super.eUnset(featureID);
}
@@ -463,6 +607,8 @@ MinimalEObjectImpl.Container implements LayersStack {
return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
case LayersPackage.LAYERS_STACK__DIAGRAM:
return diagram != null;
+ case LayersPackage.LAYERS_STACK__STATE:
+ return state != STATE_EDEFAULT;
}
return super.eIsSet(featureID);
}
@@ -497,6 +643,44 @@ MinimalEObjectImpl.Container implements LayersStack {
catch (Throwable throwable) {
throw new InvocationTargetException(throwable);
}
+ case LayersPackage.LAYERS_STACK___START_AFTER_CREATION:
+ startAfterCreation();
+ return null;
+ case LayersPackage.LAYERS_STACK___ATTACH_LAYERS:
+ try {
+ attachLayers();
+ return null;
+ }
+ catch (Throwable throwable) {
+ throw new InvocationTargetException(throwable);
+ }
+ case LayersPackage.LAYERS_STACK___ATTACH:
+ try {
+ attach();
+ return null;
+ }
+ catch (Throwable throwable) {
+ throw new InvocationTargetException(throwable);
+ }
+ case LayersPackage.LAYERS_STACK___DETACH:
+ try {
+ detach();
+ return null;
+ }
+ catch (Throwable throwable) {
+ throw new InvocationTargetException(throwable);
+ }
+ case LayersPackage.LAYERS_STACK___ENTER_ATTACHED_STATE:
+ try {
+ enterAttachedState();
+ return null;
+ }
+ catch (Throwable throwable) {
+ throw new InvocationTargetException(throwable);
+ }
+ case LayersPackage.LAYERS_STACK___EXIT_ATTACHED_STATE:
+ exitAttachedState();
+ return null;
}
return super.eInvoke(operationID, arguments);
}
@@ -515,6 +699,8 @@ MinimalEObjectImpl.Container implements LayersStack {
result.append(name);
result.append(", description: ");
result.append(description);
+ result.append(", state: ");
+ result.append(state);
result.append(')');
return result.toString();
}
@@ -532,7 +718,7 @@ MinimalEObjectImpl.Container implements LayersStack {
return;
}
// init the layer
- addedLayer.initLayer(this);
+ addedLayer.attachToLayersStack(this);
}
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/RegExpLayerImpl.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/RegExpLayerImpl.java
index bd162ebc367..5a85e033e9d 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/RegExpLayerImpl.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/RegExpLayerImpl.java
@@ -14,7 +14,6 @@ package org.eclipse.papyrus.layers.stackmodel.layers.impl;
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
-import java.util.Collection;
import java.util.Collections;
import java.util.List;
@@ -218,6 +217,39 @@ public class RegExpLayerImpl extends AbstractLayerImpl implements RegExpLayer {
}
/**
+ *
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.impl.AbstractLayerImpl#startBehaviors()
+ *
+ */
+ @Override
+ protected void startBehaviors() {
+ // TODO Auto-generated method stub
+ super.startBehaviors();
+ }
+
+ /**
+ *
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayerExpressionImpl#startAfterReloading()
+ *
+ */
+ @Override
+ public void startAfterReloading() {
+ // TODO Auto-generated method stub
+ super.startAfterReloading();
+ }
+
+ /**
+ *
+ * @see org.eclipse.papyrus.layers.stackmodel.layers.impl.LayerExpressionImpl#attachToLayersStack(org.eclipse.papyrus.layers.stackmodel.layers.LayersStack)
+ *
+ * @param owningLayersStack
+ */
+ @Override
+ public void attachToLayersStack(LayersStack owningLayersStack) {
+ // TODO Auto-generated method stub
+ super.attachToLayersStack(owningLayersStack);
+ }
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/StackedLayerOperatorImpl.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/StackedLayerOperatorImpl.java
index f2ab8dc3c84..e43a7bd55f1 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/StackedLayerOperatorImpl.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/src/org/eclipse/papyrus/layers/stackmodel/layers/impl/StackedLayerOperatorImpl.java
@@ -62,6 +62,7 @@ public class StackedLayerOperatorImpl extends AbstractLayerOperatorImpl implemen
* Nothing is done if one of the attribute is not set.
* Nothing is done if the descriptor can not be found (maybe a log is issue).
* <!-- begin-user-doc -->
+ * Not used ?
* <!-- end-user-doc -->
*
* @generated NOT
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerImplWithApplicationTest.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerImplWithApplicationTest.java
index 49acb5f5d1c..998befeaf31 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerImplWithApplicationTest.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/stackmodel/layers/impl/LayerImplWithApplicationTest.java
@@ -154,6 +154,7 @@ public class LayerImplWithApplicationTest {
public void testAutomaticSynchronizationAfterRemove() throws BadStateException {
// Create objets to test
LayerImpl layer = (LayerImpl)LayersFactory.eINSTANCE.createLayer();
+ layer.startBehaviors();
LayersStackApplication application = LayersFactory.eINSTANCE.createLayersStackApplication();
layer.setApplication(application);
PropertyRegistry propertyRegistry = application.getPropertyRegistry();
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/stackmodel/notifier/DiagramViewChangedEventNotifierTest.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/stackmodel/notifier/DiagramViewChangedEventNotifierTest.java
index 597960f81a4..fa324b55ebe 100644
--- a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/stackmodel/notifier/DiagramViewChangedEventNotifierTest.java
+++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/stackmodel/notifier/DiagramViewChangedEventNotifierTest.java
@@ -26,6 +26,7 @@ import org.eclipse.papyrus.layers.stackmodel.util.TriggeredEventTraces.Triggered
import org.eclipse.uml2.uml.Class;
import org.junit.After;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
/**
@@ -66,6 +67,7 @@ public class DiagramViewChangedEventNotifierTest {
* Test method for {@link org.eclipse.papyrus.layers.stackmodel.notifier.DiagramViewChangedEventNotifier#addEventListener(org.eclipse.papyrus.layers.stackmodel.notifier.IDiagramViewEventListener)}.
*/
@Test
+ @Ignore
public void testAddEventListener() {
fail("Not yet implemented");
}
@@ -74,6 +76,7 @@ public class DiagramViewChangedEventNotifierTest {
* Test method for {@link org.eclipse.papyrus.layers.stackmodel.notifier.DiagramViewChangedEventNotifier#removeEventListener(org.eclipse.papyrus.layers.stackmodel.notifier.IDiagramViewEventListener)}.
*/
@Test
+ @Ignore
public void testRemoveEventListener() {
fail("Not yet implemented");
}

Back to the top