Skip to content

Commit 27759b2

Browse files
committed
Reworked metamodel and aligned corresponding code generators
1 parent bf04860 commit 27759b2

File tree

64 files changed

+2541
-2919
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+2541
-2919
lines changed

trace/commons/plugins/fr.inria.diverse.trace.commons.model/.project

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@
55
<projects>
66
</projects>
77
<buildSpec>
8+
<buildCommand>
9+
<name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
10+
<arguments>
11+
</arguments>
12+
</buildCommand>
813
<buildCommand>
914
<name>org.eclipse.jdt.core.javabuilder</name>
1015
<arguments>
@@ -24,5 +29,6 @@
2429
<natures>
2530
<nature>org.eclipse.jdt.core.javanature</nature>
2631
<nature>org.eclipse.pde.PluginNature</nature>
32+
<nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
2733
</natures>
2834
</projectDescription>
Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
1-
Manifest-Version: 1.0
2-
Bundle-ManifestVersion: 2
3-
Bundle-Name: %pluginName
4-
Bundle-SymbolicName: fr.inria.diverse.trace.commons.model;singleton:=true
5-
Bundle-Version: 0.1.0.qualifier
6-
Bundle-ClassPath: .
7-
Bundle-Vendor: INRIA
8-
Bundle-Localization: plugin
9-
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
10-
Export-Package: fr.inria.diverse.trace.commons.model.helper,
11-
fr.inria.diverse.trace.commons.model.trace,
12-
fr.inria.diverse.trace.commons.model.trace.impl,
13-
fr.inria.diverse.trace.commons.model.trace.util
14-
Require-Bundle: org.eclipse.core.runtime,
15-
org.eclipse.emf.ecore;visibility:=reexport
16-
Bundle-ActivationPolicy: lazy
1+
Manifest-Version: 1.0
2+
Bundle-ManifestVersion: 2
3+
Bundle-Name: %pluginName
4+
Bundle-SymbolicName: fr.inria.diverse.trace.commons.model;singleton:=true
5+
Bundle-Version: 0.1.0.qualifier
6+
Bundle-ClassPath: .
7+
Bundle-Vendor: INRIA
8+
Bundle-Localization: plugin
9+
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
10+
Export-Package: fr.inria.diverse.trace.commons.model.helper,
11+
fr.inria.diverse.trace.commons.model.trace,
12+
fr.inria.diverse.trace.commons.model.trace.impl,
13+
fr.inria.diverse.trace.commons.model.trace.util
14+
Require-Bundle: org.eclipse.core.runtime,
15+
org.eclipse.emf.ecore;visibility:=reexport
16+
Bundle-ActivationPolicy: lazy
17+

trace/commons/plugins/fr.inria.diverse.trace.commons.model/model/GenericTrace.aird

Lines changed: 540 additions & 285 deletions
Large diffs are not rendered by default.

trace/commons/plugins/fr.inria.diverse.trace.commons.model/model/GenericTrace.ecore

Lines changed: 50 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,16 @@
1818
eType="#//MSE" containment="true"/>
1919
</eClassifiers>
2020
<eClassifiers xsi:type="ecore:EClass" name="GenericMSE" eSuperTypes="#//MSE">
21-
<eOperations name="getCaller" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EObject"/>
22-
<eOperations name="getAction" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EOperation"/>
21+
<eOperations name="getCaller" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EObject">
22+
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
23+
<details key="body" value="return callerReference;"/>
24+
</eAnnotations>
25+
</eOperations>
26+
<eOperations name="getAction" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EOperation">
27+
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
28+
<details key="body" value="return actionReference;"/>
29+
</eAnnotations>
30+
</eOperations>
2331
<eStructuralFeatures xsi:type="ecore:EReference" name="callerReference" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EObject"/>
2432
<eStructuralFeatures xsi:type="ecore:EReference" name="actionReference" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EOperation"/>
2533
</eClassifiers>
@@ -57,13 +65,15 @@
5765
<eGenericSuperTypes eClassifier="#//SequentialStep">
5866
<eTypeArguments eClassifier="#//Step"/>
5967
</eGenericSuperTypes>
68+
<eGenericSuperTypes eClassifier="#//GenericStep"/>
6069
</eClassifiers>
6170
<eClassifiers xsi:type="ecore:EClass" name="GenericParallelStep">
6271
<eGenericSuperTypes eClassifier="#//ParallelStep">
6372
<eTypeArguments eClassifier="#//Step"/>
6473
</eGenericSuperTypes>
74+
<eGenericSuperTypes eClassifier="#//GenericStep"/>
6575
</eClassifiers>
66-
<eClassifiers xsi:type="ecore:EClass" name="GenericSmallStep" eSuperTypes="#//SmallStep"/>
76+
<eClassifiers xsi:type="ecore:EClass" name="GenericSmallStep" eSuperTypes="#//SmallStep #//GenericStep"/>
6777
<eClassifiers xsi:type="ecore:EClass" name="Trace" abstract="true">
6878
<eTypeParameters name="StepSubType"/>
6979
<eTypeParameters name="TracedObjectSubtype"/>
@@ -100,23 +110,22 @@
100110
</eStructuralFeatures>
101111
</eClassifiers>
102112
<eClassifiers xsi:type="ecore:EClass" name="Value" abstract="true">
103-
<eStructuralFeatures xsi:type="ecore:EReference" name="state" upperBound="-1"
104-
eType="#//State" eOpposite="#//State/value"/>
113+
<eOperations name="getStatesView" lowerBound="1" upperBound="-1" eType="#//State"/>
105114
</eClassifiers>
106115
<eClassifiers xsi:type="ecore:EClass" name="State" abstract="true">
107-
<eStructuralFeatures xsi:type="ecore:EReference" name="value" upperBound="-1"
108-
eType="#//Value" eOpposite="#//Value/state"/>
109-
</eClassifiers>
110-
<eClassifiers xsi:type="ecore:EClass" name="GenericReferenceValue" eSuperTypes="#//Value">
111116
<eTypeParameters name="T"/>
112-
<eStructuralFeatures xsi:type="ecore:EReference" name="referenceValue">
113-
<eGenericType eTypeParameter="#//GenericReferenceValue/T"/>
117+
<eOperations name="getValuesView" upperBound="-1" eType="#//Value"/>
118+
<eStructuralFeatures xsi:type="ecore:EReference" name="t">
119+
<eGenericType eTypeParameter="#//State/T"/>
114120
</eStructuralFeatures>
115121
</eClassifiers>
122+
<eClassifiers xsi:type="ecore:EClass" name="GenericReferenceValue" eSuperTypes="#//GenericValue">
123+
<eStructuralFeatures xsi:type="ecore:EReference" name="referenceValue" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
124+
</eClassifiers>
116125
<eClassifiers xsi:type="ecore:EClass" name="GenericDimension">
117126
<eStructuralFeatures xsi:type="ecore:EReference" name="dynamicProperty" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EStructuralFeature"/>
118127
<eGenericSuperTypes eClassifier="#//Dimension">
119-
<eTypeArguments eClassifier="#//Value"/>
128+
<eTypeArguments eClassifier="#//GenericValue"/>
120129
</eGenericSuperTypes>
121130
</eClassifiers>
122131
<eClassifiers xsi:type="ecore:EClass" name="GenericTracedObject">
@@ -127,9 +136,19 @@
127136
<eTypeArguments eClassifier="#//GenericDimension"/>
128137
</eGenericSuperTypes>
129138
</eClassifiers>
130-
<eClassifiers xsi:type="ecore:EClass" name="GenericState" eSuperTypes="#//State"/>
139+
<eClassifiers xsi:type="ecore:EClass" name="GenericState" eSuperTypes="#//State">
140+
<eOperations name="getValuesView" upperBound="-1" eType="#//Value">
141+
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
142+
<details key="body" value="final EList&lt;Value> result = new org.eclipse.emf.common.util.BasicEList&lt;Value>();&#xA;result.addAll(getValues());&#xA;return result;"/>
143+
</eAnnotations>
144+
</eOperations>
145+
<eStructuralFeatures xsi:type="ecore:EReference" name="values" upperBound="-1"
146+
eType="#//GenericValue" eOpposite="#//GenericValue/states"/>
147+
</eClassifiers>
131148
<eClassifiers xsi:type="ecore:EClass" name="GenericTrace">
132-
<eTypeParameters name="StepSubType"/>
149+
<eTypeParameters name="StepSubType">
150+
<eBounds eClassifier="#//GenericStep"/>
151+
</eTypeParameters>
133152
<eGenericSuperTypes eClassifier="#//Trace">
134153
<eTypeArguments eTypeParameter="#//GenericTrace/StepSubType"/>
135154
<eTypeArguments eClassifier="#//GenericTracedObject">
@@ -139,7 +158,7 @@
139158
</eGenericSuperTypes>
140159
</eClassifiers>
141160
<eClassifiers xsi:type="ecore:EClass" name="GenericAttributeValue" abstract="true"
142-
eSuperTypes="#//Value"/>
161+
eSuperTypes="#//GenericValue"/>
143162
<eClassifiers xsi:type="ecore:EClass" name="BooleanAttributeValue" eSuperTypes="#//GenericAttributeValue">
144163
<eStructuralFeatures xsi:type="ecore:EAttribute" name="attributeValue" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"
145164
defaultValueLiteral="false"/>
@@ -151,11 +170,14 @@
151170
<eStructuralFeatures xsi:type="ecore:EAttribute" name="attributeValue" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
152171
</eClassifiers>
153172
<eClassifiers xsi:type="ecore:EClass" name="LaunchConfiguration">
154-
<eStructuralFeatures xsi:type="ecore:EReference" name="launchconfigurationparameter"
155-
upperBound="-1" eType="#//LaunchConfigurationParameter" containment="true"/>
173+
<eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
174+
eType="#//LaunchConfigurationParameter" containment="true"/>
156175
<eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
157176
</eClassifiers>
158-
<eClassifiers xsi:type="ecore:EClass" name="LaunchConfigurationParameter" abstract="true"/>
177+
<eClassifiers xsi:type="ecore:EClass" name="LaunchConfigurationParameter" abstract="true">
178+
<eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
179+
defaultValueLiteral=""/>
180+
</eClassifiers>
159181
<eClassifiers xsi:type="ecore:EClass" name="LanguageNameParameter" eSuperTypes="#//LaunchConfigurationParameter"/>
160182
<eClassifiers xsi:type="ecore:EClass" name="AddonExtensionParameter" eSuperTypes="#//LaunchConfigurationParameter"/>
161183
<eClassifiers xsi:type="ecore:EClass" name="ModelURIParameter" eSuperTypes="#//LaunchConfigurationParameter"/>
@@ -164,4 +186,14 @@
164186
<eClassifiers xsi:type="ecore:EClass" name="InitializationArgumentsParameter" eSuperTypes="#//LaunchConfigurationParameter"/>
165187
<eClassifiers xsi:type="ecore:EClass" name="ModelRootParameter" eSuperTypes="#//LaunchConfigurationParameter"/>
166188
<eClassifiers xsi:type="ecore:EClass" name="InitializationMethodParameter" eSuperTypes="#//LaunchConfigurationParameter"/>
189+
<eClassifiers xsi:type="ecore:EClass" name="GenericStep" abstract="true" eSuperTypes="#//Step"/>
190+
<eClassifiers xsi:type="ecore:EClass" name="GenericValue" abstract="true" eSuperTypes="#//Value">
191+
<eOperations name="getStatesView" lowerBound="1" upperBound="-1" eType="#//State">
192+
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
193+
<details key="body" value="final EList&lt;State> result = new org.eclipse.emf.common.util.BasicEList&lt;State>();&#xA;result.addAll(getStates());&#xA;return result;"/>
194+
</eAnnotations>
195+
</eOperations>
196+
<eStructuralFeatures xsi:type="ecore:EReference" name="states" upperBound="-1"
197+
eType="#//GenericState" eOpposite="#//GenericState/values"/>
198+
</eClassifiers>
167199
</ecore:EPackage>

trace/commons/plugins/fr.inria.diverse.trace.commons.model/model/GenericTrace.genmodel

Lines changed: 34 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -51,43 +51,65 @@
5151
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//Trace/rootStep"/>
5252
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//Trace/tracedObjects"/>
5353
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//Trace/states"/>
54+
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//Trace/launchconfiguration"/>
5455
</genClasses>
5556
<genClasses image="false" ecoreClass="GenericTrace.ecore#//TracedObject">
5657
<genTypeParameters ecoreTypeParameter="GenericTrace.ecore#//TracedObject/DimensionSubType"/>
5758
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//TracedObject/dimensions"/>
58-
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//TracedObject/object"/>
5959
</genClasses>
6060
<genClasses image="false" ecoreClass="GenericTrace.ecore#//Dimension">
6161
<genTypeParameters ecoreTypeParameter="GenericTrace.ecore#//Dimension/ValueSubType"/>
6262
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//Dimension/values"/>
6363
</genClasses>
6464
<genClasses ecoreClass="GenericTrace.ecore#//Value">
65-
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//Value/state"/>
65+
<genOperations ecoreOperation="GenericTrace.ecore#//Value/getStatesView"/>
6666
</genClasses>
6767
<genClasses image="false" ecoreClass="GenericTrace.ecore#//State">
68-
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//State/value"/>
68+
<genOperations ecoreOperation="GenericTrace.ecore#//State/getValuesView"/>
6969
</genClasses>
7070
<genClasses ecoreClass="GenericTrace.ecore#//GenericReferenceValue">
71-
<genTypeParameters ecoreTypeParameter="GenericTrace.ecore#//GenericReferenceValue/T"/>
72-
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//GenericReferenceValue/value"/>
71+
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//GenericReferenceValue/referenceValue"/>
7372
</genClasses>
7473
<genClasses ecoreClass="GenericTrace.ecore#//GenericDimension">
7574
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//GenericDimension/dynamicProperty"/>
7675
</genClasses>
77-
<genClasses ecoreClass="GenericTrace.ecore#//GenericTracedObject"/>
78-
<genClasses ecoreClass="GenericTrace.ecore#//GenericState"/>
79-
<genClasses ecoreClass="GenericTrace.ecore#//GenericTrace">
80-
<genTypeParameters ecoreTypeParameter="GenericTrace.ecore#//GenericTrace/StepSubType"/>
76+
<genClasses ecoreClass="GenericTrace.ecore#//GenericTracedObject">
77+
<genTypeParameters ecoreTypeParameter="GenericTrace.ecore#//GenericTracedObject/T"/>
8178
</genClasses>
79+
<genClasses ecoreClass="GenericTrace.ecore#//GenericState">
80+
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//GenericState/values"/>
81+
<genOperations ecoreOperation="GenericTrace.ecore#//GenericState/getValuesView"/>
82+
</genClasses>
83+
<genClasses ecoreClass="GenericTrace.ecore#//GenericTrace"/>
8284
<genClasses image="false" ecoreClass="GenericTrace.ecore#//GenericAttributeValue"/>
8385
<genClasses ecoreClass="GenericTrace.ecore#//BooleanAttributeValue">
84-
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute GenericTrace.ecore#//BooleanAttributeValue/value"/>
86+
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute GenericTrace.ecore#//BooleanAttributeValue/attributeValue"/>
8587
</genClasses>
8688
<genClasses ecoreClass="GenericTrace.ecore#//IntegerAttributevalue">
87-
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute GenericTrace.ecore#//IntegerAttributevalue/value"/>
89+
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute GenericTrace.ecore#//IntegerAttributevalue/attributeValue"/>
8890
</genClasses>
8991
<genClasses ecoreClass="GenericTrace.ecore#//StringAttributeValue">
90-
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute GenericTrace.ecore#//StringAttributeValue/value"/>
92+
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute GenericTrace.ecore#//StringAttributeValue/attributeValue"/>
93+
</genClasses>
94+
<genClasses ecoreClass="GenericTrace.ecore#//LaunchConfiguration">
95+
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//LaunchConfiguration/parameters"/>
96+
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute GenericTrace.ecore#//LaunchConfiguration/type"/>
97+
</genClasses>
98+
<genClasses image="false" ecoreClass="GenericTrace.ecore#//LaunchConfigurationParameter">
99+
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute GenericTrace.ecore#//LaunchConfigurationParameter/value"/>
100+
</genClasses>
101+
<genClasses ecoreClass="GenericTrace.ecore#//LanguageNameParameter"/>
102+
<genClasses ecoreClass="GenericTrace.ecore#//AddonExtensionParameter"/>
103+
<genClasses ecoreClass="GenericTrace.ecore#//ModelURIParameter"/>
104+
<genClasses ecoreClass="GenericTrace.ecore#//AnimatorURIParameter"/>
105+
<genClasses ecoreClass="GenericTrace.ecore#//EntryPointParameter"/>
106+
<genClasses ecoreClass="GenericTrace.ecore#//InitializationArgumentsParameter"/>
107+
<genClasses ecoreClass="GenericTrace.ecore#//ModelRootParameter"/>
108+
<genClasses ecoreClass="GenericTrace.ecore#//InitializationMethodParameter"/>
109+
<genClasses image="false" ecoreClass="GenericTrace.ecore#//GenericStep"/>
110+
<genClasses image="false" ecoreClass="GenericTrace.ecore#//GenericValue">
111+
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GenericTrace.ecore#//GenericValue/states"/>
112+
<genOperations ecoreOperation="GenericTrace.ecore#//GenericValue/getStatesView"/>
91113
</genClasses>
92114
</genPackages>
93115
</genmodel:GenModel>
254 KB
Loading

trace/commons/plugins/fr.inria.diverse.trace.commons.model/src/fr/inria/diverse/trace/commons/model/trace/GenericAttributeValue.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@
1313
* @model abstract="true"
1414
* @generated
1515
*/
16-
public interface GenericAttributeValue extends Value {
16+
public interface GenericAttributeValue extends GenericValue {
1717
} // GenericAttributeValue

trace/commons/plugins/fr.inria.diverse.trace.commons.model/src/fr/inria/diverse/trace/commons/model/trace/GenericDimension.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
* @model
2121
* @generated
2222
*/
23-
public interface GenericDimension extends Dimension<Value> {
23+
public interface GenericDimension extends Dimension<GenericValue> {
2424
/**
2525
* Returns the value of the '<em><b>Dynamic Property</b></em>' reference.
2626
* <!-- begin-user-doc -->

trace/commons/plugins/fr.inria.diverse.trace.commons.model/src/fr/inria/diverse/trace/commons/model/trace/GenericMSE.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ public interface GenericMSE extends MSE {
7979
* <!-- begin-user-doc -->
8080
* <!-- end-user-doc -->
8181
* @model kind="operation"
82+
* annotation="http://www.eclipse.org/emf/2002/GenModel body='return callerReference;'"
8283
* @generated
8384
*/
8485
EObject getCaller();
@@ -87,6 +88,7 @@ public interface GenericMSE extends MSE {
8788
* <!-- begin-user-doc -->
8889
* <!-- end-user-doc -->
8990
* @model kind="operation"
91+
* annotation="http://www.eclipse.org/emf/2002/GenModel body='return actionReference;'"
9092
* @generated
9193
*/
9294
EOperation getAction();

trace/commons/plugins/fr.inria.diverse.trace.commons.model/src/fr/inria/diverse/trace/commons/model/trace/GenericParallelStep.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@
1313
* @model
1414
* @generated
1515
*/
16-
public interface GenericParallelStep extends ParallelStep<Step> {
16+
public interface GenericParallelStep extends ParallelStep<Step>, GenericStep {
1717
} // GenericParallelStep

0 commit comments

Comments
 (0)