diff options
author | ArenBabikian <aren.babikian@mail.mcgill.ca> | 2020-06-07 20:19:26 -0400 |
---|---|---|
committer | ArenBabikian <aren.babikian@mail.mcgill.ca> | 2020-06-07 20:19:26 -0400 |
commit | adddfa282a0fe78bfdc5ffb967996d89293aa45c (patch) | |
tree | ef9b3dbed5bd4fa850d890a67b4c7ee3c1648782 /Tests | |
parent | VAMPIRE: Rebase on Master (diff) | |
parent | VAMPIRE: Rebase on Master (diff) | |
download | VIATRA-Generator-adddfa282a0fe78bfdc5ffb967996d89293aa45c.tar.gz VIATRA-Generator-adddfa282a0fe78bfdc5ffb967996d89293aa45c.tar.zst VIATRA-Generator-adddfa282a0fe78bfdc5ffb967996d89293aa45c.zip |
Merge branch 'Vampire-New' into Vampire-New
Conflicts:
Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeModule.xtendbin
Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeSetup.xtendbin
Application/hu.bme.mit.inf.dslreasoner.application/xtend-gen/hu/bme/mit/inf/dslreasoner/application/validation/QueryAndMetamodelValidator.java
Domains/Examples/ModelGenExampleFAM_plugin/model/FamMetamodel.ecore
Domains/Examples/ModelGenExampleFAM_plugin/plugin.xml
Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/META-INF/MANIFEST.MF
Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/ContentInNotLive.java
Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/DirectSupertype.java
Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Live.java
Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/LoopInInheritence.java
Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/NonSymmetricOpposite.java
Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Opposite.java
Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/OppositeDifferentClass.java
Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/PatternContent.java
Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/META-INF/MANIFEST.MF
Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/plugin.xml
Framework/hu.bme.mit.inf.dslreasoner.logic.model/META-INF/MANIFEST.MF
Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/Logic2AlloyLanguageMapper_TypeScopeMapping.xtend
Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.visualisation/META-INF/MANIFEST.MF
Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Entry.java
Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Synchronization.java
Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/EntryImpl.java
Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/SynchronizationImpl.java
Diffstat (limited to 'Tests')
70 files changed, 11898 insertions, 0 deletions
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/TestExecutionICSE.xtend b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/TestExecutionICSE.xtend new file mode 100644 index 00000000..41bb763d --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/TestExecutionICSE.xtend | |||
@@ -0,0 +1,22 @@ | |||
1 | package ca.mcgill.ecse.dslreasoner.standalone.test | ||
2 | |||
3 | import hu.bme.mit.inf.dslreasoner.application.execution.StandaloneScriptExecutor | ||
4 | |||
5 | class TestExecutionICSE { | ||
6 | def static void main(String[] args) { | ||
7 | val fileSystemPath = "configs/fileSystem.vsconfig"; | ||
8 | val ecorePath = "configs/ecore.vsconfig"; | ||
9 | val yakinduPath = "configs/yakindu.vsconfig"; | ||
10 | val famPath = "configs/fam.vsconfig"; | ||
11 | // val yakinduWithWFPath = "configs/yakinduWF.vsconfig"; | ||
12 | // val famWithWFPath = "configs/famWF.vsconfig"; | ||
13 | val exp1 = StandaloneScriptExecutor.executeScript(fileSystemPath); | ||
14 | println(exp1) | ||
15 | // val exp2 = StandaloneScriptExecutor.executeScript(ecorePath); | ||
16 | // println(exp2) | ||
17 | val exp3 = StandaloneScriptExecutor.executeScript(yakinduPath); | ||
18 | println(exp3) | ||
19 | val exp4 = StandaloneScriptExecutor.executeScript(famPath); | ||
20 | println(exp4) | ||
21 | } | ||
22 | } \ No newline at end of file | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FAMTerminator.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FAMTerminator.java new file mode 100644 index 00000000..686af44b --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FAMTerminator.java | |||
@@ -0,0 +1,52 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EObject; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>FAM Terminator</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator#getData <em>Data</em>}</li> | ||
17 | * </ul> | ||
18 | * | ||
19 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFAMTerminator() | ||
20 | * @model | ||
21 | * @generated | ||
22 | */ | ||
23 | public interface FAMTerminator extends EObject { | ||
24 | /** | ||
25 | * Returns the value of the '<em><b>Data</b></em>' container reference. | ||
26 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getTerminator <em>Terminator</em>}'. | ||
27 | * <!-- begin-user-doc --> | ||
28 | * <p> | ||
29 | * If the meaning of the '<em>Data</em>' container reference isn't clear, | ||
30 | * there really should be more of a description here... | ||
31 | * </p> | ||
32 | * <!-- end-user-doc --> | ||
33 | * @return the value of the '<em>Data</em>' container reference. | ||
34 | * @see #setData(FunctionalData) | ||
35 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFAMTerminator_Data() | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getTerminator | ||
37 | * @model opposite="terminator" transient="false" | ||
38 | * @generated | ||
39 | */ | ||
40 | FunctionalData getData(); | ||
41 | |||
42 | /** | ||
43 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator#getData <em>Data</em>}' container reference. | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @param value the new value of the '<em>Data</em>' container reference. | ||
47 | * @see #getData() | ||
48 | * @generated | ||
49 | */ | ||
50 | void setData(FunctionalData value); | ||
51 | |||
52 | } // FAMTerminator | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/Function.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/Function.java new file mode 100644 index 00000000..b2e5af29 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/Function.java | |||
@@ -0,0 +1,61 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Function</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function#getSubElements <em>Sub Elements</em>}</li> | ||
17 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function#getType <em>Type</em>}</li> | ||
18 | * </ul> | ||
19 | * | ||
20 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunction() | ||
21 | * @model | ||
22 | * @generated | ||
23 | */ | ||
24 | public interface Function extends FunctionalElement { | ||
25 | /** | ||
26 | * Returns the value of the '<em><b>Sub Elements</b></em>' containment reference list. | ||
27 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement}. | ||
28 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getParent <em>Parent</em>}'. | ||
29 | * <!-- begin-user-doc --> | ||
30 | * <p> | ||
31 | * If the meaning of the '<em>Sub Elements</em>' containment reference list isn't clear, | ||
32 | * there really should be more of a description here... | ||
33 | * </p> | ||
34 | * <!-- end-user-doc --> | ||
35 | * @return the value of the '<em>Sub Elements</em>' containment reference list. | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunction_SubElements() | ||
37 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getParent | ||
38 | * @model opposite="parent" containment="true" | ||
39 | * @generated | ||
40 | */ | ||
41 | EList<FunctionalElement> getSubElements(); | ||
42 | |||
43 | /** | ||
44 | * Returns the value of the '<em><b>Type</b></em>' attribute. | ||
45 | * The literals are from the enumeration {@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType}. | ||
46 | * <!-- begin-user-doc --> | ||
47 | * <p> | ||
48 | * If the meaning of the '<em>Type</em>' attribute isn't clear, | ||
49 | * there really should be more of a description here... | ||
50 | * </p> | ||
51 | * <!-- end-user-doc --> | ||
52 | * @return the value of the '<em>Type</em>' attribute. | ||
53 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType | ||
54 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunction_Type() | ||
55 | * @model required="true" transient="true" changeable="false" volatile="true" derived="true" | ||
56 | * annotation="org.eclipse.viatra.query.querybasedfeature patternFQN='ca.mcgill.ecse.dslreasoner.standalone.test.fam.queries.type'" | ||
57 | * @generated | ||
58 | */ | ||
59 | FunctionType getType(); | ||
60 | |||
61 | } // Function | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionType.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionType.java new file mode 100644 index 00000000..71e3062d --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionType.java | |||
@@ -0,0 +1,241 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import java.util.Arrays; | ||
6 | import java.util.Collections; | ||
7 | import java.util.List; | ||
8 | |||
9 | import org.eclipse.emf.common.util.Enumerator; | ||
10 | |||
11 | /** | ||
12 | * <!-- begin-user-doc --> | ||
13 | * A representation of the literals of the enumeration '<em><b>Function Type</b></em>', | ||
14 | * and utility methods for working with them. | ||
15 | * <!-- end-user-doc --> | ||
16 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionType() | ||
17 | * @model | ||
18 | * @generated | ||
19 | */ | ||
20 | public enum FunctionType implements Enumerator { | ||
21 | /** | ||
22 | * The '<em><b>Root</b></em>' literal object. | ||
23 | * <!-- begin-user-doc --> | ||
24 | * <!-- end-user-doc --> | ||
25 | * @see #ROOT_VALUE | ||
26 | * @generated | ||
27 | * @ordered | ||
28 | */ | ||
29 | ROOT(0, "Root", "Root"), | ||
30 | |||
31 | /** | ||
32 | * The '<em><b>Intermediate</b></em>' literal object. | ||
33 | * <!-- begin-user-doc --> | ||
34 | * <!-- end-user-doc --> | ||
35 | * @see #INTERMEDIATE_VALUE | ||
36 | * @generated | ||
37 | * @ordered | ||
38 | */ | ||
39 | INTERMEDIATE(1, "Intermediate", "Intermediate"), | ||
40 | |||
41 | /** | ||
42 | * The '<em><b>Leaf</b></em>' literal object. | ||
43 | * <!-- begin-user-doc --> | ||
44 | * <!-- end-user-doc --> | ||
45 | * @see #LEAF_VALUE | ||
46 | * @generated | ||
47 | * @ordered | ||
48 | */ | ||
49 | LEAF(2, "Leaf", "Leaf"); | ||
50 | |||
51 | /** | ||
52 | * The '<em><b>Root</b></em>' literal value. | ||
53 | * <!-- begin-user-doc --> | ||
54 | * <p> | ||
55 | * If the meaning of '<em><b>Root</b></em>' literal object isn't clear, | ||
56 | * there really should be more of a description here... | ||
57 | * </p> | ||
58 | * <!-- end-user-doc --> | ||
59 | * @see #ROOT | ||
60 | * @model name="Root" | ||
61 | * @generated | ||
62 | * @ordered | ||
63 | */ | ||
64 | public static final int ROOT_VALUE = 0; | ||
65 | |||
66 | /** | ||
67 | * The '<em><b>Intermediate</b></em>' literal value. | ||
68 | * <!-- begin-user-doc --> | ||
69 | * <p> | ||
70 | * If the meaning of '<em><b>Intermediate</b></em>' literal object isn't clear, | ||
71 | * there really should be more of a description here... | ||
72 | * </p> | ||
73 | * <!-- end-user-doc --> | ||
74 | * @see #INTERMEDIATE | ||
75 | * @model name="Intermediate" | ||
76 | * @generated | ||
77 | * @ordered | ||
78 | */ | ||
79 | public static final int INTERMEDIATE_VALUE = 1; | ||
80 | |||
81 | /** | ||
82 | * The '<em><b>Leaf</b></em>' literal value. | ||
83 | * <!-- begin-user-doc --> | ||
84 | * <p> | ||
85 | * If the meaning of '<em><b>Leaf</b></em>' literal object isn't clear, | ||
86 | * there really should be more of a description here... | ||
87 | * </p> | ||
88 | * <!-- end-user-doc --> | ||
89 | * @see #LEAF | ||
90 | * @model name="Leaf" | ||
91 | * @generated | ||
92 | * @ordered | ||
93 | */ | ||
94 | public static final int LEAF_VALUE = 2; | ||
95 | |||
96 | /** | ||
97 | * An array of all the '<em><b>Function Type</b></em>' enumerators. | ||
98 | * <!-- begin-user-doc --> | ||
99 | * <!-- end-user-doc --> | ||
100 | * @generated | ||
101 | */ | ||
102 | private static final FunctionType[] VALUES_ARRAY = | ||
103 | new FunctionType[] { | ||
104 | ROOT, | ||
105 | INTERMEDIATE, | ||
106 | LEAF, | ||
107 | }; | ||
108 | |||
109 | /** | ||
110 | * A public read-only list of all the '<em><b>Function Type</b></em>' enumerators. | ||
111 | * <!-- begin-user-doc --> | ||
112 | * <!-- end-user-doc --> | ||
113 | * @generated | ||
114 | */ | ||
115 | public static final List<FunctionType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); | ||
116 | |||
117 | /** | ||
118 | * Returns the '<em><b>Function Type</b></em>' literal with the specified literal value. | ||
119 | * <!-- begin-user-doc --> | ||
120 | * <!-- end-user-doc --> | ||
121 | * @param literal the literal. | ||
122 | * @return the matching enumerator or <code>null</code>. | ||
123 | * @generated | ||
124 | */ | ||
125 | public static FunctionType get(String literal) { | ||
126 | for (int i = 0; i < VALUES_ARRAY.length; ++i) { | ||
127 | FunctionType result = VALUES_ARRAY[i]; | ||
128 | if (result.toString().equals(literal)) { | ||
129 | return result; | ||
130 | } | ||
131 | } | ||
132 | return null; | ||
133 | } | ||
134 | |||
135 | /** | ||
136 | * Returns the '<em><b>Function Type</b></em>' literal with the specified name. | ||
137 | * <!-- begin-user-doc --> | ||
138 | * <!-- end-user-doc --> | ||
139 | * @param name the name. | ||
140 | * @return the matching enumerator or <code>null</code>. | ||
141 | * @generated | ||
142 | */ | ||
143 | public static FunctionType getByName(String name) { | ||
144 | for (int i = 0; i < VALUES_ARRAY.length; ++i) { | ||
145 | FunctionType result = VALUES_ARRAY[i]; | ||
146 | if (result.getName().equals(name)) { | ||
147 | return result; | ||
148 | } | ||
149 | } | ||
150 | return null; | ||
151 | } | ||
152 | |||
153 | /** | ||
154 | * Returns the '<em><b>Function Type</b></em>' literal with the specified integer value. | ||
155 | * <!-- begin-user-doc --> | ||
156 | * <!-- end-user-doc --> | ||
157 | * @param value the integer value. | ||
158 | * @return the matching enumerator or <code>null</code>. | ||
159 | * @generated | ||
160 | */ | ||
161 | public static FunctionType get(int value) { | ||
162 | switch (value) { | ||
163 | case ROOT_VALUE: return ROOT; | ||
164 | case INTERMEDIATE_VALUE: return INTERMEDIATE; | ||
165 | case LEAF_VALUE: return LEAF; | ||
166 | } | ||
167 | return null; | ||
168 | } | ||
169 | |||
170 | /** | ||
171 | * <!-- begin-user-doc --> | ||
172 | * <!-- end-user-doc --> | ||
173 | * @generated | ||
174 | */ | ||
175 | private final int value; | ||
176 | |||
177 | /** | ||
178 | * <!-- begin-user-doc --> | ||
179 | * <!-- end-user-doc --> | ||
180 | * @generated | ||
181 | */ | ||
182 | private final String name; | ||
183 | |||
184 | /** | ||
185 | * <!-- begin-user-doc --> | ||
186 | * <!-- end-user-doc --> | ||
187 | * @generated | ||
188 | */ | ||
189 | private final String literal; | ||
190 | |||
191 | /** | ||
192 | * Only this class can construct instances. | ||
193 | * <!-- begin-user-doc --> | ||
194 | * <!-- end-user-doc --> | ||
195 | * @generated | ||
196 | */ | ||
197 | private FunctionType(int value, String name, String literal) { | ||
198 | this.value = value; | ||
199 | this.name = name; | ||
200 | this.literal = literal; | ||
201 | } | ||
202 | |||
203 | /** | ||
204 | * <!-- begin-user-doc --> | ||
205 | * <!-- end-user-doc --> | ||
206 | * @generated | ||
207 | */ | ||
208 | public int getValue() { | ||
209 | return value; | ||
210 | } | ||
211 | |||
212 | /** | ||
213 | * <!-- begin-user-doc --> | ||
214 | * <!-- end-user-doc --> | ||
215 | * @generated | ||
216 | */ | ||
217 | public String getName() { | ||
218 | return name; | ||
219 | } | ||
220 | |||
221 | /** | ||
222 | * <!-- begin-user-doc --> | ||
223 | * <!-- end-user-doc --> | ||
224 | * @generated | ||
225 | */ | ||
226 | public String getLiteral() { | ||
227 | return literal; | ||
228 | } | ||
229 | |||
230 | /** | ||
231 | * Returns the literal value of the enumerator, which is its string representation. | ||
232 | * <!-- begin-user-doc --> | ||
233 | * <!-- end-user-doc --> | ||
234 | * @generated | ||
235 | */ | ||
236 | @Override | ||
237 | public String toString() { | ||
238 | return literal; | ||
239 | } | ||
240 | |||
241 | } //FunctionType | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalArchitectureModel.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalArchitectureModel.java new file mode 100644 index 00000000..d1717a9f --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalArchitectureModel.java | |||
@@ -0,0 +1,42 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | |||
9 | /** | ||
10 | * <!-- begin-user-doc --> | ||
11 | * A representation of the model object '<em><b>Functional Architecture Model</b></em>'. | ||
12 | * <!-- end-user-doc --> | ||
13 | * | ||
14 | * <p> | ||
15 | * The following features are supported: | ||
16 | * </p> | ||
17 | * <ul> | ||
18 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel#getRootElements <em>Root Elements</em>}</li> | ||
19 | * </ul> | ||
20 | * | ||
21 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalArchitectureModel() | ||
22 | * @model | ||
23 | * @generated | ||
24 | */ | ||
25 | public interface FunctionalArchitectureModel extends EObject { | ||
26 | /** | ||
27 | * Returns the value of the '<em><b>Root Elements</b></em>' containment reference list. | ||
28 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement}. | ||
29 | * <!-- begin-user-doc --> | ||
30 | * <p> | ||
31 | * If the meaning of the '<em>Root Elements</em>' containment reference list isn't clear, | ||
32 | * there really should be more of a description here... | ||
33 | * </p> | ||
34 | * <!-- end-user-doc --> | ||
35 | * @return the value of the '<em>Root Elements</em>' containment reference list. | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalArchitectureModel_RootElements() | ||
37 | * @model containment="true" | ||
38 | * @generated | ||
39 | */ | ||
40 | EList<FunctionalElement> getRootElements(); | ||
41 | |||
42 | } // FunctionalArchitectureModel | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalData.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalData.java new file mode 100644 index 00000000..675318a8 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalData.java | |||
@@ -0,0 +1,81 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EObject; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Functional Data</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getTerminator <em>Terminator</em>}</li> | ||
17 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getInterface <em>Interface</em>}</li> | ||
18 | * </ul> | ||
19 | * | ||
20 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalData() | ||
21 | * @model abstract="true" | ||
22 | * @generated | ||
23 | */ | ||
24 | public interface FunctionalData extends EObject { | ||
25 | /** | ||
26 | * Returns the value of the '<em><b>Terminator</b></em>' containment reference. | ||
27 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator#getData <em>Data</em>}'. | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <p> | ||
30 | * If the meaning of the '<em>Terminator</em>' containment reference isn't clear, | ||
31 | * there really should be more of a description here... | ||
32 | * </p> | ||
33 | * <!-- end-user-doc --> | ||
34 | * @return the value of the '<em>Terminator</em>' containment reference. | ||
35 | * @see #setTerminator(FAMTerminator) | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalData_Terminator() | ||
37 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator#getData | ||
38 | * @model opposite="data" containment="true" | ||
39 | * @generated | ||
40 | */ | ||
41 | FAMTerminator getTerminator(); | ||
42 | |||
43 | /** | ||
44 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getTerminator <em>Terminator</em>}' containment reference. | ||
45 | * <!-- begin-user-doc --> | ||
46 | * <!-- end-user-doc --> | ||
47 | * @param value the new value of the '<em>Terminator</em>' containment reference. | ||
48 | * @see #getTerminator() | ||
49 | * @generated | ||
50 | */ | ||
51 | void setTerminator(FAMTerminator value); | ||
52 | |||
53 | /** | ||
54 | * Returns the value of the '<em><b>Interface</b></em>' container reference. | ||
55 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getData <em>Data</em>}'. | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <p> | ||
58 | * If the meaning of the '<em>Interface</em>' container reference isn't clear, | ||
59 | * there really should be more of a description here... | ||
60 | * </p> | ||
61 | * <!-- end-user-doc --> | ||
62 | * @return the value of the '<em>Interface</em>' container reference. | ||
63 | * @see #setInterface(FunctionalInterface) | ||
64 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalData_Interface() | ||
65 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getData | ||
66 | * @model opposite="data" transient="false" | ||
67 | * @generated | ||
68 | */ | ||
69 | FunctionalInterface getInterface(); | ||
70 | |||
71 | /** | ||
72 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getInterface <em>Interface</em>}' container reference. | ||
73 | * <!-- begin-user-doc --> | ||
74 | * <!-- end-user-doc --> | ||
75 | * @param value the new value of the '<em>Interface</em>' container reference. | ||
76 | * @see #getInterface() | ||
77 | * @generated | ||
78 | */ | ||
79 | void setInterface(FunctionalInterface value); | ||
80 | |||
81 | } // FunctionalData | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalElement.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalElement.java new file mode 100644 index 00000000..acfffbc0 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalElement.java | |||
@@ -0,0 +1,109 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EObject; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Functional Element</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getInterface <em>Interface</em>}</li> | ||
17 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getModel <em>Model</em>}</li> | ||
18 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getParent <em>Parent</em>}</li> | ||
19 | * </ul> | ||
20 | * | ||
21 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalElement() | ||
22 | * @model abstract="true" | ||
23 | * @generated | ||
24 | */ | ||
25 | public interface FunctionalElement extends EObject { | ||
26 | /** | ||
27 | * Returns the value of the '<em><b>Interface</b></em>' containment reference. | ||
28 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getElement <em>Element</em>}'. | ||
29 | * <!-- begin-user-doc --> | ||
30 | * <p> | ||
31 | * If the meaning of the '<em>Interface</em>' containment reference isn't clear, | ||
32 | * there really should be more of a description here... | ||
33 | * </p> | ||
34 | * <!-- end-user-doc --> | ||
35 | * @return the value of the '<em>Interface</em>' containment reference. | ||
36 | * @see #setInterface(FunctionalInterface) | ||
37 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalElement_Interface() | ||
38 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getElement | ||
39 | * @model opposite="element" containment="true" | ||
40 | * @generated | ||
41 | */ | ||
42 | FunctionalInterface getInterface(); | ||
43 | |||
44 | /** | ||
45 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getInterface <em>Interface</em>}' containment reference. | ||
46 | * <!-- begin-user-doc --> | ||
47 | * <!-- end-user-doc --> | ||
48 | * @param value the new value of the '<em>Interface</em>' containment reference. | ||
49 | * @see #getInterface() | ||
50 | * @generated | ||
51 | */ | ||
52 | void setInterface(FunctionalInterface value); | ||
53 | |||
54 | /** | ||
55 | * Returns the value of the '<em><b>Model</b></em>' reference. | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <p> | ||
58 | * If the meaning of the '<em>Model</em>' reference isn't clear, | ||
59 | * there really should be more of a description here... | ||
60 | * </p> | ||
61 | * <!-- end-user-doc --> | ||
62 | * @return the value of the '<em>Model</em>' reference. | ||
63 | * @see #setModel(FunctionalArchitectureModel) | ||
64 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalElement_Model() | ||
65 | * @model required="true" transient="true" volatile="true" derived="true" | ||
66 | * annotation="org.eclipse.viatra.query.querybasedfeature patternFQN='ca.mcgill.ecse.dslreasoner.standalone.test.fam.queries.model'" | ||
67 | * @generated | ||
68 | */ | ||
69 | FunctionalArchitectureModel getModel(); | ||
70 | |||
71 | /** | ||
72 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getModel <em>Model</em>}' reference. | ||
73 | * <!-- begin-user-doc --> | ||
74 | * <!-- end-user-doc --> | ||
75 | * @param value the new value of the '<em>Model</em>' reference. | ||
76 | * @see #getModel() | ||
77 | * @generated | ||
78 | */ | ||
79 | void setModel(FunctionalArchitectureModel value); | ||
80 | |||
81 | /** | ||
82 | * Returns the value of the '<em><b>Parent</b></em>' container reference. | ||
83 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function#getSubElements <em>Sub Elements</em>}'. | ||
84 | * <!-- begin-user-doc --> | ||
85 | * <p> | ||
86 | * If the meaning of the '<em>Parent</em>' container reference isn't clear, | ||
87 | * there really should be more of a description here... | ||
88 | * </p> | ||
89 | * <!-- end-user-doc --> | ||
90 | * @return the value of the '<em>Parent</em>' container reference. | ||
91 | * @see #setParent(Function) | ||
92 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalElement_Parent() | ||
93 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function#getSubElements | ||
94 | * @model opposite="subElements" transient="false" | ||
95 | * @generated | ||
96 | */ | ||
97 | Function getParent(); | ||
98 | |||
99 | /** | ||
100 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getParent <em>Parent</em>}' container reference. | ||
101 | * <!-- begin-user-doc --> | ||
102 | * <!-- end-user-doc --> | ||
103 | * @param value the new value of the '<em>Parent</em>' container reference. | ||
104 | * @see #getParent() | ||
105 | * @generated | ||
106 | */ | ||
107 | void setParent(Function value); | ||
108 | |||
109 | } // FunctionalElement | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalInput.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalInput.java new file mode 100644 index 00000000..de629b29 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalInput.java | |||
@@ -0,0 +1,42 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Functional Input</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput#getIncomingLinks <em>Incoming Links</em>}</li> | ||
17 | * </ul> | ||
18 | * | ||
19 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalInput() | ||
20 | * @model | ||
21 | * @generated | ||
22 | */ | ||
23 | public interface FunctionalInput extends FunctionalData { | ||
24 | /** | ||
25 | * Returns the value of the '<em><b>Incoming Links</b></em>' reference list. | ||
26 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink}. | ||
27 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getTo <em>To</em>}'. | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <p> | ||
30 | * If the meaning of the '<em>Incoming Links</em>' reference list isn't clear, | ||
31 | * there really should be more of a description here... | ||
32 | * </p> | ||
33 | * <!-- end-user-doc --> | ||
34 | * @return the value of the '<em>Incoming Links</em>' reference list. | ||
35 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalInput_IncomingLinks() | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getTo | ||
37 | * @model opposite="to" | ||
38 | * @generated | ||
39 | */ | ||
40 | EList<InformationLink> getIncomingLinks(); | ||
41 | |||
42 | } // FunctionalInput | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalInterface.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalInterface.java new file mode 100644 index 00000000..732f3cc6 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalInterface.java | |||
@@ -0,0 +1,73 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | |||
9 | /** | ||
10 | * <!-- begin-user-doc --> | ||
11 | * A representation of the model object '<em><b>Functional Interface</b></em>'. | ||
12 | * <!-- end-user-doc --> | ||
13 | * | ||
14 | * <p> | ||
15 | * The following features are supported: | ||
16 | * </p> | ||
17 | * <ul> | ||
18 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getData <em>Data</em>}</li> | ||
19 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getElement <em>Element</em>}</li> | ||
20 | * </ul> | ||
21 | * | ||
22 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalInterface() | ||
23 | * @model | ||
24 | * @generated | ||
25 | */ | ||
26 | public interface FunctionalInterface extends EObject { | ||
27 | /** | ||
28 | * Returns the value of the '<em><b>Data</b></em>' containment reference list. | ||
29 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData}. | ||
30 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getInterface <em>Interface</em>}'. | ||
31 | * <!-- begin-user-doc --> | ||
32 | * <p> | ||
33 | * If the meaning of the '<em>Data</em>' containment reference list isn't clear, | ||
34 | * there really should be more of a description here... | ||
35 | * </p> | ||
36 | * <!-- end-user-doc --> | ||
37 | * @return the value of the '<em>Data</em>' containment reference list. | ||
38 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalInterface_Data() | ||
39 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getInterface | ||
40 | * @model opposite="interface" containment="true" | ||
41 | * @generated | ||
42 | */ | ||
43 | EList<FunctionalData> getData(); | ||
44 | |||
45 | /** | ||
46 | * Returns the value of the '<em><b>Element</b></em>' container reference. | ||
47 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getInterface <em>Interface</em>}'. | ||
48 | * <!-- begin-user-doc --> | ||
49 | * <p> | ||
50 | * If the meaning of the '<em>Element</em>' container reference isn't clear, | ||
51 | * there really should be more of a description here... | ||
52 | * </p> | ||
53 | * <!-- end-user-doc --> | ||
54 | * @return the value of the '<em>Element</em>' container reference. | ||
55 | * @see #setElement(FunctionalElement) | ||
56 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalInterface_Element() | ||
57 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getInterface | ||
58 | * @model opposite="interface" transient="false" | ||
59 | * @generated | ||
60 | */ | ||
61 | FunctionalElement getElement(); | ||
62 | |||
63 | /** | ||
64 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getElement <em>Element</em>}' container reference. | ||
65 | * <!-- begin-user-doc --> | ||
66 | * <!-- end-user-doc --> | ||
67 | * @param value the new value of the '<em>Element</em>' container reference. | ||
68 | * @see #getElement() | ||
69 | * @generated | ||
70 | */ | ||
71 | void setElement(FunctionalElement value); | ||
72 | |||
73 | } // FunctionalInterface | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalOutput.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalOutput.java new file mode 100644 index 00000000..51194777 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/FunctionalOutput.java | |||
@@ -0,0 +1,42 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Functional Output</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput#getOutgoingLinks <em>Outgoing Links</em>}</li> | ||
17 | * </ul> | ||
18 | * | ||
19 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalOutput() | ||
20 | * @model | ||
21 | * @generated | ||
22 | */ | ||
23 | public interface FunctionalOutput extends FunctionalData { | ||
24 | /** | ||
25 | * Returns the value of the '<em><b>Outgoing Links</b></em>' containment reference list. | ||
26 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink}. | ||
27 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getFrom <em>From</em>}'. | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <p> | ||
30 | * If the meaning of the '<em>Outgoing Links</em>' containment reference list isn't clear, | ||
31 | * there really should be more of a description here... | ||
32 | * </p> | ||
33 | * <!-- end-user-doc --> | ||
34 | * @return the value of the '<em>Outgoing Links</em>' containment reference list. | ||
35 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getFunctionalOutput_OutgoingLinks() | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getFrom | ||
37 | * @model opposite="from" containment="true" | ||
38 | * @generated | ||
39 | */ | ||
40 | EList<InformationLink> getOutgoingLinks(); | ||
41 | |||
42 | } // FunctionalOutput | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/InformationLink.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/InformationLink.java new file mode 100644 index 00000000..26946d01 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/InformationLink.java | |||
@@ -0,0 +1,81 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EObject; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Information Link</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getFrom <em>From</em>}</li> | ||
17 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getTo <em>To</em>}</li> | ||
18 | * </ul> | ||
19 | * | ||
20 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getInformationLink() | ||
21 | * @model | ||
22 | * @generated | ||
23 | */ | ||
24 | public interface InformationLink extends EObject { | ||
25 | /** | ||
26 | * Returns the value of the '<em><b>From</b></em>' container reference. | ||
27 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput#getOutgoingLinks <em>Outgoing Links</em>}'. | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <p> | ||
30 | * If the meaning of the '<em>From</em>' container reference isn't clear, | ||
31 | * there really should be more of a description here... | ||
32 | * </p> | ||
33 | * <!-- end-user-doc --> | ||
34 | * @return the value of the '<em>From</em>' container reference. | ||
35 | * @see #setFrom(FunctionalOutput) | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getInformationLink_From() | ||
37 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput#getOutgoingLinks | ||
38 | * @model opposite="outgoingLinks" transient="false" | ||
39 | * @generated | ||
40 | */ | ||
41 | FunctionalOutput getFrom(); | ||
42 | |||
43 | /** | ||
44 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getFrom <em>From</em>}' container reference. | ||
45 | * <!-- begin-user-doc --> | ||
46 | * <!-- end-user-doc --> | ||
47 | * @param value the new value of the '<em>From</em>' container reference. | ||
48 | * @see #getFrom() | ||
49 | * @generated | ||
50 | */ | ||
51 | void setFrom(FunctionalOutput value); | ||
52 | |||
53 | /** | ||
54 | * Returns the value of the '<em><b>To</b></em>' reference. | ||
55 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput#getIncomingLinks <em>Incoming Links</em>}'. | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <p> | ||
58 | * If the meaning of the '<em>To</em>' reference isn't clear, | ||
59 | * there really should be more of a description here... | ||
60 | * </p> | ||
61 | * <!-- end-user-doc --> | ||
62 | * @return the value of the '<em>To</em>' reference. | ||
63 | * @see #setTo(FunctionalInput) | ||
64 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#getInformationLink_To() | ||
65 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput#getIncomingLinks | ||
66 | * @model opposite="IncomingLinks" required="true" | ||
67 | * @generated | ||
68 | */ | ||
69 | FunctionalInput getTo(); | ||
70 | |||
71 | /** | ||
72 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getTo <em>To</em>}' reference. | ||
73 | * <!-- begin-user-doc --> | ||
74 | * <!-- end-user-doc --> | ||
75 | * @param value the new value of the '<em>To</em>' reference. | ||
76 | * @see #getTo() | ||
77 | * @generated | ||
78 | */ | ||
79 | void setTo(FunctionalInput value); | ||
80 | |||
81 | } // InformationLink | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/famFactory.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/famFactory.java new file mode 100644 index 00000000..cdab0041 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/famFactory.java | |||
@@ -0,0 +1,96 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EFactory; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * The <b>Factory</b> for the model. | ||
10 | * It provides a create method for each non-abstract class of the model. | ||
11 | * <!-- end-user-doc --> | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage | ||
13 | * @generated | ||
14 | */ | ||
15 | public interface famFactory extends EFactory { | ||
16 | /** | ||
17 | * The singleton instance of the factory. | ||
18 | * <!-- begin-user-doc --> | ||
19 | * <!-- end-user-doc --> | ||
20 | * @generated | ||
21 | */ | ||
22 | famFactory eINSTANCE = ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famFactoryImpl.init(); | ||
23 | |||
24 | /** | ||
25 | * Returns a new object of class '<em>Functional Architecture Model</em>'. | ||
26 | * <!-- begin-user-doc --> | ||
27 | * <!-- end-user-doc --> | ||
28 | * @return a new object of class '<em>Functional Architecture Model</em>'. | ||
29 | * @generated | ||
30 | */ | ||
31 | FunctionalArchitectureModel createFunctionalArchitectureModel(); | ||
32 | |||
33 | /** | ||
34 | * Returns a new object of class '<em>Function</em>'. | ||
35 | * <!-- begin-user-doc --> | ||
36 | * <!-- end-user-doc --> | ||
37 | * @return a new object of class '<em>Function</em>'. | ||
38 | * @generated | ||
39 | */ | ||
40 | Function createFunction(); | ||
41 | |||
42 | /** | ||
43 | * Returns a new object of class '<em>FAM Terminator</em>'. | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @return a new object of class '<em>FAM Terminator</em>'. | ||
47 | * @generated | ||
48 | */ | ||
49 | FAMTerminator createFAMTerminator(); | ||
50 | |||
51 | /** | ||
52 | * Returns a new object of class '<em>Information Link</em>'. | ||
53 | * <!-- begin-user-doc --> | ||
54 | * <!-- end-user-doc --> | ||
55 | * @return a new object of class '<em>Information Link</em>'. | ||
56 | * @generated | ||
57 | */ | ||
58 | InformationLink createInformationLink(); | ||
59 | |||
60 | /** | ||
61 | * Returns a new object of class '<em>Functional Interface</em>'. | ||
62 | * <!-- begin-user-doc --> | ||
63 | * <!-- end-user-doc --> | ||
64 | * @return a new object of class '<em>Functional Interface</em>'. | ||
65 | * @generated | ||
66 | */ | ||
67 | FunctionalInterface createFunctionalInterface(); | ||
68 | |||
69 | /** | ||
70 | * Returns a new object of class '<em>Functional Input</em>'. | ||
71 | * <!-- begin-user-doc --> | ||
72 | * <!-- end-user-doc --> | ||
73 | * @return a new object of class '<em>Functional Input</em>'. | ||
74 | * @generated | ||
75 | */ | ||
76 | FunctionalInput createFunctionalInput(); | ||
77 | |||
78 | /** | ||
79 | * Returns a new object of class '<em>Functional Output</em>'. | ||
80 | * <!-- begin-user-doc --> | ||
81 | * <!-- end-user-doc --> | ||
82 | * @return a new object of class '<em>Functional Output</em>'. | ||
83 | * @generated | ||
84 | */ | ||
85 | FunctionalOutput createFunctionalOutput(); | ||
86 | |||
87 | /** | ||
88 | * Returns the package supported by this factory. | ||
89 | * <!-- begin-user-doc --> | ||
90 | * <!-- end-user-doc --> | ||
91 | * @return the package supported by this factory. | ||
92 | * @generated | ||
93 | */ | ||
94 | famPackage getfamPackage(); | ||
95 | |||
96 | } //famFactory | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/famPackage.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/famPackage.java new file mode 100644 index 00000000..9b876f8b --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/famPackage.java | |||
@@ -0,0 +1,1032 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EAttribute; | ||
6 | import org.eclipse.emf.ecore.EClass; | ||
7 | import org.eclipse.emf.ecore.EEnum; | ||
8 | import org.eclipse.emf.ecore.EPackage; | ||
9 | import org.eclipse.emf.ecore.EReference; | ||
10 | |||
11 | /** | ||
12 | * <!-- begin-user-doc --> | ||
13 | * The <b>Package</b> for the model. | ||
14 | * It contains accessors for the meta objects to represent | ||
15 | * <ul> | ||
16 | * <li>each class,</li> | ||
17 | * <li>each feature of each class,</li> | ||
18 | * <li>each operation of each class,</li> | ||
19 | * <li>each enum,</li> | ||
20 | * <li>and each data type</li> | ||
21 | * </ul> | ||
22 | * <!-- end-user-doc --> | ||
23 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famFactory | ||
24 | * @model kind="package" | ||
25 | * annotation="http://www.eclipse.org/emf/2002/Ecore settingDelegates='org.eclipse.viatra.query.querybasedfeature'" | ||
26 | * @generated | ||
27 | */ | ||
28 | public interface famPackage extends EPackage { | ||
29 | /** | ||
30 | * The package name. | ||
31 | * <!-- begin-user-doc --> | ||
32 | * <!-- end-user-doc --> | ||
33 | * @generated | ||
34 | */ | ||
35 | String eNAME = "fam"; | ||
36 | |||
37 | /** | ||
38 | * The package namespace URI. | ||
39 | * <!-- begin-user-doc --> | ||
40 | * <!-- end-user-doc --> | ||
41 | * @generated | ||
42 | */ | ||
43 | String eNS_URI = "FamMetamodel"; | ||
44 | |||
45 | /** | ||
46 | * The package namespace name. | ||
47 | * <!-- begin-user-doc --> | ||
48 | * <!-- end-user-doc --> | ||
49 | * @generated | ||
50 | */ | ||
51 | String eNS_PREFIX = "fam"; | ||
52 | |||
53 | /** | ||
54 | * The singleton instance of the package. | ||
55 | * <!-- begin-user-doc --> | ||
56 | * <!-- end-user-doc --> | ||
57 | * @generated | ||
58 | */ | ||
59 | famPackage eINSTANCE = ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl.init(); | ||
60 | |||
61 | /** | ||
62 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalElementImpl <em>Functional Element</em>}' class. | ||
63 | * <!-- begin-user-doc --> | ||
64 | * <!-- end-user-doc --> | ||
65 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalElementImpl | ||
66 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalElement() | ||
67 | * @generated | ||
68 | */ | ||
69 | int FUNCTIONAL_ELEMENT = 0; | ||
70 | |||
71 | /** | ||
72 | * The feature id for the '<em><b>Interface</b></em>' containment reference. | ||
73 | * <!-- begin-user-doc --> | ||
74 | * <!-- end-user-doc --> | ||
75 | * @generated | ||
76 | * @ordered | ||
77 | */ | ||
78 | int FUNCTIONAL_ELEMENT__INTERFACE = 0; | ||
79 | |||
80 | /** | ||
81 | * The feature id for the '<em><b>Model</b></em>' reference. | ||
82 | * <!-- begin-user-doc --> | ||
83 | * <!-- end-user-doc --> | ||
84 | * @generated | ||
85 | * @ordered | ||
86 | */ | ||
87 | int FUNCTIONAL_ELEMENT__MODEL = 1; | ||
88 | |||
89 | /** | ||
90 | * The feature id for the '<em><b>Parent</b></em>' container reference. | ||
91 | * <!-- begin-user-doc --> | ||
92 | * <!-- end-user-doc --> | ||
93 | * @generated | ||
94 | * @ordered | ||
95 | */ | ||
96 | int FUNCTIONAL_ELEMENT__PARENT = 2; | ||
97 | |||
98 | /** | ||
99 | * The number of structural features of the '<em>Functional Element</em>' class. | ||
100 | * <!-- begin-user-doc --> | ||
101 | * <!-- end-user-doc --> | ||
102 | * @generated | ||
103 | * @ordered | ||
104 | */ | ||
105 | int FUNCTIONAL_ELEMENT_FEATURE_COUNT = 3; | ||
106 | |||
107 | /** | ||
108 | * The number of operations of the '<em>Functional Element</em>' class. | ||
109 | * <!-- begin-user-doc --> | ||
110 | * <!-- end-user-doc --> | ||
111 | * @generated | ||
112 | * @ordered | ||
113 | */ | ||
114 | int FUNCTIONAL_ELEMENT_OPERATION_COUNT = 0; | ||
115 | |||
116 | /** | ||
117 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalArchitectureModelImpl <em>Functional Architecture Model</em>}' class. | ||
118 | * <!-- begin-user-doc --> | ||
119 | * <!-- end-user-doc --> | ||
120 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalArchitectureModelImpl | ||
121 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalArchitectureModel() | ||
122 | * @generated | ||
123 | */ | ||
124 | int FUNCTIONAL_ARCHITECTURE_MODEL = 1; | ||
125 | |||
126 | /** | ||
127 | * The feature id for the '<em><b>Root Elements</b></em>' containment reference list. | ||
128 | * <!-- begin-user-doc --> | ||
129 | * <!-- end-user-doc --> | ||
130 | * @generated | ||
131 | * @ordered | ||
132 | */ | ||
133 | int FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS = 0; | ||
134 | |||
135 | /** | ||
136 | * The number of structural features of the '<em>Functional Architecture Model</em>' class. | ||
137 | * <!-- begin-user-doc --> | ||
138 | * <!-- end-user-doc --> | ||
139 | * @generated | ||
140 | * @ordered | ||
141 | */ | ||
142 | int FUNCTIONAL_ARCHITECTURE_MODEL_FEATURE_COUNT = 1; | ||
143 | |||
144 | /** | ||
145 | * The number of operations of the '<em>Functional Architecture Model</em>' class. | ||
146 | * <!-- begin-user-doc --> | ||
147 | * <!-- end-user-doc --> | ||
148 | * @generated | ||
149 | * @ordered | ||
150 | */ | ||
151 | int FUNCTIONAL_ARCHITECTURE_MODEL_OPERATION_COUNT = 0; | ||
152 | |||
153 | /** | ||
154 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionImpl <em>Function</em>}' class. | ||
155 | * <!-- begin-user-doc --> | ||
156 | * <!-- end-user-doc --> | ||
157 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionImpl | ||
158 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunction() | ||
159 | * @generated | ||
160 | */ | ||
161 | int FUNCTION = 2; | ||
162 | |||
163 | /** | ||
164 | * The feature id for the '<em><b>Interface</b></em>' containment reference. | ||
165 | * <!-- begin-user-doc --> | ||
166 | * <!-- end-user-doc --> | ||
167 | * @generated | ||
168 | * @ordered | ||
169 | */ | ||
170 | int FUNCTION__INTERFACE = FUNCTIONAL_ELEMENT__INTERFACE; | ||
171 | |||
172 | /** | ||
173 | * The feature id for the '<em><b>Model</b></em>' reference. | ||
174 | * <!-- begin-user-doc --> | ||
175 | * <!-- end-user-doc --> | ||
176 | * @generated | ||
177 | * @ordered | ||
178 | */ | ||
179 | int FUNCTION__MODEL = FUNCTIONAL_ELEMENT__MODEL; | ||
180 | |||
181 | /** | ||
182 | * The feature id for the '<em><b>Parent</b></em>' container reference. | ||
183 | * <!-- begin-user-doc --> | ||
184 | * <!-- end-user-doc --> | ||
185 | * @generated | ||
186 | * @ordered | ||
187 | */ | ||
188 | int FUNCTION__PARENT = FUNCTIONAL_ELEMENT__PARENT; | ||
189 | |||
190 | /** | ||
191 | * The feature id for the '<em><b>Sub Elements</b></em>' containment reference list. | ||
192 | * <!-- begin-user-doc --> | ||
193 | * <!-- end-user-doc --> | ||
194 | * @generated | ||
195 | * @ordered | ||
196 | */ | ||
197 | int FUNCTION__SUB_ELEMENTS = FUNCTIONAL_ELEMENT_FEATURE_COUNT + 0; | ||
198 | |||
199 | /** | ||
200 | * The feature id for the '<em><b>Type</b></em>' attribute. | ||
201 | * <!-- begin-user-doc --> | ||
202 | * <!-- end-user-doc --> | ||
203 | * @generated | ||
204 | * @ordered | ||
205 | */ | ||
206 | int FUNCTION__TYPE = FUNCTIONAL_ELEMENT_FEATURE_COUNT + 1; | ||
207 | |||
208 | /** | ||
209 | * The number of structural features of the '<em>Function</em>' class. | ||
210 | * <!-- begin-user-doc --> | ||
211 | * <!-- end-user-doc --> | ||
212 | * @generated | ||
213 | * @ordered | ||
214 | */ | ||
215 | int FUNCTION_FEATURE_COUNT = FUNCTIONAL_ELEMENT_FEATURE_COUNT + 2; | ||
216 | |||
217 | /** | ||
218 | * The number of operations of the '<em>Function</em>' class. | ||
219 | * <!-- begin-user-doc --> | ||
220 | * <!-- end-user-doc --> | ||
221 | * @generated | ||
222 | * @ordered | ||
223 | */ | ||
224 | int FUNCTION_OPERATION_COUNT = FUNCTIONAL_ELEMENT_OPERATION_COUNT + 0; | ||
225 | |||
226 | /** | ||
227 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FAMTerminatorImpl <em>FAM Terminator</em>}' class. | ||
228 | * <!-- begin-user-doc --> | ||
229 | * <!-- end-user-doc --> | ||
230 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FAMTerminatorImpl | ||
231 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFAMTerminator() | ||
232 | * @generated | ||
233 | */ | ||
234 | int FAM_TERMINATOR = 3; | ||
235 | |||
236 | /** | ||
237 | * The feature id for the '<em><b>Data</b></em>' container reference. | ||
238 | * <!-- begin-user-doc --> | ||
239 | * <!-- end-user-doc --> | ||
240 | * @generated | ||
241 | * @ordered | ||
242 | */ | ||
243 | int FAM_TERMINATOR__DATA = 0; | ||
244 | |||
245 | /** | ||
246 | * The number of structural features of the '<em>FAM Terminator</em>' class. | ||
247 | * <!-- begin-user-doc --> | ||
248 | * <!-- end-user-doc --> | ||
249 | * @generated | ||
250 | * @ordered | ||
251 | */ | ||
252 | int FAM_TERMINATOR_FEATURE_COUNT = 1; | ||
253 | |||
254 | /** | ||
255 | * The number of operations of the '<em>FAM Terminator</em>' class. | ||
256 | * <!-- begin-user-doc --> | ||
257 | * <!-- end-user-doc --> | ||
258 | * @generated | ||
259 | * @ordered | ||
260 | */ | ||
261 | int FAM_TERMINATOR_OPERATION_COUNT = 0; | ||
262 | |||
263 | /** | ||
264 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.InformationLinkImpl <em>Information Link</em>}' class. | ||
265 | * <!-- begin-user-doc --> | ||
266 | * <!-- end-user-doc --> | ||
267 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.InformationLinkImpl | ||
268 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getInformationLink() | ||
269 | * @generated | ||
270 | */ | ||
271 | int INFORMATION_LINK = 4; | ||
272 | |||
273 | /** | ||
274 | * The feature id for the '<em><b>From</b></em>' container reference. | ||
275 | * <!-- begin-user-doc --> | ||
276 | * <!-- end-user-doc --> | ||
277 | * @generated | ||
278 | * @ordered | ||
279 | */ | ||
280 | int INFORMATION_LINK__FROM = 0; | ||
281 | |||
282 | /** | ||
283 | * The feature id for the '<em><b>To</b></em>' reference. | ||
284 | * <!-- begin-user-doc --> | ||
285 | * <!-- end-user-doc --> | ||
286 | * @generated | ||
287 | * @ordered | ||
288 | */ | ||
289 | int INFORMATION_LINK__TO = 1; | ||
290 | |||
291 | /** | ||
292 | * The number of structural features of the '<em>Information Link</em>' class. | ||
293 | * <!-- begin-user-doc --> | ||
294 | * <!-- end-user-doc --> | ||
295 | * @generated | ||
296 | * @ordered | ||
297 | */ | ||
298 | int INFORMATION_LINK_FEATURE_COUNT = 2; | ||
299 | |||
300 | /** | ||
301 | * The number of operations of the '<em>Information Link</em>' class. | ||
302 | * <!-- begin-user-doc --> | ||
303 | * <!-- end-user-doc --> | ||
304 | * @generated | ||
305 | * @ordered | ||
306 | */ | ||
307 | int INFORMATION_LINK_OPERATION_COUNT = 0; | ||
308 | |||
309 | /** | ||
310 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInterfaceImpl <em>Functional Interface</em>}' class. | ||
311 | * <!-- begin-user-doc --> | ||
312 | * <!-- end-user-doc --> | ||
313 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInterfaceImpl | ||
314 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalInterface() | ||
315 | * @generated | ||
316 | */ | ||
317 | int FUNCTIONAL_INTERFACE = 5; | ||
318 | |||
319 | /** | ||
320 | * The feature id for the '<em><b>Data</b></em>' containment reference list. | ||
321 | * <!-- begin-user-doc --> | ||
322 | * <!-- end-user-doc --> | ||
323 | * @generated | ||
324 | * @ordered | ||
325 | */ | ||
326 | int FUNCTIONAL_INTERFACE__DATA = 0; | ||
327 | |||
328 | /** | ||
329 | * The feature id for the '<em><b>Element</b></em>' container reference. | ||
330 | * <!-- begin-user-doc --> | ||
331 | * <!-- end-user-doc --> | ||
332 | * @generated | ||
333 | * @ordered | ||
334 | */ | ||
335 | int FUNCTIONAL_INTERFACE__ELEMENT = 1; | ||
336 | |||
337 | /** | ||
338 | * The number of structural features of the '<em>Functional Interface</em>' class. | ||
339 | * <!-- begin-user-doc --> | ||
340 | * <!-- end-user-doc --> | ||
341 | * @generated | ||
342 | * @ordered | ||
343 | */ | ||
344 | int FUNCTIONAL_INTERFACE_FEATURE_COUNT = 2; | ||
345 | |||
346 | /** | ||
347 | * The number of operations of the '<em>Functional Interface</em>' class. | ||
348 | * <!-- begin-user-doc --> | ||
349 | * <!-- end-user-doc --> | ||
350 | * @generated | ||
351 | * @ordered | ||
352 | */ | ||
353 | int FUNCTIONAL_INTERFACE_OPERATION_COUNT = 0; | ||
354 | |||
355 | /** | ||
356 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalDataImpl <em>Functional Data</em>}' class. | ||
357 | * <!-- begin-user-doc --> | ||
358 | * <!-- end-user-doc --> | ||
359 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalDataImpl | ||
360 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalData() | ||
361 | * @generated | ||
362 | */ | ||
363 | int FUNCTIONAL_DATA = 8; | ||
364 | |||
365 | /** | ||
366 | * The feature id for the '<em><b>Terminator</b></em>' containment reference. | ||
367 | * <!-- begin-user-doc --> | ||
368 | * <!-- end-user-doc --> | ||
369 | * @generated | ||
370 | * @ordered | ||
371 | */ | ||
372 | int FUNCTIONAL_DATA__TERMINATOR = 0; | ||
373 | |||
374 | /** | ||
375 | * The feature id for the '<em><b>Interface</b></em>' container reference. | ||
376 | * <!-- begin-user-doc --> | ||
377 | * <!-- end-user-doc --> | ||
378 | * @generated | ||
379 | * @ordered | ||
380 | */ | ||
381 | int FUNCTIONAL_DATA__INTERFACE = 1; | ||
382 | |||
383 | /** | ||
384 | * The number of structural features of the '<em>Functional Data</em>' class. | ||
385 | * <!-- begin-user-doc --> | ||
386 | * <!-- end-user-doc --> | ||
387 | * @generated | ||
388 | * @ordered | ||
389 | */ | ||
390 | int FUNCTIONAL_DATA_FEATURE_COUNT = 2; | ||
391 | |||
392 | /** | ||
393 | * The number of operations of the '<em>Functional Data</em>' class. | ||
394 | * <!-- begin-user-doc --> | ||
395 | * <!-- end-user-doc --> | ||
396 | * @generated | ||
397 | * @ordered | ||
398 | */ | ||
399 | int FUNCTIONAL_DATA_OPERATION_COUNT = 0; | ||
400 | |||
401 | /** | ||
402 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInputImpl <em>Functional Input</em>}' class. | ||
403 | * <!-- begin-user-doc --> | ||
404 | * <!-- end-user-doc --> | ||
405 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInputImpl | ||
406 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalInput() | ||
407 | * @generated | ||
408 | */ | ||
409 | int FUNCTIONAL_INPUT = 6; | ||
410 | |||
411 | /** | ||
412 | * The feature id for the '<em><b>Terminator</b></em>' containment reference. | ||
413 | * <!-- begin-user-doc --> | ||
414 | * <!-- end-user-doc --> | ||
415 | * @generated | ||
416 | * @ordered | ||
417 | */ | ||
418 | int FUNCTIONAL_INPUT__TERMINATOR = FUNCTIONAL_DATA__TERMINATOR; | ||
419 | |||
420 | /** | ||
421 | * The feature id for the '<em><b>Interface</b></em>' container reference. | ||
422 | * <!-- begin-user-doc --> | ||
423 | * <!-- end-user-doc --> | ||
424 | * @generated | ||
425 | * @ordered | ||
426 | */ | ||
427 | int FUNCTIONAL_INPUT__INTERFACE = FUNCTIONAL_DATA__INTERFACE; | ||
428 | |||
429 | /** | ||
430 | * The feature id for the '<em><b>Incoming Links</b></em>' reference list. | ||
431 | * <!-- begin-user-doc --> | ||
432 | * <!-- end-user-doc --> | ||
433 | * @generated | ||
434 | * @ordered | ||
435 | */ | ||
436 | int FUNCTIONAL_INPUT__INCOMING_LINKS = FUNCTIONAL_DATA_FEATURE_COUNT + 0; | ||
437 | |||
438 | /** | ||
439 | * The number of structural features of the '<em>Functional Input</em>' class. | ||
440 | * <!-- begin-user-doc --> | ||
441 | * <!-- end-user-doc --> | ||
442 | * @generated | ||
443 | * @ordered | ||
444 | */ | ||
445 | int FUNCTIONAL_INPUT_FEATURE_COUNT = FUNCTIONAL_DATA_FEATURE_COUNT + 1; | ||
446 | |||
447 | /** | ||
448 | * The number of operations of the '<em>Functional Input</em>' class. | ||
449 | * <!-- begin-user-doc --> | ||
450 | * <!-- end-user-doc --> | ||
451 | * @generated | ||
452 | * @ordered | ||
453 | */ | ||
454 | int FUNCTIONAL_INPUT_OPERATION_COUNT = FUNCTIONAL_DATA_OPERATION_COUNT + 0; | ||
455 | |||
456 | /** | ||
457 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalOutputImpl <em>Functional Output</em>}' class. | ||
458 | * <!-- begin-user-doc --> | ||
459 | * <!-- end-user-doc --> | ||
460 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalOutputImpl | ||
461 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalOutput() | ||
462 | * @generated | ||
463 | */ | ||
464 | int FUNCTIONAL_OUTPUT = 7; | ||
465 | |||
466 | /** | ||
467 | * The feature id for the '<em><b>Terminator</b></em>' containment reference. | ||
468 | * <!-- begin-user-doc --> | ||
469 | * <!-- end-user-doc --> | ||
470 | * @generated | ||
471 | * @ordered | ||
472 | */ | ||
473 | int FUNCTIONAL_OUTPUT__TERMINATOR = FUNCTIONAL_DATA__TERMINATOR; | ||
474 | |||
475 | /** | ||
476 | * The feature id for the '<em><b>Interface</b></em>' container reference. | ||
477 | * <!-- begin-user-doc --> | ||
478 | * <!-- end-user-doc --> | ||
479 | * @generated | ||
480 | * @ordered | ||
481 | */ | ||
482 | int FUNCTIONAL_OUTPUT__INTERFACE = FUNCTIONAL_DATA__INTERFACE; | ||
483 | |||
484 | /** | ||
485 | * The feature id for the '<em><b>Outgoing Links</b></em>' containment reference list. | ||
486 | * <!-- begin-user-doc --> | ||
487 | * <!-- end-user-doc --> | ||
488 | * @generated | ||
489 | * @ordered | ||
490 | */ | ||
491 | int FUNCTIONAL_OUTPUT__OUTGOING_LINKS = FUNCTIONAL_DATA_FEATURE_COUNT + 0; | ||
492 | |||
493 | /** | ||
494 | * The number of structural features of the '<em>Functional Output</em>' class. | ||
495 | * <!-- begin-user-doc --> | ||
496 | * <!-- end-user-doc --> | ||
497 | * @generated | ||
498 | * @ordered | ||
499 | */ | ||
500 | int FUNCTIONAL_OUTPUT_FEATURE_COUNT = FUNCTIONAL_DATA_FEATURE_COUNT + 1; | ||
501 | |||
502 | /** | ||
503 | * The number of operations of the '<em>Functional Output</em>' class. | ||
504 | * <!-- begin-user-doc --> | ||
505 | * <!-- end-user-doc --> | ||
506 | * @generated | ||
507 | * @ordered | ||
508 | */ | ||
509 | int FUNCTIONAL_OUTPUT_OPERATION_COUNT = FUNCTIONAL_DATA_OPERATION_COUNT + 0; | ||
510 | |||
511 | /** | ||
512 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType <em>Function Type</em>}' enum. | ||
513 | * <!-- begin-user-doc --> | ||
514 | * <!-- end-user-doc --> | ||
515 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType | ||
516 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionType() | ||
517 | * @generated | ||
518 | */ | ||
519 | int FUNCTION_TYPE = 9; | ||
520 | |||
521 | |||
522 | /** | ||
523 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement <em>Functional Element</em>}'. | ||
524 | * <!-- begin-user-doc --> | ||
525 | * <!-- end-user-doc --> | ||
526 | * @return the meta object for class '<em>Functional Element</em>'. | ||
527 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement | ||
528 | * @generated | ||
529 | */ | ||
530 | EClass getFunctionalElement(); | ||
531 | |||
532 | /** | ||
533 | * Returns the meta object for the containment reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getInterface <em>Interface</em>}'. | ||
534 | * <!-- begin-user-doc --> | ||
535 | * <!-- end-user-doc --> | ||
536 | * @return the meta object for the containment reference '<em>Interface</em>'. | ||
537 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getInterface() | ||
538 | * @see #getFunctionalElement() | ||
539 | * @generated | ||
540 | */ | ||
541 | EReference getFunctionalElement_Interface(); | ||
542 | |||
543 | /** | ||
544 | * Returns the meta object for the reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getModel <em>Model</em>}'. | ||
545 | * <!-- begin-user-doc --> | ||
546 | * <!-- end-user-doc --> | ||
547 | * @return the meta object for the reference '<em>Model</em>'. | ||
548 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getModel() | ||
549 | * @see #getFunctionalElement() | ||
550 | * @generated | ||
551 | */ | ||
552 | EReference getFunctionalElement_Model(); | ||
553 | |||
554 | /** | ||
555 | * Returns the meta object for the container reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getParent <em>Parent</em>}'. | ||
556 | * <!-- begin-user-doc --> | ||
557 | * <!-- end-user-doc --> | ||
558 | * @return the meta object for the container reference '<em>Parent</em>'. | ||
559 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement#getParent() | ||
560 | * @see #getFunctionalElement() | ||
561 | * @generated | ||
562 | */ | ||
563 | EReference getFunctionalElement_Parent(); | ||
564 | |||
565 | /** | ||
566 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel <em>Functional Architecture Model</em>}'. | ||
567 | * <!-- begin-user-doc --> | ||
568 | * <!-- end-user-doc --> | ||
569 | * @return the meta object for class '<em>Functional Architecture Model</em>'. | ||
570 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel | ||
571 | * @generated | ||
572 | */ | ||
573 | EClass getFunctionalArchitectureModel(); | ||
574 | |||
575 | /** | ||
576 | * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel#getRootElements <em>Root Elements</em>}'. | ||
577 | * <!-- begin-user-doc --> | ||
578 | * <!-- end-user-doc --> | ||
579 | * @return the meta object for the containment reference list '<em>Root Elements</em>'. | ||
580 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel#getRootElements() | ||
581 | * @see #getFunctionalArchitectureModel() | ||
582 | * @generated | ||
583 | */ | ||
584 | EReference getFunctionalArchitectureModel_RootElements(); | ||
585 | |||
586 | /** | ||
587 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function <em>Function</em>}'. | ||
588 | * <!-- begin-user-doc --> | ||
589 | * <!-- end-user-doc --> | ||
590 | * @return the meta object for class '<em>Function</em>'. | ||
591 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function | ||
592 | * @generated | ||
593 | */ | ||
594 | EClass getFunction(); | ||
595 | |||
596 | /** | ||
597 | * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function#getSubElements <em>Sub Elements</em>}'. | ||
598 | * <!-- begin-user-doc --> | ||
599 | * <!-- end-user-doc --> | ||
600 | * @return the meta object for the containment reference list '<em>Sub Elements</em>'. | ||
601 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function#getSubElements() | ||
602 | * @see #getFunction() | ||
603 | * @generated | ||
604 | */ | ||
605 | EReference getFunction_SubElements(); | ||
606 | |||
607 | /** | ||
608 | * Returns the meta object for the attribute '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function#getType <em>Type</em>}'. | ||
609 | * <!-- begin-user-doc --> | ||
610 | * <!-- end-user-doc --> | ||
611 | * @return the meta object for the attribute '<em>Type</em>'. | ||
612 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function#getType() | ||
613 | * @see #getFunction() | ||
614 | * @generated | ||
615 | */ | ||
616 | EAttribute getFunction_Type(); | ||
617 | |||
618 | /** | ||
619 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator <em>FAM Terminator</em>}'. | ||
620 | * <!-- begin-user-doc --> | ||
621 | * <!-- end-user-doc --> | ||
622 | * @return the meta object for class '<em>FAM Terminator</em>'. | ||
623 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator | ||
624 | * @generated | ||
625 | */ | ||
626 | EClass getFAMTerminator(); | ||
627 | |||
628 | /** | ||
629 | * Returns the meta object for the container reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator#getData <em>Data</em>}'. | ||
630 | * <!-- begin-user-doc --> | ||
631 | * <!-- end-user-doc --> | ||
632 | * @return the meta object for the container reference '<em>Data</em>'. | ||
633 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator#getData() | ||
634 | * @see #getFAMTerminator() | ||
635 | * @generated | ||
636 | */ | ||
637 | EReference getFAMTerminator_Data(); | ||
638 | |||
639 | /** | ||
640 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink <em>Information Link</em>}'. | ||
641 | * <!-- begin-user-doc --> | ||
642 | * <!-- end-user-doc --> | ||
643 | * @return the meta object for class '<em>Information Link</em>'. | ||
644 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink | ||
645 | * @generated | ||
646 | */ | ||
647 | EClass getInformationLink(); | ||
648 | |||
649 | /** | ||
650 | * Returns the meta object for the container reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getFrom <em>From</em>}'. | ||
651 | * <!-- begin-user-doc --> | ||
652 | * <!-- end-user-doc --> | ||
653 | * @return the meta object for the container reference '<em>From</em>'. | ||
654 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getFrom() | ||
655 | * @see #getInformationLink() | ||
656 | * @generated | ||
657 | */ | ||
658 | EReference getInformationLink_From(); | ||
659 | |||
660 | /** | ||
661 | * Returns the meta object for the reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getTo <em>To</em>}'. | ||
662 | * <!-- begin-user-doc --> | ||
663 | * <!-- end-user-doc --> | ||
664 | * @return the meta object for the reference '<em>To</em>'. | ||
665 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink#getTo() | ||
666 | * @see #getInformationLink() | ||
667 | * @generated | ||
668 | */ | ||
669 | EReference getInformationLink_To(); | ||
670 | |||
671 | /** | ||
672 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface <em>Functional Interface</em>}'. | ||
673 | * <!-- begin-user-doc --> | ||
674 | * <!-- end-user-doc --> | ||
675 | * @return the meta object for class '<em>Functional Interface</em>'. | ||
676 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface | ||
677 | * @generated | ||
678 | */ | ||
679 | EClass getFunctionalInterface(); | ||
680 | |||
681 | /** | ||
682 | * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getData <em>Data</em>}'. | ||
683 | * <!-- begin-user-doc --> | ||
684 | * <!-- end-user-doc --> | ||
685 | * @return the meta object for the containment reference list '<em>Data</em>'. | ||
686 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getData() | ||
687 | * @see #getFunctionalInterface() | ||
688 | * @generated | ||
689 | */ | ||
690 | EReference getFunctionalInterface_Data(); | ||
691 | |||
692 | /** | ||
693 | * Returns the meta object for the container reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getElement <em>Element</em>}'. | ||
694 | * <!-- begin-user-doc --> | ||
695 | * <!-- end-user-doc --> | ||
696 | * @return the meta object for the container reference '<em>Element</em>'. | ||
697 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface#getElement() | ||
698 | * @see #getFunctionalInterface() | ||
699 | * @generated | ||
700 | */ | ||
701 | EReference getFunctionalInterface_Element(); | ||
702 | |||
703 | /** | ||
704 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput <em>Functional Input</em>}'. | ||
705 | * <!-- begin-user-doc --> | ||
706 | * <!-- end-user-doc --> | ||
707 | * @return the meta object for class '<em>Functional Input</em>'. | ||
708 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput | ||
709 | * @generated | ||
710 | */ | ||
711 | EClass getFunctionalInput(); | ||
712 | |||
713 | /** | ||
714 | * Returns the meta object for the reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput#getIncomingLinks <em>Incoming Links</em>}'. | ||
715 | * <!-- begin-user-doc --> | ||
716 | * <!-- end-user-doc --> | ||
717 | * @return the meta object for the reference list '<em>Incoming Links</em>'. | ||
718 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput#getIncomingLinks() | ||
719 | * @see #getFunctionalInput() | ||
720 | * @generated | ||
721 | */ | ||
722 | EReference getFunctionalInput_IncomingLinks(); | ||
723 | |||
724 | /** | ||
725 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput <em>Functional Output</em>}'. | ||
726 | * <!-- begin-user-doc --> | ||
727 | * <!-- end-user-doc --> | ||
728 | * @return the meta object for class '<em>Functional Output</em>'. | ||
729 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput | ||
730 | * @generated | ||
731 | */ | ||
732 | EClass getFunctionalOutput(); | ||
733 | |||
734 | /** | ||
735 | * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput#getOutgoingLinks <em>Outgoing Links</em>}'. | ||
736 | * <!-- begin-user-doc --> | ||
737 | * <!-- end-user-doc --> | ||
738 | * @return the meta object for the containment reference list '<em>Outgoing Links</em>'. | ||
739 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput#getOutgoingLinks() | ||
740 | * @see #getFunctionalOutput() | ||
741 | * @generated | ||
742 | */ | ||
743 | EReference getFunctionalOutput_OutgoingLinks(); | ||
744 | |||
745 | /** | ||
746 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData <em>Functional Data</em>}'. | ||
747 | * <!-- begin-user-doc --> | ||
748 | * <!-- end-user-doc --> | ||
749 | * @return the meta object for class '<em>Functional Data</em>'. | ||
750 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData | ||
751 | * @generated | ||
752 | */ | ||
753 | EClass getFunctionalData(); | ||
754 | |||
755 | /** | ||
756 | * Returns the meta object for the containment reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getTerminator <em>Terminator</em>}'. | ||
757 | * <!-- begin-user-doc --> | ||
758 | * <!-- end-user-doc --> | ||
759 | * @return the meta object for the containment reference '<em>Terminator</em>'. | ||
760 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getTerminator() | ||
761 | * @see #getFunctionalData() | ||
762 | * @generated | ||
763 | */ | ||
764 | EReference getFunctionalData_Terminator(); | ||
765 | |||
766 | /** | ||
767 | * Returns the meta object for the container reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getInterface <em>Interface</em>}'. | ||
768 | * <!-- begin-user-doc --> | ||
769 | * <!-- end-user-doc --> | ||
770 | * @return the meta object for the container reference '<em>Interface</em>'. | ||
771 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData#getInterface() | ||
772 | * @see #getFunctionalData() | ||
773 | * @generated | ||
774 | */ | ||
775 | EReference getFunctionalData_Interface(); | ||
776 | |||
777 | /** | ||
778 | * Returns the meta object for enum '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType <em>Function Type</em>}'. | ||
779 | * <!-- begin-user-doc --> | ||
780 | * <!-- end-user-doc --> | ||
781 | * @return the meta object for enum '<em>Function Type</em>'. | ||
782 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType | ||
783 | * @generated | ||
784 | */ | ||
785 | EEnum getFunctionType(); | ||
786 | |||
787 | /** | ||
788 | * Returns the factory that creates the instances of the model. | ||
789 | * <!-- begin-user-doc --> | ||
790 | * <!-- end-user-doc --> | ||
791 | * @return the factory that creates the instances of the model. | ||
792 | * @generated | ||
793 | */ | ||
794 | famFactory getfamFactory(); | ||
795 | |||
796 | /** | ||
797 | * <!-- begin-user-doc --> | ||
798 | * Defines literals for the meta objects that represent | ||
799 | * <ul> | ||
800 | * <li>each class,</li> | ||
801 | * <li>each feature of each class,</li> | ||
802 | * <li>each operation of each class,</li> | ||
803 | * <li>each enum,</li> | ||
804 | * <li>and each data type</li> | ||
805 | * </ul> | ||
806 | * <!-- end-user-doc --> | ||
807 | * @generated | ||
808 | */ | ||
809 | interface Literals { | ||
810 | /** | ||
811 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalElementImpl <em>Functional Element</em>}' class. | ||
812 | * <!-- begin-user-doc --> | ||
813 | * <!-- end-user-doc --> | ||
814 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalElementImpl | ||
815 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalElement() | ||
816 | * @generated | ||
817 | */ | ||
818 | EClass FUNCTIONAL_ELEMENT = eINSTANCE.getFunctionalElement(); | ||
819 | |||
820 | /** | ||
821 | * The meta object literal for the '<em><b>Interface</b></em>' containment reference feature. | ||
822 | * <!-- begin-user-doc --> | ||
823 | * <!-- end-user-doc --> | ||
824 | * @generated | ||
825 | */ | ||
826 | EReference FUNCTIONAL_ELEMENT__INTERFACE = eINSTANCE.getFunctionalElement_Interface(); | ||
827 | |||
828 | /** | ||
829 | * The meta object literal for the '<em><b>Model</b></em>' reference feature. | ||
830 | * <!-- begin-user-doc --> | ||
831 | * <!-- end-user-doc --> | ||
832 | * @generated | ||
833 | */ | ||
834 | EReference FUNCTIONAL_ELEMENT__MODEL = eINSTANCE.getFunctionalElement_Model(); | ||
835 | |||
836 | /** | ||
837 | * The meta object literal for the '<em><b>Parent</b></em>' container reference feature. | ||
838 | * <!-- begin-user-doc --> | ||
839 | * <!-- end-user-doc --> | ||
840 | * @generated | ||
841 | */ | ||
842 | EReference FUNCTIONAL_ELEMENT__PARENT = eINSTANCE.getFunctionalElement_Parent(); | ||
843 | |||
844 | /** | ||
845 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalArchitectureModelImpl <em>Functional Architecture Model</em>}' class. | ||
846 | * <!-- begin-user-doc --> | ||
847 | * <!-- end-user-doc --> | ||
848 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalArchitectureModelImpl | ||
849 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalArchitectureModel() | ||
850 | * @generated | ||
851 | */ | ||
852 | EClass FUNCTIONAL_ARCHITECTURE_MODEL = eINSTANCE.getFunctionalArchitectureModel(); | ||
853 | |||
854 | /** | ||
855 | * The meta object literal for the '<em><b>Root Elements</b></em>' containment reference list feature. | ||
856 | * <!-- begin-user-doc --> | ||
857 | * <!-- end-user-doc --> | ||
858 | * @generated | ||
859 | */ | ||
860 | EReference FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS = eINSTANCE.getFunctionalArchitectureModel_RootElements(); | ||
861 | |||
862 | /** | ||
863 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionImpl <em>Function</em>}' class. | ||
864 | * <!-- begin-user-doc --> | ||
865 | * <!-- end-user-doc --> | ||
866 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionImpl | ||
867 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunction() | ||
868 | * @generated | ||
869 | */ | ||
870 | EClass FUNCTION = eINSTANCE.getFunction(); | ||
871 | |||
872 | /** | ||
873 | * The meta object literal for the '<em><b>Sub Elements</b></em>' containment reference list feature. | ||
874 | * <!-- begin-user-doc --> | ||
875 | * <!-- end-user-doc --> | ||
876 | * @generated | ||
877 | */ | ||
878 | EReference FUNCTION__SUB_ELEMENTS = eINSTANCE.getFunction_SubElements(); | ||
879 | |||
880 | /** | ||
881 | * The meta object literal for the '<em><b>Type</b></em>' attribute feature. | ||
882 | * <!-- begin-user-doc --> | ||
883 | * <!-- end-user-doc --> | ||
884 | * @generated | ||
885 | */ | ||
886 | EAttribute FUNCTION__TYPE = eINSTANCE.getFunction_Type(); | ||
887 | |||
888 | /** | ||
889 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FAMTerminatorImpl <em>FAM Terminator</em>}' class. | ||
890 | * <!-- begin-user-doc --> | ||
891 | * <!-- end-user-doc --> | ||
892 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FAMTerminatorImpl | ||
893 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFAMTerminator() | ||
894 | * @generated | ||
895 | */ | ||
896 | EClass FAM_TERMINATOR = eINSTANCE.getFAMTerminator(); | ||
897 | |||
898 | /** | ||
899 | * The meta object literal for the '<em><b>Data</b></em>' container reference feature. | ||
900 | * <!-- begin-user-doc --> | ||
901 | * <!-- end-user-doc --> | ||
902 | * @generated | ||
903 | */ | ||
904 | EReference FAM_TERMINATOR__DATA = eINSTANCE.getFAMTerminator_Data(); | ||
905 | |||
906 | /** | ||
907 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.InformationLinkImpl <em>Information Link</em>}' class. | ||
908 | * <!-- begin-user-doc --> | ||
909 | * <!-- end-user-doc --> | ||
910 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.InformationLinkImpl | ||
911 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getInformationLink() | ||
912 | * @generated | ||
913 | */ | ||
914 | EClass INFORMATION_LINK = eINSTANCE.getInformationLink(); | ||
915 | |||
916 | /** | ||
917 | * The meta object literal for the '<em><b>From</b></em>' container reference feature. | ||
918 | * <!-- begin-user-doc --> | ||
919 | * <!-- end-user-doc --> | ||
920 | * @generated | ||
921 | */ | ||
922 | EReference INFORMATION_LINK__FROM = eINSTANCE.getInformationLink_From(); | ||
923 | |||
924 | /** | ||
925 | * The meta object literal for the '<em><b>To</b></em>' reference feature. | ||
926 | * <!-- begin-user-doc --> | ||
927 | * <!-- end-user-doc --> | ||
928 | * @generated | ||
929 | */ | ||
930 | EReference INFORMATION_LINK__TO = eINSTANCE.getInformationLink_To(); | ||
931 | |||
932 | /** | ||
933 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInterfaceImpl <em>Functional Interface</em>}' class. | ||
934 | * <!-- begin-user-doc --> | ||
935 | * <!-- end-user-doc --> | ||
936 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInterfaceImpl | ||
937 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalInterface() | ||
938 | * @generated | ||
939 | */ | ||
940 | EClass FUNCTIONAL_INTERFACE = eINSTANCE.getFunctionalInterface(); | ||
941 | |||
942 | /** | ||
943 | * The meta object literal for the '<em><b>Data</b></em>' containment reference list feature. | ||
944 | * <!-- begin-user-doc --> | ||
945 | * <!-- end-user-doc --> | ||
946 | * @generated | ||
947 | */ | ||
948 | EReference FUNCTIONAL_INTERFACE__DATA = eINSTANCE.getFunctionalInterface_Data(); | ||
949 | |||
950 | /** | ||
951 | * The meta object literal for the '<em><b>Element</b></em>' container reference feature. | ||
952 | * <!-- begin-user-doc --> | ||
953 | * <!-- end-user-doc --> | ||
954 | * @generated | ||
955 | */ | ||
956 | EReference FUNCTIONAL_INTERFACE__ELEMENT = eINSTANCE.getFunctionalInterface_Element(); | ||
957 | |||
958 | /** | ||
959 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInputImpl <em>Functional Input</em>}' class. | ||
960 | * <!-- begin-user-doc --> | ||
961 | * <!-- end-user-doc --> | ||
962 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInputImpl | ||
963 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalInput() | ||
964 | * @generated | ||
965 | */ | ||
966 | EClass FUNCTIONAL_INPUT = eINSTANCE.getFunctionalInput(); | ||
967 | |||
968 | /** | ||
969 | * The meta object literal for the '<em><b>Incoming Links</b></em>' reference list feature. | ||
970 | * <!-- begin-user-doc --> | ||
971 | * <!-- end-user-doc --> | ||
972 | * @generated | ||
973 | */ | ||
974 | EReference FUNCTIONAL_INPUT__INCOMING_LINKS = eINSTANCE.getFunctionalInput_IncomingLinks(); | ||
975 | |||
976 | /** | ||
977 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalOutputImpl <em>Functional Output</em>}' class. | ||
978 | * <!-- begin-user-doc --> | ||
979 | * <!-- end-user-doc --> | ||
980 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalOutputImpl | ||
981 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalOutput() | ||
982 | * @generated | ||
983 | */ | ||
984 | EClass FUNCTIONAL_OUTPUT = eINSTANCE.getFunctionalOutput(); | ||
985 | |||
986 | /** | ||
987 | * The meta object literal for the '<em><b>Outgoing Links</b></em>' containment reference list feature. | ||
988 | * <!-- begin-user-doc --> | ||
989 | * <!-- end-user-doc --> | ||
990 | * @generated | ||
991 | */ | ||
992 | EReference FUNCTIONAL_OUTPUT__OUTGOING_LINKS = eINSTANCE.getFunctionalOutput_OutgoingLinks(); | ||
993 | |||
994 | /** | ||
995 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalDataImpl <em>Functional Data</em>}' class. | ||
996 | * <!-- begin-user-doc --> | ||
997 | * <!-- end-user-doc --> | ||
998 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalDataImpl | ||
999 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionalData() | ||
1000 | * @generated | ||
1001 | */ | ||
1002 | EClass FUNCTIONAL_DATA = eINSTANCE.getFunctionalData(); | ||
1003 | |||
1004 | /** | ||
1005 | * The meta object literal for the '<em><b>Terminator</b></em>' containment reference feature. | ||
1006 | * <!-- begin-user-doc --> | ||
1007 | * <!-- end-user-doc --> | ||
1008 | * @generated | ||
1009 | */ | ||
1010 | EReference FUNCTIONAL_DATA__TERMINATOR = eINSTANCE.getFunctionalData_Terminator(); | ||
1011 | |||
1012 | /** | ||
1013 | * The meta object literal for the '<em><b>Interface</b></em>' container reference feature. | ||
1014 | * <!-- begin-user-doc --> | ||
1015 | * <!-- end-user-doc --> | ||
1016 | * @generated | ||
1017 | */ | ||
1018 | EReference FUNCTIONAL_DATA__INTERFACE = eINSTANCE.getFunctionalData_Interface(); | ||
1019 | |||
1020 | /** | ||
1021 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType <em>Function Type</em>}' enum. | ||
1022 | * <!-- begin-user-doc --> | ||
1023 | * <!-- end-user-doc --> | ||
1024 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType | ||
1025 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.famPackageImpl#getFunctionType() | ||
1026 | * @generated | ||
1027 | */ | ||
1028 | EEnum FUNCTION_TYPE = eINSTANCE.getFunctionType(); | ||
1029 | |||
1030 | } | ||
1031 | |||
1032 | } //famPackage | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FAMTerminatorImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FAMTerminatorImpl.java new file mode 100644 index 00000000..6eba60f6 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FAMTerminatorImpl.java | |||
@@ -0,0 +1,196 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
8 | |||
9 | import org.eclipse.emf.common.notify.Notification; | ||
10 | import org.eclipse.emf.common.notify.NotificationChain; | ||
11 | |||
12 | import org.eclipse.emf.ecore.EClass; | ||
13 | import org.eclipse.emf.ecore.InternalEObject; | ||
14 | |||
15 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
16 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
17 | |||
18 | import org.eclipse.emf.ecore.util.EcoreUtil; | ||
19 | |||
20 | /** | ||
21 | * <!-- begin-user-doc --> | ||
22 | * An implementation of the model object '<em><b>FAM Terminator</b></em>'. | ||
23 | * <!-- end-user-doc --> | ||
24 | * <p> | ||
25 | * The following features are implemented: | ||
26 | * </p> | ||
27 | * <ul> | ||
28 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FAMTerminatorImpl#getData <em>Data</em>}</li> | ||
29 | * </ul> | ||
30 | * | ||
31 | * @generated | ||
32 | */ | ||
33 | public class FAMTerminatorImpl extends MinimalEObjectImpl.Container implements FAMTerminator { | ||
34 | /** | ||
35 | * <!-- begin-user-doc --> | ||
36 | * <!-- end-user-doc --> | ||
37 | * @generated | ||
38 | */ | ||
39 | protected FAMTerminatorImpl() { | ||
40 | super(); | ||
41 | } | ||
42 | |||
43 | /** | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @generated | ||
47 | */ | ||
48 | @Override | ||
49 | protected EClass eStaticClass() { | ||
50 | return famPackage.Literals.FAM_TERMINATOR; | ||
51 | } | ||
52 | |||
53 | /** | ||
54 | * <!-- begin-user-doc --> | ||
55 | * <!-- end-user-doc --> | ||
56 | * @generated | ||
57 | */ | ||
58 | public FunctionalData getData() { | ||
59 | if (eContainerFeatureID() != famPackage.FAM_TERMINATOR__DATA) return null; | ||
60 | return (FunctionalData)eInternalContainer(); | ||
61 | } | ||
62 | |||
63 | /** | ||
64 | * <!-- begin-user-doc --> | ||
65 | * <!-- end-user-doc --> | ||
66 | * @generated | ||
67 | */ | ||
68 | public NotificationChain basicSetData(FunctionalData newData, NotificationChain msgs) { | ||
69 | msgs = eBasicSetContainer((InternalEObject)newData, famPackage.FAM_TERMINATOR__DATA, msgs); | ||
70 | return msgs; | ||
71 | } | ||
72 | |||
73 | /** | ||
74 | * <!-- begin-user-doc --> | ||
75 | * <!-- end-user-doc --> | ||
76 | * @generated | ||
77 | */ | ||
78 | public void setData(FunctionalData newData) { | ||
79 | if (newData != eInternalContainer() || (eContainerFeatureID() != famPackage.FAM_TERMINATOR__DATA && newData != null)) { | ||
80 | if (EcoreUtil.isAncestor(this, newData)) | ||
81 | throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); | ||
82 | NotificationChain msgs = null; | ||
83 | if (eInternalContainer() != null) | ||
84 | msgs = eBasicRemoveFromContainer(msgs); | ||
85 | if (newData != null) | ||
86 | msgs = ((InternalEObject)newData).eInverseAdd(this, famPackage.FUNCTIONAL_DATA__TERMINATOR, FunctionalData.class, msgs); | ||
87 | msgs = basicSetData(newData, msgs); | ||
88 | if (msgs != null) msgs.dispatch(); | ||
89 | } | ||
90 | else if (eNotificationRequired()) | ||
91 | eNotify(new ENotificationImpl(this, Notification.SET, famPackage.FAM_TERMINATOR__DATA, newData, newData)); | ||
92 | } | ||
93 | |||
94 | /** | ||
95 | * <!-- begin-user-doc --> | ||
96 | * <!-- end-user-doc --> | ||
97 | * @generated | ||
98 | */ | ||
99 | @Override | ||
100 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
101 | switch (featureID) { | ||
102 | case famPackage.FAM_TERMINATOR__DATA: | ||
103 | if (eInternalContainer() != null) | ||
104 | msgs = eBasicRemoveFromContainer(msgs); | ||
105 | return basicSetData((FunctionalData)otherEnd, msgs); | ||
106 | } | ||
107 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
108 | } | ||
109 | |||
110 | /** | ||
111 | * <!-- begin-user-doc --> | ||
112 | * <!-- end-user-doc --> | ||
113 | * @generated | ||
114 | */ | ||
115 | @Override | ||
116 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
117 | switch (featureID) { | ||
118 | case famPackage.FAM_TERMINATOR__DATA: | ||
119 | return basicSetData(null, msgs); | ||
120 | } | ||
121 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
122 | } | ||
123 | |||
124 | /** | ||
125 | * <!-- begin-user-doc --> | ||
126 | * <!-- end-user-doc --> | ||
127 | * @generated | ||
128 | */ | ||
129 | @Override | ||
130 | public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { | ||
131 | switch (eContainerFeatureID()) { | ||
132 | case famPackage.FAM_TERMINATOR__DATA: | ||
133 | return eInternalContainer().eInverseRemove(this, famPackage.FUNCTIONAL_DATA__TERMINATOR, FunctionalData.class, msgs); | ||
134 | } | ||
135 | return super.eBasicRemoveFromContainerFeature(msgs); | ||
136 | } | ||
137 | |||
138 | /** | ||
139 | * <!-- begin-user-doc --> | ||
140 | * <!-- end-user-doc --> | ||
141 | * @generated | ||
142 | */ | ||
143 | @Override | ||
144 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
145 | switch (featureID) { | ||
146 | case famPackage.FAM_TERMINATOR__DATA: | ||
147 | return getData(); | ||
148 | } | ||
149 | return super.eGet(featureID, resolve, coreType); | ||
150 | } | ||
151 | |||
152 | /** | ||
153 | * <!-- begin-user-doc --> | ||
154 | * <!-- end-user-doc --> | ||
155 | * @generated | ||
156 | */ | ||
157 | @Override | ||
158 | public void eSet(int featureID, Object newValue) { | ||
159 | switch (featureID) { | ||
160 | case famPackage.FAM_TERMINATOR__DATA: | ||
161 | setData((FunctionalData)newValue); | ||
162 | return; | ||
163 | } | ||
164 | super.eSet(featureID, newValue); | ||
165 | } | ||
166 | |||
167 | /** | ||
168 | * <!-- begin-user-doc --> | ||
169 | * <!-- end-user-doc --> | ||
170 | * @generated | ||
171 | */ | ||
172 | @Override | ||
173 | public void eUnset(int featureID) { | ||
174 | switch (featureID) { | ||
175 | case famPackage.FAM_TERMINATOR__DATA: | ||
176 | setData((FunctionalData)null); | ||
177 | return; | ||
178 | } | ||
179 | super.eUnset(featureID); | ||
180 | } | ||
181 | |||
182 | /** | ||
183 | * <!-- begin-user-doc --> | ||
184 | * <!-- end-user-doc --> | ||
185 | * @generated | ||
186 | */ | ||
187 | @Override | ||
188 | public boolean eIsSet(int featureID) { | ||
189 | switch (featureID) { | ||
190 | case famPackage.FAM_TERMINATOR__DATA: | ||
191 | return getData() != null; | ||
192 | } | ||
193 | return super.eIsSet(featureID); | ||
194 | } | ||
195 | |||
196 | } //FAMTerminatorImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionImpl.java new file mode 100644 index 00000000..ec3e884e --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionImpl.java | |||
@@ -0,0 +1,191 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
9 | |||
10 | import java.util.Collection; | ||
11 | |||
12 | import org.eclipse.emf.common.notify.NotificationChain; | ||
13 | |||
14 | import org.eclipse.emf.common.util.EList; | ||
15 | |||
16 | import org.eclipse.emf.ecore.EClass; | ||
17 | import org.eclipse.emf.ecore.EStructuralFeature; | ||
18 | import org.eclipse.emf.ecore.InternalEObject; | ||
19 | |||
20 | import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; | ||
21 | import org.eclipse.emf.ecore.util.InternalEList; | ||
22 | |||
23 | /** | ||
24 | * <!-- begin-user-doc --> | ||
25 | * An implementation of the model object '<em><b>Function</b></em>'. | ||
26 | * <!-- end-user-doc --> | ||
27 | * <p> | ||
28 | * The following features are implemented: | ||
29 | * </p> | ||
30 | * <ul> | ||
31 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionImpl#getSubElements <em>Sub Elements</em>}</li> | ||
32 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionImpl#getType <em>Type</em>}</li> | ||
33 | * </ul> | ||
34 | * | ||
35 | * @generated | ||
36 | */ | ||
37 | public class FunctionImpl extends FunctionalElementImpl implements Function { | ||
38 | /** | ||
39 | * The cached value of the '{@link #getSubElements() <em>Sub Elements</em>}' containment reference list. | ||
40 | * <!-- begin-user-doc --> | ||
41 | * <!-- end-user-doc --> | ||
42 | * @see #getSubElements() | ||
43 | * @generated | ||
44 | * @ordered | ||
45 | */ | ||
46 | protected EList<FunctionalElement> subElements; | ||
47 | |||
48 | /** | ||
49 | * The cached setting delegate for the '{@link #getType() <em>Type</em>}' attribute. | ||
50 | * <!-- begin-user-doc --> | ||
51 | * <!-- end-user-doc --> | ||
52 | * @see #getType() | ||
53 | * @generated | ||
54 | * @ordered | ||
55 | */ | ||
56 | protected EStructuralFeature.Internal.SettingDelegate TYPE__ESETTING_DELEGATE = ((EStructuralFeature.Internal)famPackage.Literals.FUNCTION__TYPE).getSettingDelegate(); | ||
57 | |||
58 | /** | ||
59 | * <!-- begin-user-doc --> | ||
60 | * <!-- end-user-doc --> | ||
61 | * @generated | ||
62 | */ | ||
63 | protected FunctionImpl() { | ||
64 | super(); | ||
65 | } | ||
66 | |||
67 | /** | ||
68 | * <!-- begin-user-doc --> | ||
69 | * <!-- end-user-doc --> | ||
70 | * @generated | ||
71 | */ | ||
72 | @Override | ||
73 | protected EClass eStaticClass() { | ||
74 | return famPackage.Literals.FUNCTION; | ||
75 | } | ||
76 | |||
77 | /** | ||
78 | * <!-- begin-user-doc --> | ||
79 | * <!-- end-user-doc --> | ||
80 | * @generated | ||
81 | */ | ||
82 | public EList<FunctionalElement> getSubElements() { | ||
83 | if (subElements == null) { | ||
84 | subElements = new EObjectContainmentWithInverseEList<FunctionalElement>(FunctionalElement.class, this, famPackage.FUNCTION__SUB_ELEMENTS, famPackage.FUNCTIONAL_ELEMENT__PARENT); | ||
85 | } | ||
86 | return subElements; | ||
87 | } | ||
88 | |||
89 | /** | ||
90 | * <!-- begin-user-doc --> | ||
91 | * <!-- end-user-doc --> | ||
92 | * @generated | ||
93 | */ | ||
94 | public FunctionType getType() { | ||
95 | return (FunctionType)TYPE__ESETTING_DELEGATE.dynamicGet(this, null, 0, true, false); | ||
96 | } | ||
97 | |||
98 | /** | ||
99 | * <!-- begin-user-doc --> | ||
100 | * <!-- end-user-doc --> | ||
101 | * @generated | ||
102 | */ | ||
103 | @SuppressWarnings("unchecked") | ||
104 | @Override | ||
105 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
106 | switch (featureID) { | ||
107 | case famPackage.FUNCTION__SUB_ELEMENTS: | ||
108 | return ((InternalEList<InternalEObject>)(InternalEList<?>)getSubElements()).basicAdd(otherEnd, msgs); | ||
109 | } | ||
110 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
111 | } | ||
112 | |||
113 | /** | ||
114 | * <!-- begin-user-doc --> | ||
115 | * <!-- end-user-doc --> | ||
116 | * @generated | ||
117 | */ | ||
118 | @Override | ||
119 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
120 | switch (featureID) { | ||
121 | case famPackage.FUNCTION__SUB_ELEMENTS: | ||
122 | return ((InternalEList<?>)getSubElements()).basicRemove(otherEnd, msgs); | ||
123 | } | ||
124 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
125 | } | ||
126 | |||
127 | /** | ||
128 | * <!-- begin-user-doc --> | ||
129 | * <!-- end-user-doc --> | ||
130 | * @generated | ||
131 | */ | ||
132 | @Override | ||
133 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
134 | switch (featureID) { | ||
135 | case famPackage.FUNCTION__SUB_ELEMENTS: | ||
136 | return getSubElements(); | ||
137 | case famPackage.FUNCTION__TYPE: | ||
138 | return getType(); | ||
139 | } | ||
140 | return super.eGet(featureID, resolve, coreType); | ||
141 | } | ||
142 | |||
143 | /** | ||
144 | * <!-- begin-user-doc --> | ||
145 | * <!-- end-user-doc --> | ||
146 | * @generated | ||
147 | */ | ||
148 | @SuppressWarnings("unchecked") | ||
149 | @Override | ||
150 | public void eSet(int featureID, Object newValue) { | ||
151 | switch (featureID) { | ||
152 | case famPackage.FUNCTION__SUB_ELEMENTS: | ||
153 | getSubElements().clear(); | ||
154 | getSubElements().addAll((Collection<? extends FunctionalElement>)newValue); | ||
155 | return; | ||
156 | } | ||
157 | super.eSet(featureID, newValue); | ||
158 | } | ||
159 | |||
160 | /** | ||
161 | * <!-- begin-user-doc --> | ||
162 | * <!-- end-user-doc --> | ||
163 | * @generated | ||
164 | */ | ||
165 | @Override | ||
166 | public void eUnset(int featureID) { | ||
167 | switch (featureID) { | ||
168 | case famPackage.FUNCTION__SUB_ELEMENTS: | ||
169 | getSubElements().clear(); | ||
170 | return; | ||
171 | } | ||
172 | super.eUnset(featureID); | ||
173 | } | ||
174 | |||
175 | /** | ||
176 | * <!-- begin-user-doc --> | ||
177 | * <!-- end-user-doc --> | ||
178 | * @generated | ||
179 | */ | ||
180 | @Override | ||
181 | public boolean eIsSet(int featureID) { | ||
182 | switch (featureID) { | ||
183 | case famPackage.FUNCTION__SUB_ELEMENTS: | ||
184 | return subElements != null && !subElements.isEmpty(); | ||
185 | case famPackage.FUNCTION__TYPE: | ||
186 | return TYPE__ESETTING_DELEGATE.dynamicIsSet(this, null, 0); | ||
187 | } | ||
188 | return super.eIsSet(featureID); | ||
189 | } | ||
190 | |||
191 | } //FunctionImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalArchitectureModelImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalArchitectureModelImpl.java new file mode 100644 index 00000000..1b45df44 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalArchitectureModelImpl.java | |||
@@ -0,0 +1,152 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
8 | |||
9 | import java.util.Collection; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.NotificationChain; | ||
12 | |||
13 | import org.eclipse.emf.common.util.EList; | ||
14 | |||
15 | import org.eclipse.emf.ecore.EClass; | ||
16 | import org.eclipse.emf.ecore.InternalEObject; | ||
17 | |||
18 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
19 | |||
20 | import org.eclipse.emf.ecore.util.EObjectContainmentEList; | ||
21 | import org.eclipse.emf.ecore.util.InternalEList; | ||
22 | |||
23 | /** | ||
24 | * <!-- begin-user-doc --> | ||
25 | * An implementation of the model object '<em><b>Functional Architecture Model</b></em>'. | ||
26 | * <!-- end-user-doc --> | ||
27 | * <p> | ||
28 | * The following features are implemented: | ||
29 | * </p> | ||
30 | * <ul> | ||
31 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalArchitectureModelImpl#getRootElements <em>Root Elements</em>}</li> | ||
32 | * </ul> | ||
33 | * | ||
34 | * @generated | ||
35 | */ | ||
36 | public class FunctionalArchitectureModelImpl extends MinimalEObjectImpl.Container implements FunctionalArchitectureModel { | ||
37 | /** | ||
38 | * The cached value of the '{@link #getRootElements() <em>Root Elements</em>}' containment reference list. | ||
39 | * <!-- begin-user-doc --> | ||
40 | * <!-- end-user-doc --> | ||
41 | * @see #getRootElements() | ||
42 | * @generated | ||
43 | * @ordered | ||
44 | */ | ||
45 | protected EList<FunctionalElement> rootElements; | ||
46 | |||
47 | /** | ||
48 | * <!-- begin-user-doc --> | ||
49 | * <!-- end-user-doc --> | ||
50 | * @generated | ||
51 | */ | ||
52 | protected FunctionalArchitectureModelImpl() { | ||
53 | super(); | ||
54 | } | ||
55 | |||
56 | /** | ||
57 | * <!-- begin-user-doc --> | ||
58 | * <!-- end-user-doc --> | ||
59 | * @generated | ||
60 | */ | ||
61 | @Override | ||
62 | protected EClass eStaticClass() { | ||
63 | return famPackage.Literals.FUNCTIONAL_ARCHITECTURE_MODEL; | ||
64 | } | ||
65 | |||
66 | /** | ||
67 | * <!-- begin-user-doc --> | ||
68 | * <!-- end-user-doc --> | ||
69 | * @generated | ||
70 | */ | ||
71 | public EList<FunctionalElement> getRootElements() { | ||
72 | if (rootElements == null) { | ||
73 | rootElements = new EObjectContainmentEList<FunctionalElement>(FunctionalElement.class, this, famPackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS); | ||
74 | } | ||
75 | return rootElements; | ||
76 | } | ||
77 | |||
78 | /** | ||
79 | * <!-- begin-user-doc --> | ||
80 | * <!-- end-user-doc --> | ||
81 | * @generated | ||
82 | */ | ||
83 | @Override | ||
84 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
85 | switch (featureID) { | ||
86 | case famPackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS: | ||
87 | return ((InternalEList<?>)getRootElements()).basicRemove(otherEnd, msgs); | ||
88 | } | ||
89 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
90 | } | ||
91 | |||
92 | /** | ||
93 | * <!-- begin-user-doc --> | ||
94 | * <!-- end-user-doc --> | ||
95 | * @generated | ||
96 | */ | ||
97 | @Override | ||
98 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
99 | switch (featureID) { | ||
100 | case famPackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS: | ||
101 | return getRootElements(); | ||
102 | } | ||
103 | return super.eGet(featureID, resolve, coreType); | ||
104 | } | ||
105 | |||
106 | /** | ||
107 | * <!-- begin-user-doc --> | ||
108 | * <!-- end-user-doc --> | ||
109 | * @generated | ||
110 | */ | ||
111 | @SuppressWarnings("unchecked") | ||
112 | @Override | ||
113 | public void eSet(int featureID, Object newValue) { | ||
114 | switch (featureID) { | ||
115 | case famPackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS: | ||
116 | getRootElements().clear(); | ||
117 | getRootElements().addAll((Collection<? extends FunctionalElement>)newValue); | ||
118 | return; | ||
119 | } | ||
120 | super.eSet(featureID, newValue); | ||
121 | } | ||
122 | |||
123 | /** | ||
124 | * <!-- begin-user-doc --> | ||
125 | * <!-- end-user-doc --> | ||
126 | * @generated | ||
127 | */ | ||
128 | @Override | ||
129 | public void eUnset(int featureID) { | ||
130 | switch (featureID) { | ||
131 | case famPackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS: | ||
132 | getRootElements().clear(); | ||
133 | return; | ||
134 | } | ||
135 | super.eUnset(featureID); | ||
136 | } | ||
137 | |||
138 | /** | ||
139 | * <!-- begin-user-doc --> | ||
140 | * <!-- end-user-doc --> | ||
141 | * @generated | ||
142 | */ | ||
143 | @Override | ||
144 | public boolean eIsSet(int featureID) { | ||
145 | switch (featureID) { | ||
146 | case famPackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS: | ||
147 | return rootElements != null && !rootElements.isEmpty(); | ||
148 | } | ||
149 | return super.eIsSet(featureID); | ||
150 | } | ||
151 | |||
152 | } //FunctionalArchitectureModelImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalDataImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalDataImpl.java new file mode 100644 index 00000000..069d53d4 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalDataImpl.java | |||
@@ -0,0 +1,267 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
9 | |||
10 | import org.eclipse.emf.common.notify.Notification; | ||
11 | import org.eclipse.emf.common.notify.NotificationChain; | ||
12 | |||
13 | import org.eclipse.emf.ecore.EClass; | ||
14 | import org.eclipse.emf.ecore.InternalEObject; | ||
15 | |||
16 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
17 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
18 | |||
19 | import org.eclipse.emf.ecore.util.EcoreUtil; | ||
20 | |||
21 | /** | ||
22 | * <!-- begin-user-doc --> | ||
23 | * An implementation of the model object '<em><b>Functional Data</b></em>'. | ||
24 | * <!-- end-user-doc --> | ||
25 | * <p> | ||
26 | * The following features are implemented: | ||
27 | * </p> | ||
28 | * <ul> | ||
29 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalDataImpl#getTerminator <em>Terminator</em>}</li> | ||
30 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalDataImpl#getInterface <em>Interface</em>}</li> | ||
31 | * </ul> | ||
32 | * | ||
33 | * @generated | ||
34 | */ | ||
35 | public abstract class FunctionalDataImpl extends MinimalEObjectImpl.Container implements FunctionalData { | ||
36 | /** | ||
37 | * The cached value of the '{@link #getTerminator() <em>Terminator</em>}' containment reference. | ||
38 | * <!-- begin-user-doc --> | ||
39 | * <!-- end-user-doc --> | ||
40 | * @see #getTerminator() | ||
41 | * @generated | ||
42 | * @ordered | ||
43 | */ | ||
44 | protected FAMTerminator terminator; | ||
45 | |||
46 | /** | ||
47 | * <!-- begin-user-doc --> | ||
48 | * <!-- end-user-doc --> | ||
49 | * @generated | ||
50 | */ | ||
51 | protected FunctionalDataImpl() { | ||
52 | super(); | ||
53 | } | ||
54 | |||
55 | /** | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <!-- end-user-doc --> | ||
58 | * @generated | ||
59 | */ | ||
60 | @Override | ||
61 | protected EClass eStaticClass() { | ||
62 | return famPackage.Literals.FUNCTIONAL_DATA; | ||
63 | } | ||
64 | |||
65 | /** | ||
66 | * <!-- begin-user-doc --> | ||
67 | * <!-- end-user-doc --> | ||
68 | * @generated | ||
69 | */ | ||
70 | public FAMTerminator getTerminator() { | ||
71 | return terminator; | ||
72 | } | ||
73 | |||
74 | /** | ||
75 | * <!-- begin-user-doc --> | ||
76 | * <!-- end-user-doc --> | ||
77 | * @generated | ||
78 | */ | ||
79 | public NotificationChain basicSetTerminator(FAMTerminator newTerminator, NotificationChain msgs) { | ||
80 | FAMTerminator oldTerminator = terminator; | ||
81 | terminator = newTerminator; | ||
82 | if (eNotificationRequired()) { | ||
83 | ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, famPackage.FUNCTIONAL_DATA__TERMINATOR, oldTerminator, newTerminator); | ||
84 | if (msgs == null) msgs = notification; else msgs.add(notification); | ||
85 | } | ||
86 | return msgs; | ||
87 | } | ||
88 | |||
89 | /** | ||
90 | * <!-- begin-user-doc --> | ||
91 | * <!-- end-user-doc --> | ||
92 | * @generated | ||
93 | */ | ||
94 | public void setTerminator(FAMTerminator newTerminator) { | ||
95 | if (newTerminator != terminator) { | ||
96 | NotificationChain msgs = null; | ||
97 | if (terminator != null) | ||
98 | msgs = ((InternalEObject)terminator).eInverseRemove(this, famPackage.FAM_TERMINATOR__DATA, FAMTerminator.class, msgs); | ||
99 | if (newTerminator != null) | ||
100 | msgs = ((InternalEObject)newTerminator).eInverseAdd(this, famPackage.FAM_TERMINATOR__DATA, FAMTerminator.class, msgs); | ||
101 | msgs = basicSetTerminator(newTerminator, msgs); | ||
102 | if (msgs != null) msgs.dispatch(); | ||
103 | } | ||
104 | else if (eNotificationRequired()) | ||
105 | eNotify(new ENotificationImpl(this, Notification.SET, famPackage.FUNCTIONAL_DATA__TERMINATOR, newTerminator, newTerminator)); | ||
106 | } | ||
107 | |||
108 | /** | ||
109 | * <!-- begin-user-doc --> | ||
110 | * <!-- end-user-doc --> | ||
111 | * @generated | ||
112 | */ | ||
113 | public FunctionalInterface getInterface() { | ||
114 | if (eContainerFeatureID() != famPackage.FUNCTIONAL_DATA__INTERFACE) return null; | ||
115 | return (FunctionalInterface)eInternalContainer(); | ||
116 | } | ||
117 | |||
118 | /** | ||
119 | * <!-- begin-user-doc --> | ||
120 | * <!-- end-user-doc --> | ||
121 | * @generated | ||
122 | */ | ||
123 | public NotificationChain basicSetInterface(FunctionalInterface newInterface, NotificationChain msgs) { | ||
124 | msgs = eBasicSetContainer((InternalEObject)newInterface, famPackage.FUNCTIONAL_DATA__INTERFACE, msgs); | ||
125 | return msgs; | ||
126 | } | ||
127 | |||
128 | /** | ||
129 | * <!-- begin-user-doc --> | ||
130 | * <!-- end-user-doc --> | ||
131 | * @generated | ||
132 | */ | ||
133 | public void setInterface(FunctionalInterface newInterface) { | ||
134 | if (newInterface != eInternalContainer() || (eContainerFeatureID() != famPackage.FUNCTIONAL_DATA__INTERFACE && newInterface != null)) { | ||
135 | if (EcoreUtil.isAncestor(this, newInterface)) | ||
136 | throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); | ||
137 | NotificationChain msgs = null; | ||
138 | if (eInternalContainer() != null) | ||
139 | msgs = eBasicRemoveFromContainer(msgs); | ||
140 | if (newInterface != null) | ||
141 | msgs = ((InternalEObject)newInterface).eInverseAdd(this, famPackage.FUNCTIONAL_INTERFACE__DATA, FunctionalInterface.class, msgs); | ||
142 | msgs = basicSetInterface(newInterface, msgs); | ||
143 | if (msgs != null) msgs.dispatch(); | ||
144 | } | ||
145 | else if (eNotificationRequired()) | ||
146 | eNotify(new ENotificationImpl(this, Notification.SET, famPackage.FUNCTIONAL_DATA__INTERFACE, newInterface, newInterface)); | ||
147 | } | ||
148 | |||
149 | /** | ||
150 | * <!-- begin-user-doc --> | ||
151 | * <!-- end-user-doc --> | ||
152 | * @generated | ||
153 | */ | ||
154 | @Override | ||
155 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
156 | switch (featureID) { | ||
157 | case famPackage.FUNCTIONAL_DATA__TERMINATOR: | ||
158 | if (terminator != null) | ||
159 | msgs = ((InternalEObject)terminator).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - famPackage.FUNCTIONAL_DATA__TERMINATOR, null, msgs); | ||
160 | return basicSetTerminator((FAMTerminator)otherEnd, msgs); | ||
161 | case famPackage.FUNCTIONAL_DATA__INTERFACE: | ||
162 | if (eInternalContainer() != null) | ||
163 | msgs = eBasicRemoveFromContainer(msgs); | ||
164 | return basicSetInterface((FunctionalInterface)otherEnd, msgs); | ||
165 | } | ||
166 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
167 | } | ||
168 | |||
169 | /** | ||
170 | * <!-- begin-user-doc --> | ||
171 | * <!-- end-user-doc --> | ||
172 | * @generated | ||
173 | */ | ||
174 | @Override | ||
175 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
176 | switch (featureID) { | ||
177 | case famPackage.FUNCTIONAL_DATA__TERMINATOR: | ||
178 | return basicSetTerminator(null, msgs); | ||
179 | case famPackage.FUNCTIONAL_DATA__INTERFACE: | ||
180 | return basicSetInterface(null, msgs); | ||
181 | } | ||
182 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
183 | } | ||
184 | |||
185 | /** | ||
186 | * <!-- begin-user-doc --> | ||
187 | * <!-- end-user-doc --> | ||
188 | * @generated | ||
189 | */ | ||
190 | @Override | ||
191 | public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { | ||
192 | switch (eContainerFeatureID()) { | ||
193 | case famPackage.FUNCTIONAL_DATA__INTERFACE: | ||
194 | return eInternalContainer().eInverseRemove(this, famPackage.FUNCTIONAL_INTERFACE__DATA, FunctionalInterface.class, msgs); | ||
195 | } | ||
196 | return super.eBasicRemoveFromContainerFeature(msgs); | ||
197 | } | ||
198 | |||
199 | /** | ||
200 | * <!-- begin-user-doc --> | ||
201 | * <!-- end-user-doc --> | ||
202 | * @generated | ||
203 | */ | ||
204 | @Override | ||
205 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
206 | switch (featureID) { | ||
207 | case famPackage.FUNCTIONAL_DATA__TERMINATOR: | ||
208 | return getTerminator(); | ||
209 | case famPackage.FUNCTIONAL_DATA__INTERFACE: | ||
210 | return getInterface(); | ||
211 | } | ||
212 | return super.eGet(featureID, resolve, coreType); | ||
213 | } | ||
214 | |||
215 | /** | ||
216 | * <!-- begin-user-doc --> | ||
217 | * <!-- end-user-doc --> | ||
218 | * @generated | ||
219 | */ | ||
220 | @Override | ||
221 | public void eSet(int featureID, Object newValue) { | ||
222 | switch (featureID) { | ||
223 | case famPackage.FUNCTIONAL_DATA__TERMINATOR: | ||
224 | setTerminator((FAMTerminator)newValue); | ||
225 | return; | ||
226 | case famPackage.FUNCTIONAL_DATA__INTERFACE: | ||
227 | setInterface((FunctionalInterface)newValue); | ||
228 | return; | ||
229 | } | ||
230 | super.eSet(featureID, newValue); | ||
231 | } | ||
232 | |||
233 | /** | ||
234 | * <!-- begin-user-doc --> | ||
235 | * <!-- end-user-doc --> | ||
236 | * @generated | ||
237 | */ | ||
238 | @Override | ||
239 | public void eUnset(int featureID) { | ||
240 | switch (featureID) { | ||
241 | case famPackage.FUNCTIONAL_DATA__TERMINATOR: | ||
242 | setTerminator((FAMTerminator)null); | ||
243 | return; | ||
244 | case famPackage.FUNCTIONAL_DATA__INTERFACE: | ||
245 | setInterface((FunctionalInterface)null); | ||
246 | return; | ||
247 | } | ||
248 | super.eUnset(featureID); | ||
249 | } | ||
250 | |||
251 | /** | ||
252 | * <!-- begin-user-doc --> | ||
253 | * <!-- end-user-doc --> | ||
254 | * @generated | ||
255 | */ | ||
256 | @Override | ||
257 | public boolean eIsSet(int featureID) { | ||
258 | switch (featureID) { | ||
259 | case famPackage.FUNCTIONAL_DATA__TERMINATOR: | ||
260 | return terminator != null; | ||
261 | case famPackage.FUNCTIONAL_DATA__INTERFACE: | ||
262 | return getInterface() != null; | ||
263 | } | ||
264 | return super.eIsSet(featureID); | ||
265 | } | ||
266 | |||
267 | } //FunctionalDataImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalElementImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalElementImpl.java new file mode 100644 index 00000000..318a8706 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalElementImpl.java | |||
@@ -0,0 +1,318 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface; | ||
9 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.Notification; | ||
12 | import org.eclipse.emf.common.notify.NotificationChain; | ||
13 | |||
14 | import org.eclipse.emf.ecore.EClass; | ||
15 | import org.eclipse.emf.ecore.EStructuralFeature; | ||
16 | import org.eclipse.emf.ecore.InternalEObject; | ||
17 | |||
18 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
19 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
20 | |||
21 | import org.eclipse.emf.ecore.util.EcoreUtil; | ||
22 | |||
23 | /** | ||
24 | * <!-- begin-user-doc --> | ||
25 | * An implementation of the model object '<em><b>Functional Element</b></em>'. | ||
26 | * <!-- end-user-doc --> | ||
27 | * <p> | ||
28 | * The following features are implemented: | ||
29 | * </p> | ||
30 | * <ul> | ||
31 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalElementImpl#getInterface <em>Interface</em>}</li> | ||
32 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalElementImpl#getModel <em>Model</em>}</li> | ||
33 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalElementImpl#getParent <em>Parent</em>}</li> | ||
34 | * </ul> | ||
35 | * | ||
36 | * @generated | ||
37 | */ | ||
38 | public abstract class FunctionalElementImpl extends MinimalEObjectImpl.Container implements FunctionalElement { | ||
39 | /** | ||
40 | * The cached value of the '{@link #getInterface() <em>Interface</em>}' containment reference. | ||
41 | * <!-- begin-user-doc --> | ||
42 | * <!-- end-user-doc --> | ||
43 | * @see #getInterface() | ||
44 | * @generated | ||
45 | * @ordered | ||
46 | */ | ||
47 | protected FunctionalInterface interface_; | ||
48 | |||
49 | /** | ||
50 | * The cached setting delegate for the '{@link #getModel() <em>Model</em>}' reference. | ||
51 | * <!-- begin-user-doc --> | ||
52 | * <!-- end-user-doc --> | ||
53 | * @see #getModel() | ||
54 | * @generated | ||
55 | * @ordered | ||
56 | */ | ||
57 | protected EStructuralFeature.Internal.SettingDelegate MODEL__ESETTING_DELEGATE = ((EStructuralFeature.Internal)famPackage.Literals.FUNCTIONAL_ELEMENT__MODEL).getSettingDelegate(); | ||
58 | |||
59 | /** | ||
60 | * <!-- begin-user-doc --> | ||
61 | * <!-- end-user-doc --> | ||
62 | * @generated | ||
63 | */ | ||
64 | protected FunctionalElementImpl() { | ||
65 | super(); | ||
66 | } | ||
67 | |||
68 | /** | ||
69 | * <!-- begin-user-doc --> | ||
70 | * <!-- end-user-doc --> | ||
71 | * @generated | ||
72 | */ | ||
73 | @Override | ||
74 | protected EClass eStaticClass() { | ||
75 | return famPackage.Literals.FUNCTIONAL_ELEMENT; | ||
76 | } | ||
77 | |||
78 | /** | ||
79 | * <!-- begin-user-doc --> | ||
80 | * <!-- end-user-doc --> | ||
81 | * @generated | ||
82 | */ | ||
83 | public FunctionalInterface getInterface() { | ||
84 | return interface_; | ||
85 | } | ||
86 | |||
87 | /** | ||
88 | * <!-- begin-user-doc --> | ||
89 | * <!-- end-user-doc --> | ||
90 | * @generated | ||
91 | */ | ||
92 | public NotificationChain basicSetInterface(FunctionalInterface newInterface, NotificationChain msgs) { | ||
93 | FunctionalInterface oldInterface = interface_; | ||
94 | interface_ = newInterface; | ||
95 | if (eNotificationRequired()) { | ||
96 | ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, famPackage.FUNCTIONAL_ELEMENT__INTERFACE, oldInterface, newInterface); | ||
97 | if (msgs == null) msgs = notification; else msgs.add(notification); | ||
98 | } | ||
99 | return msgs; | ||
100 | } | ||
101 | |||
102 | /** | ||
103 | * <!-- begin-user-doc --> | ||
104 | * <!-- end-user-doc --> | ||
105 | * @generated | ||
106 | */ | ||
107 | public void setInterface(FunctionalInterface newInterface) { | ||
108 | if (newInterface != interface_) { | ||
109 | NotificationChain msgs = null; | ||
110 | if (interface_ != null) | ||
111 | msgs = ((InternalEObject)interface_).eInverseRemove(this, famPackage.FUNCTIONAL_INTERFACE__ELEMENT, FunctionalInterface.class, msgs); | ||
112 | if (newInterface != null) | ||
113 | msgs = ((InternalEObject)newInterface).eInverseAdd(this, famPackage.FUNCTIONAL_INTERFACE__ELEMENT, FunctionalInterface.class, msgs); | ||
114 | msgs = basicSetInterface(newInterface, msgs); | ||
115 | if (msgs != null) msgs.dispatch(); | ||
116 | } | ||
117 | else if (eNotificationRequired()) | ||
118 | eNotify(new ENotificationImpl(this, Notification.SET, famPackage.FUNCTIONAL_ELEMENT__INTERFACE, newInterface, newInterface)); | ||
119 | } | ||
120 | |||
121 | /** | ||
122 | * <!-- begin-user-doc --> | ||
123 | * <!-- end-user-doc --> | ||
124 | * @generated | ||
125 | */ | ||
126 | public FunctionalArchitectureModel getModel() { | ||
127 | return (FunctionalArchitectureModel)MODEL__ESETTING_DELEGATE.dynamicGet(this, null, 0, true, false); | ||
128 | } | ||
129 | |||
130 | /** | ||
131 | * <!-- begin-user-doc --> | ||
132 | * <!-- end-user-doc --> | ||
133 | * @generated | ||
134 | */ | ||
135 | public FunctionalArchitectureModel basicGetModel() { | ||
136 | return (FunctionalArchitectureModel)MODEL__ESETTING_DELEGATE.dynamicGet(this, null, 0, false, false); | ||
137 | } | ||
138 | |||
139 | /** | ||
140 | * <!-- begin-user-doc --> | ||
141 | * <!-- end-user-doc --> | ||
142 | * @generated | ||
143 | */ | ||
144 | public void setModel(FunctionalArchitectureModel newModel) { | ||
145 | MODEL__ESETTING_DELEGATE.dynamicSet(this, null, 0, newModel); | ||
146 | } | ||
147 | |||
148 | /** | ||
149 | * <!-- begin-user-doc --> | ||
150 | * <!-- end-user-doc --> | ||
151 | * @generated | ||
152 | */ | ||
153 | public Function getParent() { | ||
154 | if (eContainerFeatureID() != famPackage.FUNCTIONAL_ELEMENT__PARENT) return null; | ||
155 | return (Function)eInternalContainer(); | ||
156 | } | ||
157 | |||
158 | /** | ||
159 | * <!-- begin-user-doc --> | ||
160 | * <!-- end-user-doc --> | ||
161 | * @generated | ||
162 | */ | ||
163 | public NotificationChain basicSetParent(Function newParent, NotificationChain msgs) { | ||
164 | msgs = eBasicSetContainer((InternalEObject)newParent, famPackage.FUNCTIONAL_ELEMENT__PARENT, msgs); | ||
165 | return msgs; | ||
166 | } | ||
167 | |||
168 | /** | ||
169 | * <!-- begin-user-doc --> | ||
170 | * <!-- end-user-doc --> | ||
171 | * @generated | ||
172 | */ | ||
173 | public void setParent(Function newParent) { | ||
174 | if (newParent != eInternalContainer() || (eContainerFeatureID() != famPackage.FUNCTIONAL_ELEMENT__PARENT && newParent != null)) { | ||
175 | if (EcoreUtil.isAncestor(this, newParent)) | ||
176 | throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); | ||
177 | NotificationChain msgs = null; | ||
178 | if (eInternalContainer() != null) | ||
179 | msgs = eBasicRemoveFromContainer(msgs); | ||
180 | if (newParent != null) | ||
181 | msgs = ((InternalEObject)newParent).eInverseAdd(this, famPackage.FUNCTION__SUB_ELEMENTS, Function.class, msgs); | ||
182 | msgs = basicSetParent(newParent, msgs); | ||
183 | if (msgs != null) msgs.dispatch(); | ||
184 | } | ||
185 | else if (eNotificationRequired()) | ||
186 | eNotify(new ENotificationImpl(this, Notification.SET, famPackage.FUNCTIONAL_ELEMENT__PARENT, newParent, newParent)); | ||
187 | } | ||
188 | |||
189 | /** | ||
190 | * <!-- begin-user-doc --> | ||
191 | * <!-- end-user-doc --> | ||
192 | * @generated | ||
193 | */ | ||
194 | @Override | ||
195 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
196 | switch (featureID) { | ||
197 | case famPackage.FUNCTIONAL_ELEMENT__INTERFACE: | ||
198 | if (interface_ != null) | ||
199 | msgs = ((InternalEObject)interface_).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - famPackage.FUNCTIONAL_ELEMENT__INTERFACE, null, msgs); | ||
200 | return basicSetInterface((FunctionalInterface)otherEnd, msgs); | ||
201 | case famPackage.FUNCTIONAL_ELEMENT__PARENT: | ||
202 | if (eInternalContainer() != null) | ||
203 | msgs = eBasicRemoveFromContainer(msgs); | ||
204 | return basicSetParent((Function)otherEnd, msgs); | ||
205 | } | ||
206 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
207 | } | ||
208 | |||
209 | /** | ||
210 | * <!-- begin-user-doc --> | ||
211 | * <!-- end-user-doc --> | ||
212 | * @generated | ||
213 | */ | ||
214 | @Override | ||
215 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
216 | switch (featureID) { | ||
217 | case famPackage.FUNCTIONAL_ELEMENT__INTERFACE: | ||
218 | return basicSetInterface(null, msgs); | ||
219 | case famPackage.FUNCTIONAL_ELEMENT__PARENT: | ||
220 | return basicSetParent(null, msgs); | ||
221 | } | ||
222 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
223 | } | ||
224 | |||
225 | /** | ||
226 | * <!-- begin-user-doc --> | ||
227 | * <!-- end-user-doc --> | ||
228 | * @generated | ||
229 | */ | ||
230 | @Override | ||
231 | public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { | ||
232 | switch (eContainerFeatureID()) { | ||
233 | case famPackage.FUNCTIONAL_ELEMENT__PARENT: | ||
234 | return eInternalContainer().eInverseRemove(this, famPackage.FUNCTION__SUB_ELEMENTS, Function.class, msgs); | ||
235 | } | ||
236 | return super.eBasicRemoveFromContainerFeature(msgs); | ||
237 | } | ||
238 | |||
239 | /** | ||
240 | * <!-- begin-user-doc --> | ||
241 | * <!-- end-user-doc --> | ||
242 | * @generated | ||
243 | */ | ||
244 | @Override | ||
245 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
246 | switch (featureID) { | ||
247 | case famPackage.FUNCTIONAL_ELEMENT__INTERFACE: | ||
248 | return getInterface(); | ||
249 | case famPackage.FUNCTIONAL_ELEMENT__MODEL: | ||
250 | if (resolve) return getModel(); | ||
251 | return basicGetModel(); | ||
252 | case famPackage.FUNCTIONAL_ELEMENT__PARENT: | ||
253 | return getParent(); | ||
254 | } | ||
255 | return super.eGet(featureID, resolve, coreType); | ||
256 | } | ||
257 | |||
258 | /** | ||
259 | * <!-- begin-user-doc --> | ||
260 | * <!-- end-user-doc --> | ||
261 | * @generated | ||
262 | */ | ||
263 | @Override | ||
264 | public void eSet(int featureID, Object newValue) { | ||
265 | switch (featureID) { | ||
266 | case famPackage.FUNCTIONAL_ELEMENT__INTERFACE: | ||
267 | setInterface((FunctionalInterface)newValue); | ||
268 | return; | ||
269 | case famPackage.FUNCTIONAL_ELEMENT__MODEL: | ||
270 | setModel((FunctionalArchitectureModel)newValue); | ||
271 | return; | ||
272 | case famPackage.FUNCTIONAL_ELEMENT__PARENT: | ||
273 | setParent((Function)newValue); | ||
274 | return; | ||
275 | } | ||
276 | super.eSet(featureID, newValue); | ||
277 | } | ||
278 | |||
279 | /** | ||
280 | * <!-- begin-user-doc --> | ||
281 | * <!-- end-user-doc --> | ||
282 | * @generated | ||
283 | */ | ||
284 | @Override | ||
285 | public void eUnset(int featureID) { | ||
286 | switch (featureID) { | ||
287 | case famPackage.FUNCTIONAL_ELEMENT__INTERFACE: | ||
288 | setInterface((FunctionalInterface)null); | ||
289 | return; | ||
290 | case famPackage.FUNCTIONAL_ELEMENT__MODEL: | ||
291 | setModel((FunctionalArchitectureModel)null); | ||
292 | return; | ||
293 | case famPackage.FUNCTIONAL_ELEMENT__PARENT: | ||
294 | setParent((Function)null); | ||
295 | return; | ||
296 | } | ||
297 | super.eUnset(featureID); | ||
298 | } | ||
299 | |||
300 | /** | ||
301 | * <!-- begin-user-doc --> | ||
302 | * <!-- end-user-doc --> | ||
303 | * @generated | ||
304 | */ | ||
305 | @Override | ||
306 | public boolean eIsSet(int featureID) { | ||
307 | switch (featureID) { | ||
308 | case famPackage.FUNCTIONAL_ELEMENT__INTERFACE: | ||
309 | return interface_ != null; | ||
310 | case famPackage.FUNCTIONAL_ELEMENT__MODEL: | ||
311 | return MODEL__ESETTING_DELEGATE.dynamicIsSet(this, null, 0); | ||
312 | case famPackage.FUNCTIONAL_ELEMENT__PARENT: | ||
313 | return getParent() != null; | ||
314 | } | ||
315 | return super.eIsSet(featureID); | ||
316 | } | ||
317 | |||
318 | } //FunctionalElementImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalInputImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalInputImpl.java new file mode 100644 index 00000000..b62e9742 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalInputImpl.java | |||
@@ -0,0 +1,165 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
8 | |||
9 | import java.util.Collection; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.NotificationChain; | ||
12 | |||
13 | import org.eclipse.emf.common.util.EList; | ||
14 | |||
15 | import org.eclipse.emf.ecore.EClass; | ||
16 | import org.eclipse.emf.ecore.InternalEObject; | ||
17 | |||
18 | import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; | ||
19 | import org.eclipse.emf.ecore.util.InternalEList; | ||
20 | |||
21 | /** | ||
22 | * <!-- begin-user-doc --> | ||
23 | * An implementation of the model object '<em><b>Functional Input</b></em>'. | ||
24 | * <!-- end-user-doc --> | ||
25 | * <p> | ||
26 | * The following features are implemented: | ||
27 | * </p> | ||
28 | * <ul> | ||
29 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInputImpl#getIncomingLinks <em>Incoming Links</em>}</li> | ||
30 | * </ul> | ||
31 | * | ||
32 | * @generated | ||
33 | */ | ||
34 | public class FunctionalInputImpl extends FunctionalDataImpl implements FunctionalInput { | ||
35 | /** | ||
36 | * The cached value of the '{@link #getIncomingLinks() <em>Incoming Links</em>}' reference list. | ||
37 | * <!-- begin-user-doc --> | ||
38 | * <!-- end-user-doc --> | ||
39 | * @see #getIncomingLinks() | ||
40 | * @generated | ||
41 | * @ordered | ||
42 | */ | ||
43 | protected EList<InformationLink> incomingLinks; | ||
44 | |||
45 | /** | ||
46 | * <!-- begin-user-doc --> | ||
47 | * <!-- end-user-doc --> | ||
48 | * @generated | ||
49 | */ | ||
50 | protected FunctionalInputImpl() { | ||
51 | super(); | ||
52 | } | ||
53 | |||
54 | /** | ||
55 | * <!-- begin-user-doc --> | ||
56 | * <!-- end-user-doc --> | ||
57 | * @generated | ||
58 | */ | ||
59 | @Override | ||
60 | protected EClass eStaticClass() { | ||
61 | return famPackage.Literals.FUNCTIONAL_INPUT; | ||
62 | } | ||
63 | |||
64 | /** | ||
65 | * <!-- begin-user-doc --> | ||
66 | * <!-- end-user-doc --> | ||
67 | * @generated | ||
68 | */ | ||
69 | public EList<InformationLink> getIncomingLinks() { | ||
70 | if (incomingLinks == null) { | ||
71 | incomingLinks = new EObjectWithInverseResolvingEList<InformationLink>(InformationLink.class, this, famPackage.FUNCTIONAL_INPUT__INCOMING_LINKS, famPackage.INFORMATION_LINK__TO); | ||
72 | } | ||
73 | return incomingLinks; | ||
74 | } | ||
75 | |||
76 | /** | ||
77 | * <!-- begin-user-doc --> | ||
78 | * <!-- end-user-doc --> | ||
79 | * @generated | ||
80 | */ | ||
81 | @SuppressWarnings("unchecked") | ||
82 | @Override | ||
83 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
84 | switch (featureID) { | ||
85 | case famPackage.FUNCTIONAL_INPUT__INCOMING_LINKS: | ||
86 | return ((InternalEList<InternalEObject>)(InternalEList<?>)getIncomingLinks()).basicAdd(otherEnd, msgs); | ||
87 | } | ||
88 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
89 | } | ||
90 | |||
91 | /** | ||
92 | * <!-- begin-user-doc --> | ||
93 | * <!-- end-user-doc --> | ||
94 | * @generated | ||
95 | */ | ||
96 | @Override | ||
97 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
98 | switch (featureID) { | ||
99 | case famPackage.FUNCTIONAL_INPUT__INCOMING_LINKS: | ||
100 | return ((InternalEList<?>)getIncomingLinks()).basicRemove(otherEnd, msgs); | ||
101 | } | ||
102 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
103 | } | ||
104 | |||
105 | /** | ||
106 | * <!-- begin-user-doc --> | ||
107 | * <!-- end-user-doc --> | ||
108 | * @generated | ||
109 | */ | ||
110 | @Override | ||
111 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
112 | switch (featureID) { | ||
113 | case famPackage.FUNCTIONAL_INPUT__INCOMING_LINKS: | ||
114 | return getIncomingLinks(); | ||
115 | } | ||
116 | return super.eGet(featureID, resolve, coreType); | ||
117 | } | ||
118 | |||
119 | /** | ||
120 | * <!-- begin-user-doc --> | ||
121 | * <!-- end-user-doc --> | ||
122 | * @generated | ||
123 | */ | ||
124 | @SuppressWarnings("unchecked") | ||
125 | @Override | ||
126 | public void eSet(int featureID, Object newValue) { | ||
127 | switch (featureID) { | ||
128 | case famPackage.FUNCTIONAL_INPUT__INCOMING_LINKS: | ||
129 | getIncomingLinks().clear(); | ||
130 | getIncomingLinks().addAll((Collection<? extends InformationLink>)newValue); | ||
131 | return; | ||
132 | } | ||
133 | super.eSet(featureID, newValue); | ||
134 | } | ||
135 | |||
136 | /** | ||
137 | * <!-- begin-user-doc --> | ||
138 | * <!-- end-user-doc --> | ||
139 | * @generated | ||
140 | */ | ||
141 | @Override | ||
142 | public void eUnset(int featureID) { | ||
143 | switch (featureID) { | ||
144 | case famPackage.FUNCTIONAL_INPUT__INCOMING_LINKS: | ||
145 | getIncomingLinks().clear(); | ||
146 | return; | ||
147 | } | ||
148 | super.eUnset(featureID); | ||
149 | } | ||
150 | |||
151 | /** | ||
152 | * <!-- begin-user-doc --> | ||
153 | * <!-- end-user-doc --> | ||
154 | * @generated | ||
155 | */ | ||
156 | @Override | ||
157 | public boolean eIsSet(int featureID) { | ||
158 | switch (featureID) { | ||
159 | case famPackage.FUNCTIONAL_INPUT__INCOMING_LINKS: | ||
160 | return incomingLinks != null && !incomingLinks.isEmpty(); | ||
161 | } | ||
162 | return super.eIsSet(featureID); | ||
163 | } | ||
164 | |||
165 | } //FunctionalInputImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalInterfaceImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalInterfaceImpl.java new file mode 100644 index 00000000..b9417a23 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalInterfaceImpl.java | |||
@@ -0,0 +1,243 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
9 | |||
10 | import java.util.Collection; | ||
11 | |||
12 | import org.eclipse.emf.common.notify.Notification; | ||
13 | import org.eclipse.emf.common.notify.NotificationChain; | ||
14 | |||
15 | import org.eclipse.emf.common.util.EList; | ||
16 | |||
17 | import org.eclipse.emf.ecore.EClass; | ||
18 | import org.eclipse.emf.ecore.InternalEObject; | ||
19 | |||
20 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
21 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
22 | |||
23 | import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; | ||
24 | import org.eclipse.emf.ecore.util.EcoreUtil; | ||
25 | import org.eclipse.emf.ecore.util.InternalEList; | ||
26 | |||
27 | /** | ||
28 | * <!-- begin-user-doc --> | ||
29 | * An implementation of the model object '<em><b>Functional Interface</b></em>'. | ||
30 | * <!-- end-user-doc --> | ||
31 | * <p> | ||
32 | * The following features are implemented: | ||
33 | * </p> | ||
34 | * <ul> | ||
35 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInterfaceImpl#getData <em>Data</em>}</li> | ||
36 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalInterfaceImpl#getElement <em>Element</em>}</li> | ||
37 | * </ul> | ||
38 | * | ||
39 | * @generated | ||
40 | */ | ||
41 | public class FunctionalInterfaceImpl extends MinimalEObjectImpl.Container implements FunctionalInterface { | ||
42 | /** | ||
43 | * The cached value of the '{@link #getData() <em>Data</em>}' containment reference list. | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @see #getData() | ||
47 | * @generated | ||
48 | * @ordered | ||
49 | */ | ||
50 | protected EList<FunctionalData> data; | ||
51 | |||
52 | /** | ||
53 | * <!-- begin-user-doc --> | ||
54 | * <!-- end-user-doc --> | ||
55 | * @generated | ||
56 | */ | ||
57 | protected FunctionalInterfaceImpl() { | ||
58 | super(); | ||
59 | } | ||
60 | |||
61 | /** | ||
62 | * <!-- begin-user-doc --> | ||
63 | * <!-- end-user-doc --> | ||
64 | * @generated | ||
65 | */ | ||
66 | @Override | ||
67 | protected EClass eStaticClass() { | ||
68 | return famPackage.Literals.FUNCTIONAL_INTERFACE; | ||
69 | } | ||
70 | |||
71 | /** | ||
72 | * <!-- begin-user-doc --> | ||
73 | * <!-- end-user-doc --> | ||
74 | * @generated | ||
75 | */ | ||
76 | public EList<FunctionalData> getData() { | ||
77 | if (data == null) { | ||
78 | data = new EObjectContainmentWithInverseEList<FunctionalData>(FunctionalData.class, this, famPackage.FUNCTIONAL_INTERFACE__DATA, famPackage.FUNCTIONAL_DATA__INTERFACE); | ||
79 | } | ||
80 | return data; | ||
81 | } | ||
82 | |||
83 | /** | ||
84 | * <!-- begin-user-doc --> | ||
85 | * <!-- end-user-doc --> | ||
86 | * @generated | ||
87 | */ | ||
88 | public FunctionalElement getElement() { | ||
89 | if (eContainerFeatureID() != famPackage.FUNCTIONAL_INTERFACE__ELEMENT) return null; | ||
90 | return (FunctionalElement)eInternalContainer(); | ||
91 | } | ||
92 | |||
93 | /** | ||
94 | * <!-- begin-user-doc --> | ||
95 | * <!-- end-user-doc --> | ||
96 | * @generated | ||
97 | */ | ||
98 | public NotificationChain basicSetElement(FunctionalElement newElement, NotificationChain msgs) { | ||
99 | msgs = eBasicSetContainer((InternalEObject)newElement, famPackage.FUNCTIONAL_INTERFACE__ELEMENT, msgs); | ||
100 | return msgs; | ||
101 | } | ||
102 | |||
103 | /** | ||
104 | * <!-- begin-user-doc --> | ||
105 | * <!-- end-user-doc --> | ||
106 | * @generated | ||
107 | */ | ||
108 | public void setElement(FunctionalElement newElement) { | ||
109 | if (newElement != eInternalContainer() || (eContainerFeatureID() != famPackage.FUNCTIONAL_INTERFACE__ELEMENT && newElement != null)) { | ||
110 | if (EcoreUtil.isAncestor(this, newElement)) | ||
111 | throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); | ||
112 | NotificationChain msgs = null; | ||
113 | if (eInternalContainer() != null) | ||
114 | msgs = eBasicRemoveFromContainer(msgs); | ||
115 | if (newElement != null) | ||
116 | msgs = ((InternalEObject)newElement).eInverseAdd(this, famPackage.FUNCTIONAL_ELEMENT__INTERFACE, FunctionalElement.class, msgs); | ||
117 | msgs = basicSetElement(newElement, msgs); | ||
118 | if (msgs != null) msgs.dispatch(); | ||
119 | } | ||
120 | else if (eNotificationRequired()) | ||
121 | eNotify(new ENotificationImpl(this, Notification.SET, famPackage.FUNCTIONAL_INTERFACE__ELEMENT, newElement, newElement)); | ||
122 | } | ||
123 | |||
124 | /** | ||
125 | * <!-- begin-user-doc --> | ||
126 | * <!-- end-user-doc --> | ||
127 | * @generated | ||
128 | */ | ||
129 | @SuppressWarnings("unchecked") | ||
130 | @Override | ||
131 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
132 | switch (featureID) { | ||
133 | case famPackage.FUNCTIONAL_INTERFACE__DATA: | ||
134 | return ((InternalEList<InternalEObject>)(InternalEList<?>)getData()).basicAdd(otherEnd, msgs); | ||
135 | case famPackage.FUNCTIONAL_INTERFACE__ELEMENT: | ||
136 | if (eInternalContainer() != null) | ||
137 | msgs = eBasicRemoveFromContainer(msgs); | ||
138 | return basicSetElement((FunctionalElement)otherEnd, msgs); | ||
139 | } | ||
140 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
141 | } | ||
142 | |||
143 | /** | ||
144 | * <!-- begin-user-doc --> | ||
145 | * <!-- end-user-doc --> | ||
146 | * @generated | ||
147 | */ | ||
148 | @Override | ||
149 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
150 | switch (featureID) { | ||
151 | case famPackage.FUNCTIONAL_INTERFACE__DATA: | ||
152 | return ((InternalEList<?>)getData()).basicRemove(otherEnd, msgs); | ||
153 | case famPackage.FUNCTIONAL_INTERFACE__ELEMENT: | ||
154 | return basicSetElement(null, msgs); | ||
155 | } | ||
156 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
157 | } | ||
158 | |||
159 | /** | ||
160 | * <!-- begin-user-doc --> | ||
161 | * <!-- end-user-doc --> | ||
162 | * @generated | ||
163 | */ | ||
164 | @Override | ||
165 | public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { | ||
166 | switch (eContainerFeatureID()) { | ||
167 | case famPackage.FUNCTIONAL_INTERFACE__ELEMENT: | ||
168 | return eInternalContainer().eInverseRemove(this, famPackage.FUNCTIONAL_ELEMENT__INTERFACE, FunctionalElement.class, msgs); | ||
169 | } | ||
170 | return super.eBasicRemoveFromContainerFeature(msgs); | ||
171 | } | ||
172 | |||
173 | /** | ||
174 | * <!-- begin-user-doc --> | ||
175 | * <!-- end-user-doc --> | ||
176 | * @generated | ||
177 | */ | ||
178 | @Override | ||
179 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
180 | switch (featureID) { | ||
181 | case famPackage.FUNCTIONAL_INTERFACE__DATA: | ||
182 | return getData(); | ||
183 | case famPackage.FUNCTIONAL_INTERFACE__ELEMENT: | ||
184 | return getElement(); | ||
185 | } | ||
186 | return super.eGet(featureID, resolve, coreType); | ||
187 | } | ||
188 | |||
189 | /** | ||
190 | * <!-- begin-user-doc --> | ||
191 | * <!-- end-user-doc --> | ||
192 | * @generated | ||
193 | */ | ||
194 | @SuppressWarnings("unchecked") | ||
195 | @Override | ||
196 | public void eSet(int featureID, Object newValue) { | ||
197 | switch (featureID) { | ||
198 | case famPackage.FUNCTIONAL_INTERFACE__DATA: | ||
199 | getData().clear(); | ||
200 | getData().addAll((Collection<? extends FunctionalData>)newValue); | ||
201 | return; | ||
202 | case famPackage.FUNCTIONAL_INTERFACE__ELEMENT: | ||
203 | setElement((FunctionalElement)newValue); | ||
204 | return; | ||
205 | } | ||
206 | super.eSet(featureID, newValue); | ||
207 | } | ||
208 | |||
209 | /** | ||
210 | * <!-- begin-user-doc --> | ||
211 | * <!-- end-user-doc --> | ||
212 | * @generated | ||
213 | */ | ||
214 | @Override | ||
215 | public void eUnset(int featureID) { | ||
216 | switch (featureID) { | ||
217 | case famPackage.FUNCTIONAL_INTERFACE__DATA: | ||
218 | getData().clear(); | ||
219 | return; | ||
220 | case famPackage.FUNCTIONAL_INTERFACE__ELEMENT: | ||
221 | setElement((FunctionalElement)null); | ||
222 | return; | ||
223 | } | ||
224 | super.eUnset(featureID); | ||
225 | } | ||
226 | |||
227 | /** | ||
228 | * <!-- begin-user-doc --> | ||
229 | * <!-- end-user-doc --> | ||
230 | * @generated | ||
231 | */ | ||
232 | @Override | ||
233 | public boolean eIsSet(int featureID) { | ||
234 | switch (featureID) { | ||
235 | case famPackage.FUNCTIONAL_INTERFACE__DATA: | ||
236 | return data != null && !data.isEmpty(); | ||
237 | case famPackage.FUNCTIONAL_INTERFACE__ELEMENT: | ||
238 | return getElement() != null; | ||
239 | } | ||
240 | return super.eIsSet(featureID); | ||
241 | } | ||
242 | |||
243 | } //FunctionalInterfaceImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalOutputImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalOutputImpl.java new file mode 100644 index 00000000..30bde348 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/FunctionalOutputImpl.java | |||
@@ -0,0 +1,165 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
8 | |||
9 | import java.util.Collection; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.NotificationChain; | ||
12 | |||
13 | import org.eclipse.emf.common.util.EList; | ||
14 | |||
15 | import org.eclipse.emf.ecore.EClass; | ||
16 | import org.eclipse.emf.ecore.InternalEObject; | ||
17 | |||
18 | import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; | ||
19 | import org.eclipse.emf.ecore.util.InternalEList; | ||
20 | |||
21 | /** | ||
22 | * <!-- begin-user-doc --> | ||
23 | * An implementation of the model object '<em><b>Functional Output</b></em>'. | ||
24 | * <!-- end-user-doc --> | ||
25 | * <p> | ||
26 | * The following features are implemented: | ||
27 | * </p> | ||
28 | * <ul> | ||
29 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.FunctionalOutputImpl#getOutgoingLinks <em>Outgoing Links</em>}</li> | ||
30 | * </ul> | ||
31 | * | ||
32 | * @generated | ||
33 | */ | ||
34 | public class FunctionalOutputImpl extends FunctionalDataImpl implements FunctionalOutput { | ||
35 | /** | ||
36 | * The cached value of the '{@link #getOutgoingLinks() <em>Outgoing Links</em>}' containment reference list. | ||
37 | * <!-- begin-user-doc --> | ||
38 | * <!-- end-user-doc --> | ||
39 | * @see #getOutgoingLinks() | ||
40 | * @generated | ||
41 | * @ordered | ||
42 | */ | ||
43 | protected EList<InformationLink> outgoingLinks; | ||
44 | |||
45 | /** | ||
46 | * <!-- begin-user-doc --> | ||
47 | * <!-- end-user-doc --> | ||
48 | * @generated | ||
49 | */ | ||
50 | protected FunctionalOutputImpl() { | ||
51 | super(); | ||
52 | } | ||
53 | |||
54 | /** | ||
55 | * <!-- begin-user-doc --> | ||
56 | * <!-- end-user-doc --> | ||
57 | * @generated | ||
58 | */ | ||
59 | @Override | ||
60 | protected EClass eStaticClass() { | ||
61 | return famPackage.Literals.FUNCTIONAL_OUTPUT; | ||
62 | } | ||
63 | |||
64 | /** | ||
65 | * <!-- begin-user-doc --> | ||
66 | * <!-- end-user-doc --> | ||
67 | * @generated | ||
68 | */ | ||
69 | public EList<InformationLink> getOutgoingLinks() { | ||
70 | if (outgoingLinks == null) { | ||
71 | outgoingLinks = new EObjectContainmentWithInverseEList<InformationLink>(InformationLink.class, this, famPackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS, famPackage.INFORMATION_LINK__FROM); | ||
72 | } | ||
73 | return outgoingLinks; | ||
74 | } | ||
75 | |||
76 | /** | ||
77 | * <!-- begin-user-doc --> | ||
78 | * <!-- end-user-doc --> | ||
79 | * @generated | ||
80 | */ | ||
81 | @SuppressWarnings("unchecked") | ||
82 | @Override | ||
83 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
84 | switch (featureID) { | ||
85 | case famPackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS: | ||
86 | return ((InternalEList<InternalEObject>)(InternalEList<?>)getOutgoingLinks()).basicAdd(otherEnd, msgs); | ||
87 | } | ||
88 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
89 | } | ||
90 | |||
91 | /** | ||
92 | * <!-- begin-user-doc --> | ||
93 | * <!-- end-user-doc --> | ||
94 | * @generated | ||
95 | */ | ||
96 | @Override | ||
97 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
98 | switch (featureID) { | ||
99 | case famPackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS: | ||
100 | return ((InternalEList<?>)getOutgoingLinks()).basicRemove(otherEnd, msgs); | ||
101 | } | ||
102 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
103 | } | ||
104 | |||
105 | /** | ||
106 | * <!-- begin-user-doc --> | ||
107 | * <!-- end-user-doc --> | ||
108 | * @generated | ||
109 | */ | ||
110 | @Override | ||
111 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
112 | switch (featureID) { | ||
113 | case famPackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS: | ||
114 | return getOutgoingLinks(); | ||
115 | } | ||
116 | return super.eGet(featureID, resolve, coreType); | ||
117 | } | ||
118 | |||
119 | /** | ||
120 | * <!-- begin-user-doc --> | ||
121 | * <!-- end-user-doc --> | ||
122 | * @generated | ||
123 | */ | ||
124 | @SuppressWarnings("unchecked") | ||
125 | @Override | ||
126 | public void eSet(int featureID, Object newValue) { | ||
127 | switch (featureID) { | ||
128 | case famPackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS: | ||
129 | getOutgoingLinks().clear(); | ||
130 | getOutgoingLinks().addAll((Collection<? extends InformationLink>)newValue); | ||
131 | return; | ||
132 | } | ||
133 | super.eSet(featureID, newValue); | ||
134 | } | ||
135 | |||
136 | /** | ||
137 | * <!-- begin-user-doc --> | ||
138 | * <!-- end-user-doc --> | ||
139 | * @generated | ||
140 | */ | ||
141 | @Override | ||
142 | public void eUnset(int featureID) { | ||
143 | switch (featureID) { | ||
144 | case famPackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS: | ||
145 | getOutgoingLinks().clear(); | ||
146 | return; | ||
147 | } | ||
148 | super.eUnset(featureID); | ||
149 | } | ||
150 | |||
151 | /** | ||
152 | * <!-- begin-user-doc --> | ||
153 | * <!-- end-user-doc --> | ||
154 | * @generated | ||
155 | */ | ||
156 | @Override | ||
157 | public boolean eIsSet(int featureID) { | ||
158 | switch (featureID) { | ||
159 | case famPackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS: | ||
160 | return outgoingLinks != null && !outgoingLinks.isEmpty(); | ||
161 | } | ||
162 | return super.eIsSet(featureID); | ||
163 | } | ||
164 | |||
165 | } //FunctionalOutputImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/InformationLinkImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/InformationLinkImpl.java new file mode 100644 index 00000000..b87f4201 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/InformationLinkImpl.java | |||
@@ -0,0 +1,285 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
9 | |||
10 | import org.eclipse.emf.common.notify.Notification; | ||
11 | import org.eclipse.emf.common.notify.NotificationChain; | ||
12 | |||
13 | import org.eclipse.emf.ecore.EClass; | ||
14 | import org.eclipse.emf.ecore.InternalEObject; | ||
15 | |||
16 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
17 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
18 | |||
19 | import org.eclipse.emf.ecore.util.EcoreUtil; | ||
20 | |||
21 | /** | ||
22 | * <!-- begin-user-doc --> | ||
23 | * An implementation of the model object '<em><b>Information Link</b></em>'. | ||
24 | * <!-- end-user-doc --> | ||
25 | * <p> | ||
26 | * The following features are implemented: | ||
27 | * </p> | ||
28 | * <ul> | ||
29 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.InformationLinkImpl#getFrom <em>From</em>}</li> | ||
30 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl.InformationLinkImpl#getTo <em>To</em>}</li> | ||
31 | * </ul> | ||
32 | * | ||
33 | * @generated | ||
34 | */ | ||
35 | public class InformationLinkImpl extends MinimalEObjectImpl.Container implements InformationLink { | ||
36 | /** | ||
37 | * The cached value of the '{@link #getTo() <em>To</em>}' reference. | ||
38 | * <!-- begin-user-doc --> | ||
39 | * <!-- end-user-doc --> | ||
40 | * @see #getTo() | ||
41 | * @generated | ||
42 | * @ordered | ||
43 | */ | ||
44 | protected FunctionalInput to; | ||
45 | |||
46 | /** | ||
47 | * <!-- begin-user-doc --> | ||
48 | * <!-- end-user-doc --> | ||
49 | * @generated | ||
50 | */ | ||
51 | protected InformationLinkImpl() { | ||
52 | super(); | ||
53 | } | ||
54 | |||
55 | /** | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <!-- end-user-doc --> | ||
58 | * @generated | ||
59 | */ | ||
60 | @Override | ||
61 | protected EClass eStaticClass() { | ||
62 | return famPackage.Literals.INFORMATION_LINK; | ||
63 | } | ||
64 | |||
65 | /** | ||
66 | * <!-- begin-user-doc --> | ||
67 | * <!-- end-user-doc --> | ||
68 | * @generated | ||
69 | */ | ||
70 | public FunctionalOutput getFrom() { | ||
71 | if (eContainerFeatureID() != famPackage.INFORMATION_LINK__FROM) return null; | ||
72 | return (FunctionalOutput)eInternalContainer(); | ||
73 | } | ||
74 | |||
75 | /** | ||
76 | * <!-- begin-user-doc --> | ||
77 | * <!-- end-user-doc --> | ||
78 | * @generated | ||
79 | */ | ||
80 | public NotificationChain basicSetFrom(FunctionalOutput newFrom, NotificationChain msgs) { | ||
81 | msgs = eBasicSetContainer((InternalEObject)newFrom, famPackage.INFORMATION_LINK__FROM, msgs); | ||
82 | return msgs; | ||
83 | } | ||
84 | |||
85 | /** | ||
86 | * <!-- begin-user-doc --> | ||
87 | * <!-- end-user-doc --> | ||
88 | * @generated | ||
89 | */ | ||
90 | public void setFrom(FunctionalOutput newFrom) { | ||
91 | if (newFrom != eInternalContainer() || (eContainerFeatureID() != famPackage.INFORMATION_LINK__FROM && newFrom != null)) { | ||
92 | if (EcoreUtil.isAncestor(this, newFrom)) | ||
93 | throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); | ||
94 | NotificationChain msgs = null; | ||
95 | if (eInternalContainer() != null) | ||
96 | msgs = eBasicRemoveFromContainer(msgs); | ||
97 | if (newFrom != null) | ||
98 | msgs = ((InternalEObject)newFrom).eInverseAdd(this, famPackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS, FunctionalOutput.class, msgs); | ||
99 | msgs = basicSetFrom(newFrom, msgs); | ||
100 | if (msgs != null) msgs.dispatch(); | ||
101 | } | ||
102 | else if (eNotificationRequired()) | ||
103 | eNotify(new ENotificationImpl(this, Notification.SET, famPackage.INFORMATION_LINK__FROM, newFrom, newFrom)); | ||
104 | } | ||
105 | |||
106 | /** | ||
107 | * <!-- begin-user-doc --> | ||
108 | * <!-- end-user-doc --> | ||
109 | * @generated | ||
110 | */ | ||
111 | public FunctionalInput getTo() { | ||
112 | if (to != null && to.eIsProxy()) { | ||
113 | InternalEObject oldTo = (InternalEObject)to; | ||
114 | to = (FunctionalInput)eResolveProxy(oldTo); | ||
115 | if (to != oldTo) { | ||
116 | if (eNotificationRequired()) | ||
117 | eNotify(new ENotificationImpl(this, Notification.RESOLVE, famPackage.INFORMATION_LINK__TO, oldTo, to)); | ||
118 | } | ||
119 | } | ||
120 | return to; | ||
121 | } | ||
122 | |||
123 | /** | ||
124 | * <!-- begin-user-doc --> | ||
125 | * <!-- end-user-doc --> | ||
126 | * @generated | ||
127 | */ | ||
128 | public FunctionalInput basicGetTo() { | ||
129 | return to; | ||
130 | } | ||
131 | |||
132 | /** | ||
133 | * <!-- begin-user-doc --> | ||
134 | * <!-- end-user-doc --> | ||
135 | * @generated | ||
136 | */ | ||
137 | public NotificationChain basicSetTo(FunctionalInput newTo, NotificationChain msgs) { | ||
138 | FunctionalInput oldTo = to; | ||
139 | to = newTo; | ||
140 | if (eNotificationRequired()) { | ||
141 | ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, famPackage.INFORMATION_LINK__TO, oldTo, newTo); | ||
142 | if (msgs == null) msgs = notification; else msgs.add(notification); | ||
143 | } | ||
144 | return msgs; | ||
145 | } | ||
146 | |||
147 | /** | ||
148 | * <!-- begin-user-doc --> | ||
149 | * <!-- end-user-doc --> | ||
150 | * @generated | ||
151 | */ | ||
152 | public void setTo(FunctionalInput newTo) { | ||
153 | if (newTo != to) { | ||
154 | NotificationChain msgs = null; | ||
155 | if (to != null) | ||
156 | msgs = ((InternalEObject)to).eInverseRemove(this, famPackage.FUNCTIONAL_INPUT__INCOMING_LINKS, FunctionalInput.class, msgs); | ||
157 | if (newTo != null) | ||
158 | msgs = ((InternalEObject)newTo).eInverseAdd(this, famPackage.FUNCTIONAL_INPUT__INCOMING_LINKS, FunctionalInput.class, msgs); | ||
159 | msgs = basicSetTo(newTo, msgs); | ||
160 | if (msgs != null) msgs.dispatch(); | ||
161 | } | ||
162 | else if (eNotificationRequired()) | ||
163 | eNotify(new ENotificationImpl(this, Notification.SET, famPackage.INFORMATION_LINK__TO, newTo, newTo)); | ||
164 | } | ||
165 | |||
166 | /** | ||
167 | * <!-- begin-user-doc --> | ||
168 | * <!-- end-user-doc --> | ||
169 | * @generated | ||
170 | */ | ||
171 | @Override | ||
172 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
173 | switch (featureID) { | ||
174 | case famPackage.INFORMATION_LINK__FROM: | ||
175 | if (eInternalContainer() != null) | ||
176 | msgs = eBasicRemoveFromContainer(msgs); | ||
177 | return basicSetFrom((FunctionalOutput)otherEnd, msgs); | ||
178 | case famPackage.INFORMATION_LINK__TO: | ||
179 | if (to != null) | ||
180 | msgs = ((InternalEObject)to).eInverseRemove(this, famPackage.FUNCTIONAL_INPUT__INCOMING_LINKS, FunctionalInput.class, msgs); | ||
181 | return basicSetTo((FunctionalInput)otherEnd, msgs); | ||
182 | } | ||
183 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
184 | } | ||
185 | |||
186 | /** | ||
187 | * <!-- begin-user-doc --> | ||
188 | * <!-- end-user-doc --> | ||
189 | * @generated | ||
190 | */ | ||
191 | @Override | ||
192 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
193 | switch (featureID) { | ||
194 | case famPackage.INFORMATION_LINK__FROM: | ||
195 | return basicSetFrom(null, msgs); | ||
196 | case famPackage.INFORMATION_LINK__TO: | ||
197 | return basicSetTo(null, msgs); | ||
198 | } | ||
199 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
200 | } | ||
201 | |||
202 | /** | ||
203 | * <!-- begin-user-doc --> | ||
204 | * <!-- end-user-doc --> | ||
205 | * @generated | ||
206 | */ | ||
207 | @Override | ||
208 | public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { | ||
209 | switch (eContainerFeatureID()) { | ||
210 | case famPackage.INFORMATION_LINK__FROM: | ||
211 | return eInternalContainer().eInverseRemove(this, famPackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS, FunctionalOutput.class, msgs); | ||
212 | } | ||
213 | return super.eBasicRemoveFromContainerFeature(msgs); | ||
214 | } | ||
215 | |||
216 | /** | ||
217 | * <!-- begin-user-doc --> | ||
218 | * <!-- end-user-doc --> | ||
219 | * @generated | ||
220 | */ | ||
221 | @Override | ||
222 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
223 | switch (featureID) { | ||
224 | case famPackage.INFORMATION_LINK__FROM: | ||
225 | return getFrom(); | ||
226 | case famPackage.INFORMATION_LINK__TO: | ||
227 | if (resolve) return getTo(); | ||
228 | return basicGetTo(); | ||
229 | } | ||
230 | return super.eGet(featureID, resolve, coreType); | ||
231 | } | ||
232 | |||
233 | /** | ||
234 | * <!-- begin-user-doc --> | ||
235 | * <!-- end-user-doc --> | ||
236 | * @generated | ||
237 | */ | ||
238 | @Override | ||
239 | public void eSet(int featureID, Object newValue) { | ||
240 | switch (featureID) { | ||
241 | case famPackage.INFORMATION_LINK__FROM: | ||
242 | setFrom((FunctionalOutput)newValue); | ||
243 | return; | ||
244 | case famPackage.INFORMATION_LINK__TO: | ||
245 | setTo((FunctionalInput)newValue); | ||
246 | return; | ||
247 | } | ||
248 | super.eSet(featureID, newValue); | ||
249 | } | ||
250 | |||
251 | /** | ||
252 | * <!-- begin-user-doc --> | ||
253 | * <!-- end-user-doc --> | ||
254 | * @generated | ||
255 | */ | ||
256 | @Override | ||
257 | public void eUnset(int featureID) { | ||
258 | switch (featureID) { | ||
259 | case famPackage.INFORMATION_LINK__FROM: | ||
260 | setFrom((FunctionalOutput)null); | ||
261 | return; | ||
262 | case famPackage.INFORMATION_LINK__TO: | ||
263 | setTo((FunctionalInput)null); | ||
264 | return; | ||
265 | } | ||
266 | super.eUnset(featureID); | ||
267 | } | ||
268 | |||
269 | /** | ||
270 | * <!-- begin-user-doc --> | ||
271 | * <!-- end-user-doc --> | ||
272 | * @generated | ||
273 | */ | ||
274 | @Override | ||
275 | public boolean eIsSet(int featureID) { | ||
276 | switch (featureID) { | ||
277 | case famPackage.INFORMATION_LINK__FROM: | ||
278 | return getFrom() != null; | ||
279 | case famPackage.INFORMATION_LINK__TO: | ||
280 | return to != null; | ||
281 | } | ||
282 | return super.eIsSet(featureID); | ||
283 | } | ||
284 | |||
285 | } //InformationLinkImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/famFactoryImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/famFactoryImpl.java new file mode 100644 index 00000000..5c2a9c51 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/famFactoryImpl.java | |||
@@ -0,0 +1,219 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EClass; | ||
6 | import org.eclipse.emf.ecore.EDataType; | ||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | import org.eclipse.emf.ecore.EPackage; | ||
9 | import org.eclipse.emf.ecore.impl.EFactoryImpl; | ||
10 | import org.eclipse.emf.ecore.plugin.EcorePlugin; | ||
11 | |||
12 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator; | ||
13 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function; | ||
14 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType; | ||
15 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel; | ||
16 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput; | ||
17 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface; | ||
18 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput; | ||
19 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink; | ||
20 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famFactory; | ||
21 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
22 | |||
23 | /** | ||
24 | * <!-- begin-user-doc --> | ||
25 | * An implementation of the model <b>Factory</b>. | ||
26 | * <!-- end-user-doc --> | ||
27 | * @generated | ||
28 | */ | ||
29 | public class famFactoryImpl extends EFactoryImpl implements famFactory { | ||
30 | /** | ||
31 | * Creates the default factory implementation. | ||
32 | * <!-- begin-user-doc --> | ||
33 | * <!-- end-user-doc --> | ||
34 | * @generated | ||
35 | */ | ||
36 | public static famFactory init() { | ||
37 | try { | ||
38 | famFactory thefamFactory = (famFactory)EPackage.Registry.INSTANCE.getEFactory(famPackage.eNS_URI); | ||
39 | if (thefamFactory != null) { | ||
40 | return thefamFactory; | ||
41 | } | ||
42 | } | ||
43 | catch (Exception exception) { | ||
44 | EcorePlugin.INSTANCE.log(exception); | ||
45 | } | ||
46 | return new famFactoryImpl(); | ||
47 | } | ||
48 | |||
49 | /** | ||
50 | * Creates an instance of the factory. | ||
51 | * <!-- begin-user-doc --> | ||
52 | * <!-- end-user-doc --> | ||
53 | * @generated | ||
54 | */ | ||
55 | public famFactoryImpl() { | ||
56 | super(); | ||
57 | } | ||
58 | |||
59 | /** | ||
60 | * <!-- begin-user-doc --> | ||
61 | * <!-- end-user-doc --> | ||
62 | * @generated | ||
63 | */ | ||
64 | @Override | ||
65 | public EObject create(EClass eClass) { | ||
66 | switch (eClass.getClassifierID()) { | ||
67 | case famPackage.FUNCTIONAL_ARCHITECTURE_MODEL: return createFunctionalArchitectureModel(); | ||
68 | case famPackage.FUNCTION: return createFunction(); | ||
69 | case famPackage.FAM_TERMINATOR: return createFAMTerminator(); | ||
70 | case famPackage.INFORMATION_LINK: return createInformationLink(); | ||
71 | case famPackage.FUNCTIONAL_INTERFACE: return createFunctionalInterface(); | ||
72 | case famPackage.FUNCTIONAL_INPUT: return createFunctionalInput(); | ||
73 | case famPackage.FUNCTIONAL_OUTPUT: return createFunctionalOutput(); | ||
74 | default: | ||
75 | throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); | ||
76 | } | ||
77 | } | ||
78 | |||
79 | /** | ||
80 | * <!-- begin-user-doc --> | ||
81 | * <!-- end-user-doc --> | ||
82 | * @generated | ||
83 | */ | ||
84 | @Override | ||
85 | public Object createFromString(EDataType eDataType, String initialValue) { | ||
86 | switch (eDataType.getClassifierID()) { | ||
87 | case famPackage.FUNCTION_TYPE: | ||
88 | return createFunctionTypeFromString(eDataType, initialValue); | ||
89 | default: | ||
90 | throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); | ||
91 | } | ||
92 | } | ||
93 | |||
94 | /** | ||
95 | * <!-- begin-user-doc --> | ||
96 | * <!-- end-user-doc --> | ||
97 | * @generated | ||
98 | */ | ||
99 | @Override | ||
100 | public String convertToString(EDataType eDataType, Object instanceValue) { | ||
101 | switch (eDataType.getClassifierID()) { | ||
102 | case famPackage.FUNCTION_TYPE: | ||
103 | return convertFunctionTypeToString(eDataType, instanceValue); | ||
104 | default: | ||
105 | throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); | ||
106 | } | ||
107 | } | ||
108 | |||
109 | /** | ||
110 | * <!-- begin-user-doc --> | ||
111 | * <!-- end-user-doc --> | ||
112 | * @generated | ||
113 | */ | ||
114 | public FunctionalArchitectureModel createFunctionalArchitectureModel() { | ||
115 | FunctionalArchitectureModelImpl functionalArchitectureModel = new FunctionalArchitectureModelImpl(); | ||
116 | return functionalArchitectureModel; | ||
117 | } | ||
118 | |||
119 | /** | ||
120 | * <!-- begin-user-doc --> | ||
121 | * <!-- end-user-doc --> | ||
122 | * @generated | ||
123 | */ | ||
124 | public Function createFunction() { | ||
125 | FunctionImpl function = new FunctionImpl(); | ||
126 | return function; | ||
127 | } | ||
128 | |||
129 | /** | ||
130 | * <!-- begin-user-doc --> | ||
131 | * <!-- end-user-doc --> | ||
132 | * @generated | ||
133 | */ | ||
134 | public FAMTerminator createFAMTerminator() { | ||
135 | FAMTerminatorImpl famTerminator = new FAMTerminatorImpl(); | ||
136 | return famTerminator; | ||
137 | } | ||
138 | |||
139 | /** | ||
140 | * <!-- begin-user-doc --> | ||
141 | * <!-- end-user-doc --> | ||
142 | * @generated | ||
143 | */ | ||
144 | public InformationLink createInformationLink() { | ||
145 | InformationLinkImpl informationLink = new InformationLinkImpl(); | ||
146 | return informationLink; | ||
147 | } | ||
148 | |||
149 | /** | ||
150 | * <!-- begin-user-doc --> | ||
151 | * <!-- end-user-doc --> | ||
152 | * @generated | ||
153 | */ | ||
154 | public FunctionalInterface createFunctionalInterface() { | ||
155 | FunctionalInterfaceImpl functionalInterface = new FunctionalInterfaceImpl(); | ||
156 | return functionalInterface; | ||
157 | } | ||
158 | |||
159 | /** | ||
160 | * <!-- begin-user-doc --> | ||
161 | * <!-- end-user-doc --> | ||
162 | * @generated | ||
163 | */ | ||
164 | public FunctionalInput createFunctionalInput() { | ||
165 | FunctionalInputImpl functionalInput = new FunctionalInputImpl(); | ||
166 | return functionalInput; | ||
167 | } | ||
168 | |||
169 | /** | ||
170 | * <!-- begin-user-doc --> | ||
171 | * <!-- end-user-doc --> | ||
172 | * @generated | ||
173 | */ | ||
174 | public FunctionalOutput createFunctionalOutput() { | ||
175 | FunctionalOutputImpl functionalOutput = new FunctionalOutputImpl(); | ||
176 | return functionalOutput; | ||
177 | } | ||
178 | |||
179 | /** | ||
180 | * <!-- begin-user-doc --> | ||
181 | * <!-- end-user-doc --> | ||
182 | * @generated | ||
183 | */ | ||
184 | public FunctionType createFunctionTypeFromString(EDataType eDataType, String initialValue) { | ||
185 | FunctionType result = FunctionType.get(initialValue); | ||
186 | if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); | ||
187 | return result; | ||
188 | } | ||
189 | |||
190 | /** | ||
191 | * <!-- begin-user-doc --> | ||
192 | * <!-- end-user-doc --> | ||
193 | * @generated | ||
194 | */ | ||
195 | public String convertFunctionTypeToString(EDataType eDataType, Object instanceValue) { | ||
196 | return instanceValue == null ? null : instanceValue.toString(); | ||
197 | } | ||
198 | |||
199 | /** | ||
200 | * <!-- begin-user-doc --> | ||
201 | * <!-- end-user-doc --> | ||
202 | * @generated | ||
203 | */ | ||
204 | public famPackage getfamPackage() { | ||
205 | return (famPackage)getEPackage(); | ||
206 | } | ||
207 | |||
208 | /** | ||
209 | * <!-- begin-user-doc --> | ||
210 | * <!-- end-user-doc --> | ||
211 | * @deprecated | ||
212 | * @generated | ||
213 | */ | ||
214 | @Deprecated | ||
215 | public static famPackage getPackage() { | ||
216 | return famPackage.eINSTANCE; | ||
217 | } | ||
218 | |||
219 | } //famFactoryImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/famPackageImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/famPackageImpl.java new file mode 100644 index 00000000..e928e04e --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/impl/famPackageImpl.java | |||
@@ -0,0 +1,574 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionType; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel; | ||
9 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData; | ||
10 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement; | ||
11 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput; | ||
12 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface; | ||
13 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput; | ||
14 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink; | ||
15 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famFactory; | ||
16 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
17 | |||
18 | import org.eclipse.emf.ecore.EAttribute; | ||
19 | import org.eclipse.emf.ecore.EClass; | ||
20 | import org.eclipse.emf.ecore.EEnum; | ||
21 | import org.eclipse.emf.ecore.EPackage; | ||
22 | import org.eclipse.emf.ecore.EReference; | ||
23 | |||
24 | import org.eclipse.emf.ecore.impl.EPackageImpl; | ||
25 | |||
26 | /** | ||
27 | * <!-- begin-user-doc --> | ||
28 | * An implementation of the model <b>Package</b>. | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | public class famPackageImpl extends EPackageImpl implements famPackage { | ||
33 | /** | ||
34 | * <!-- begin-user-doc --> | ||
35 | * <!-- end-user-doc --> | ||
36 | * @generated | ||
37 | */ | ||
38 | private EClass functionalElementEClass = null; | ||
39 | |||
40 | /** | ||
41 | * <!-- begin-user-doc --> | ||
42 | * <!-- end-user-doc --> | ||
43 | * @generated | ||
44 | */ | ||
45 | private EClass functionalArchitectureModelEClass = null; | ||
46 | |||
47 | /** | ||
48 | * <!-- begin-user-doc --> | ||
49 | * <!-- end-user-doc --> | ||
50 | * @generated | ||
51 | */ | ||
52 | private EClass functionEClass = null; | ||
53 | |||
54 | /** | ||
55 | * <!-- begin-user-doc --> | ||
56 | * <!-- end-user-doc --> | ||
57 | * @generated | ||
58 | */ | ||
59 | private EClass famTerminatorEClass = null; | ||
60 | |||
61 | /** | ||
62 | * <!-- begin-user-doc --> | ||
63 | * <!-- end-user-doc --> | ||
64 | * @generated | ||
65 | */ | ||
66 | private EClass informationLinkEClass = null; | ||
67 | |||
68 | /** | ||
69 | * <!-- begin-user-doc --> | ||
70 | * <!-- end-user-doc --> | ||
71 | * @generated | ||
72 | */ | ||
73 | private EClass functionalInterfaceEClass = null; | ||
74 | |||
75 | /** | ||
76 | * <!-- begin-user-doc --> | ||
77 | * <!-- end-user-doc --> | ||
78 | * @generated | ||
79 | */ | ||
80 | private EClass functionalInputEClass = null; | ||
81 | |||
82 | /** | ||
83 | * <!-- begin-user-doc --> | ||
84 | * <!-- end-user-doc --> | ||
85 | * @generated | ||
86 | */ | ||
87 | private EClass functionalOutputEClass = null; | ||
88 | |||
89 | /** | ||
90 | * <!-- begin-user-doc --> | ||
91 | * <!-- end-user-doc --> | ||
92 | * @generated | ||
93 | */ | ||
94 | private EClass functionalDataEClass = null; | ||
95 | |||
96 | /** | ||
97 | * <!-- begin-user-doc --> | ||
98 | * <!-- end-user-doc --> | ||
99 | * @generated | ||
100 | */ | ||
101 | private EEnum functionTypeEEnum = null; | ||
102 | |||
103 | /** | ||
104 | * Creates an instance of the model <b>Package</b>, registered with | ||
105 | * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package | ||
106 | * package URI value. | ||
107 | * <p>Note: the correct way to create the package is via the static | ||
108 | * factory method {@link #init init()}, which also performs | ||
109 | * initialization of the package, or returns the registered package, | ||
110 | * if one already exists. | ||
111 | * <!-- begin-user-doc --> | ||
112 | * <!-- end-user-doc --> | ||
113 | * @see org.eclipse.emf.ecore.EPackage.Registry | ||
114 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage#eNS_URI | ||
115 | * @see #init() | ||
116 | * @generated | ||
117 | */ | ||
118 | private famPackageImpl() { | ||
119 | super(eNS_URI, famFactory.eINSTANCE); | ||
120 | } | ||
121 | |||
122 | /** | ||
123 | * <!-- begin-user-doc --> | ||
124 | * <!-- end-user-doc --> | ||
125 | * @generated | ||
126 | */ | ||
127 | private static boolean isInited = false; | ||
128 | |||
129 | /** | ||
130 | * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. | ||
131 | * | ||
132 | * <p>This method is used to initialize {@link famPackage#eINSTANCE} when that field is accessed. | ||
133 | * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. | ||
134 | * <!-- begin-user-doc --> | ||
135 | * <!-- end-user-doc --> | ||
136 | * @see #eNS_URI | ||
137 | * @see #createPackageContents() | ||
138 | * @see #initializePackageContents() | ||
139 | * @generated | ||
140 | */ | ||
141 | public static famPackage init() { | ||
142 | if (isInited) return (famPackage)EPackage.Registry.INSTANCE.getEPackage(famPackage.eNS_URI); | ||
143 | |||
144 | // Obtain or create and register package | ||
145 | famPackageImpl thefamPackage = (famPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof famPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new famPackageImpl()); | ||
146 | |||
147 | isInited = true; | ||
148 | |||
149 | // Create package meta-data objects | ||
150 | thefamPackage.createPackageContents(); | ||
151 | |||
152 | // Initialize created meta-data | ||
153 | thefamPackage.initializePackageContents(); | ||
154 | |||
155 | // Mark meta-data to indicate it can't be changed | ||
156 | thefamPackage.freeze(); | ||
157 | |||
158 | |||
159 | // Update the registry and return the package | ||
160 | EPackage.Registry.INSTANCE.put(famPackage.eNS_URI, thefamPackage); | ||
161 | return thefamPackage; | ||
162 | } | ||
163 | |||
164 | /** | ||
165 | * <!-- begin-user-doc --> | ||
166 | * <!-- end-user-doc --> | ||
167 | * @generated | ||
168 | */ | ||
169 | public EClass getFunctionalElement() { | ||
170 | return functionalElementEClass; | ||
171 | } | ||
172 | |||
173 | /** | ||
174 | * <!-- begin-user-doc --> | ||
175 | * <!-- end-user-doc --> | ||
176 | * @generated | ||
177 | */ | ||
178 | public EReference getFunctionalElement_Interface() { | ||
179 | return (EReference)functionalElementEClass.getEStructuralFeatures().get(0); | ||
180 | } | ||
181 | |||
182 | /** | ||
183 | * <!-- begin-user-doc --> | ||
184 | * <!-- end-user-doc --> | ||
185 | * @generated | ||
186 | */ | ||
187 | public EReference getFunctionalElement_Model() { | ||
188 | return (EReference)functionalElementEClass.getEStructuralFeatures().get(1); | ||
189 | } | ||
190 | |||
191 | /** | ||
192 | * <!-- begin-user-doc --> | ||
193 | * <!-- end-user-doc --> | ||
194 | * @generated | ||
195 | */ | ||
196 | public EReference getFunctionalElement_Parent() { | ||
197 | return (EReference)functionalElementEClass.getEStructuralFeatures().get(2); | ||
198 | } | ||
199 | |||
200 | /** | ||
201 | * <!-- begin-user-doc --> | ||
202 | * <!-- end-user-doc --> | ||
203 | * @generated | ||
204 | */ | ||
205 | public EClass getFunctionalArchitectureModel() { | ||
206 | return functionalArchitectureModelEClass; | ||
207 | } | ||
208 | |||
209 | /** | ||
210 | * <!-- begin-user-doc --> | ||
211 | * <!-- end-user-doc --> | ||
212 | * @generated | ||
213 | */ | ||
214 | public EReference getFunctionalArchitectureModel_RootElements() { | ||
215 | return (EReference)functionalArchitectureModelEClass.getEStructuralFeatures().get(0); | ||
216 | } | ||
217 | |||
218 | /** | ||
219 | * <!-- begin-user-doc --> | ||
220 | * <!-- end-user-doc --> | ||
221 | * @generated | ||
222 | */ | ||
223 | public EClass getFunction() { | ||
224 | return functionEClass; | ||
225 | } | ||
226 | |||
227 | /** | ||
228 | * <!-- begin-user-doc --> | ||
229 | * <!-- end-user-doc --> | ||
230 | * @generated | ||
231 | */ | ||
232 | public EReference getFunction_SubElements() { | ||
233 | return (EReference)functionEClass.getEStructuralFeatures().get(0); | ||
234 | } | ||
235 | |||
236 | /** | ||
237 | * <!-- begin-user-doc --> | ||
238 | * <!-- end-user-doc --> | ||
239 | * @generated | ||
240 | */ | ||
241 | public EAttribute getFunction_Type() { | ||
242 | return (EAttribute)functionEClass.getEStructuralFeatures().get(1); | ||
243 | } | ||
244 | |||
245 | /** | ||
246 | * <!-- begin-user-doc --> | ||
247 | * <!-- end-user-doc --> | ||
248 | * @generated | ||
249 | */ | ||
250 | public EClass getFAMTerminator() { | ||
251 | return famTerminatorEClass; | ||
252 | } | ||
253 | |||
254 | /** | ||
255 | * <!-- begin-user-doc --> | ||
256 | * <!-- end-user-doc --> | ||
257 | * @generated | ||
258 | */ | ||
259 | public EReference getFAMTerminator_Data() { | ||
260 | return (EReference)famTerminatorEClass.getEStructuralFeatures().get(0); | ||
261 | } | ||
262 | |||
263 | /** | ||
264 | * <!-- begin-user-doc --> | ||
265 | * <!-- end-user-doc --> | ||
266 | * @generated | ||
267 | */ | ||
268 | public EClass getInformationLink() { | ||
269 | return informationLinkEClass; | ||
270 | } | ||
271 | |||
272 | /** | ||
273 | * <!-- begin-user-doc --> | ||
274 | * <!-- end-user-doc --> | ||
275 | * @generated | ||
276 | */ | ||
277 | public EReference getInformationLink_From() { | ||
278 | return (EReference)informationLinkEClass.getEStructuralFeatures().get(0); | ||
279 | } | ||
280 | |||
281 | /** | ||
282 | * <!-- begin-user-doc --> | ||
283 | * <!-- end-user-doc --> | ||
284 | * @generated | ||
285 | */ | ||
286 | public EReference getInformationLink_To() { | ||
287 | return (EReference)informationLinkEClass.getEStructuralFeatures().get(1); | ||
288 | } | ||
289 | |||
290 | /** | ||
291 | * <!-- begin-user-doc --> | ||
292 | * <!-- end-user-doc --> | ||
293 | * @generated | ||
294 | */ | ||
295 | public EClass getFunctionalInterface() { | ||
296 | return functionalInterfaceEClass; | ||
297 | } | ||
298 | |||
299 | /** | ||
300 | * <!-- begin-user-doc --> | ||
301 | * <!-- end-user-doc --> | ||
302 | * @generated | ||
303 | */ | ||
304 | public EReference getFunctionalInterface_Data() { | ||
305 | return (EReference)functionalInterfaceEClass.getEStructuralFeatures().get(0); | ||
306 | } | ||
307 | |||
308 | /** | ||
309 | * <!-- begin-user-doc --> | ||
310 | * <!-- end-user-doc --> | ||
311 | * @generated | ||
312 | */ | ||
313 | public EReference getFunctionalInterface_Element() { | ||
314 | return (EReference)functionalInterfaceEClass.getEStructuralFeatures().get(1); | ||
315 | } | ||
316 | |||
317 | /** | ||
318 | * <!-- begin-user-doc --> | ||
319 | * <!-- end-user-doc --> | ||
320 | * @generated | ||
321 | */ | ||
322 | public EClass getFunctionalInput() { | ||
323 | return functionalInputEClass; | ||
324 | } | ||
325 | |||
326 | /** | ||
327 | * <!-- begin-user-doc --> | ||
328 | * <!-- end-user-doc --> | ||
329 | * @generated | ||
330 | */ | ||
331 | public EReference getFunctionalInput_IncomingLinks() { | ||
332 | return (EReference)functionalInputEClass.getEStructuralFeatures().get(0); | ||
333 | } | ||
334 | |||
335 | /** | ||
336 | * <!-- begin-user-doc --> | ||
337 | * <!-- end-user-doc --> | ||
338 | * @generated | ||
339 | */ | ||
340 | public EClass getFunctionalOutput() { | ||
341 | return functionalOutputEClass; | ||
342 | } | ||
343 | |||
344 | /** | ||
345 | * <!-- begin-user-doc --> | ||
346 | * <!-- end-user-doc --> | ||
347 | * @generated | ||
348 | */ | ||
349 | public EReference getFunctionalOutput_OutgoingLinks() { | ||
350 | return (EReference)functionalOutputEClass.getEStructuralFeatures().get(0); | ||
351 | } | ||
352 | |||
353 | /** | ||
354 | * <!-- begin-user-doc --> | ||
355 | * <!-- end-user-doc --> | ||
356 | * @generated | ||
357 | */ | ||
358 | public EClass getFunctionalData() { | ||
359 | return functionalDataEClass; | ||
360 | } | ||
361 | |||
362 | /** | ||
363 | * <!-- begin-user-doc --> | ||
364 | * <!-- end-user-doc --> | ||
365 | * @generated | ||
366 | */ | ||
367 | public EReference getFunctionalData_Terminator() { | ||
368 | return (EReference)functionalDataEClass.getEStructuralFeatures().get(0); | ||
369 | } | ||
370 | |||
371 | /** | ||
372 | * <!-- begin-user-doc --> | ||
373 | * <!-- end-user-doc --> | ||
374 | * @generated | ||
375 | */ | ||
376 | public EReference getFunctionalData_Interface() { | ||
377 | return (EReference)functionalDataEClass.getEStructuralFeatures().get(1); | ||
378 | } | ||
379 | |||
380 | /** | ||
381 | * <!-- begin-user-doc --> | ||
382 | * <!-- end-user-doc --> | ||
383 | * @generated | ||
384 | */ | ||
385 | public EEnum getFunctionType() { | ||
386 | return functionTypeEEnum; | ||
387 | } | ||
388 | |||
389 | /** | ||
390 | * <!-- begin-user-doc --> | ||
391 | * <!-- end-user-doc --> | ||
392 | * @generated | ||
393 | */ | ||
394 | public famFactory getfamFactory() { | ||
395 | return (famFactory)getEFactoryInstance(); | ||
396 | } | ||
397 | |||
398 | /** | ||
399 | * <!-- begin-user-doc --> | ||
400 | * <!-- end-user-doc --> | ||
401 | * @generated | ||
402 | */ | ||
403 | private boolean isCreated = false; | ||
404 | |||
405 | /** | ||
406 | * Creates the meta-model objects for the package. This method is | ||
407 | * guarded to have no affect on any invocation but its first. | ||
408 | * <!-- begin-user-doc --> | ||
409 | * <!-- end-user-doc --> | ||
410 | * @generated | ||
411 | */ | ||
412 | public void createPackageContents() { | ||
413 | if (isCreated) return; | ||
414 | isCreated = true; | ||
415 | |||
416 | // Create classes and their features | ||
417 | functionalElementEClass = createEClass(FUNCTIONAL_ELEMENT); | ||
418 | createEReference(functionalElementEClass, FUNCTIONAL_ELEMENT__INTERFACE); | ||
419 | createEReference(functionalElementEClass, FUNCTIONAL_ELEMENT__MODEL); | ||
420 | createEReference(functionalElementEClass, FUNCTIONAL_ELEMENT__PARENT); | ||
421 | |||
422 | functionalArchitectureModelEClass = createEClass(FUNCTIONAL_ARCHITECTURE_MODEL); | ||
423 | createEReference(functionalArchitectureModelEClass, FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS); | ||
424 | |||
425 | functionEClass = createEClass(FUNCTION); | ||
426 | createEReference(functionEClass, FUNCTION__SUB_ELEMENTS); | ||
427 | createEAttribute(functionEClass, FUNCTION__TYPE); | ||
428 | |||
429 | famTerminatorEClass = createEClass(FAM_TERMINATOR); | ||
430 | createEReference(famTerminatorEClass, FAM_TERMINATOR__DATA); | ||
431 | |||
432 | informationLinkEClass = createEClass(INFORMATION_LINK); | ||
433 | createEReference(informationLinkEClass, INFORMATION_LINK__FROM); | ||
434 | createEReference(informationLinkEClass, INFORMATION_LINK__TO); | ||
435 | |||
436 | functionalInterfaceEClass = createEClass(FUNCTIONAL_INTERFACE); | ||
437 | createEReference(functionalInterfaceEClass, FUNCTIONAL_INTERFACE__DATA); | ||
438 | createEReference(functionalInterfaceEClass, FUNCTIONAL_INTERFACE__ELEMENT); | ||
439 | |||
440 | functionalInputEClass = createEClass(FUNCTIONAL_INPUT); | ||
441 | createEReference(functionalInputEClass, FUNCTIONAL_INPUT__INCOMING_LINKS); | ||
442 | |||
443 | functionalOutputEClass = createEClass(FUNCTIONAL_OUTPUT); | ||
444 | createEReference(functionalOutputEClass, FUNCTIONAL_OUTPUT__OUTGOING_LINKS); | ||
445 | |||
446 | functionalDataEClass = createEClass(FUNCTIONAL_DATA); | ||
447 | createEReference(functionalDataEClass, FUNCTIONAL_DATA__TERMINATOR); | ||
448 | createEReference(functionalDataEClass, FUNCTIONAL_DATA__INTERFACE); | ||
449 | |||
450 | // Create enums | ||
451 | functionTypeEEnum = createEEnum(FUNCTION_TYPE); | ||
452 | } | ||
453 | |||
454 | /** | ||
455 | * <!-- begin-user-doc --> | ||
456 | * <!-- end-user-doc --> | ||
457 | * @generated | ||
458 | */ | ||
459 | private boolean isInitialized = false; | ||
460 | |||
461 | /** | ||
462 | * Complete the initialization of the package and its meta-model. This | ||
463 | * method is guarded to have no affect on any invocation but its first. | ||
464 | * <!-- begin-user-doc --> | ||
465 | * <!-- end-user-doc --> | ||
466 | * @generated | ||
467 | */ | ||
468 | public void initializePackageContents() { | ||
469 | if (isInitialized) return; | ||
470 | isInitialized = true; | ||
471 | |||
472 | // Initialize package | ||
473 | setName(eNAME); | ||
474 | setNsPrefix(eNS_PREFIX); | ||
475 | setNsURI(eNS_URI); | ||
476 | |||
477 | // Create type parameters | ||
478 | |||
479 | // Set bounds for type parameters | ||
480 | |||
481 | // Add supertypes to classes | ||
482 | functionEClass.getESuperTypes().add(this.getFunctionalElement()); | ||
483 | functionalInputEClass.getESuperTypes().add(this.getFunctionalData()); | ||
484 | functionalOutputEClass.getESuperTypes().add(this.getFunctionalData()); | ||
485 | |||
486 | // Initialize classes, features, and operations; add parameters | ||
487 | initEClass(functionalElementEClass, FunctionalElement.class, "FunctionalElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
488 | initEReference(getFunctionalElement_Interface(), this.getFunctionalInterface(), this.getFunctionalInterface_Element(), "interface", null, 0, 1, FunctionalElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
489 | initEReference(getFunctionalElement_Model(), this.getFunctionalArchitectureModel(), null, "model", null, 1, 1, FunctionalElement.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED); | ||
490 | initEReference(getFunctionalElement_Parent(), this.getFunction(), this.getFunction_SubElements(), "parent", null, 0, 1, FunctionalElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
491 | |||
492 | initEClass(functionalArchitectureModelEClass, FunctionalArchitectureModel.class, "FunctionalArchitectureModel", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
493 | initEReference(getFunctionalArchitectureModel_RootElements(), this.getFunctionalElement(), null, "rootElements", null, 0, -1, FunctionalArchitectureModel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
494 | |||
495 | initEClass(functionEClass, Function.class, "Function", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
496 | initEReference(getFunction_SubElements(), this.getFunctionalElement(), this.getFunctionalElement_Parent(), "subElements", null, 0, -1, Function.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
497 | initEAttribute(getFunction_Type(), this.getFunctionType(), "type", null, 1, 1, Function.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); | ||
498 | |||
499 | initEClass(famTerminatorEClass, FAMTerminator.class, "FAMTerminator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
500 | initEReference(getFAMTerminator_Data(), this.getFunctionalData(), this.getFunctionalData_Terminator(), "data", null, 0, 1, FAMTerminator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
501 | |||
502 | initEClass(informationLinkEClass, InformationLink.class, "InformationLink", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
503 | initEReference(getInformationLink_From(), this.getFunctionalOutput(), this.getFunctionalOutput_OutgoingLinks(), "from", null, 0, 1, InformationLink.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
504 | initEReference(getInformationLink_To(), this.getFunctionalInput(), this.getFunctionalInput_IncomingLinks(), "to", null, 1, 1, InformationLink.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
505 | |||
506 | initEClass(functionalInterfaceEClass, FunctionalInterface.class, "FunctionalInterface", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
507 | initEReference(getFunctionalInterface_Data(), this.getFunctionalData(), this.getFunctionalData_Interface(), "data", null, 0, -1, FunctionalInterface.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
508 | initEReference(getFunctionalInterface_Element(), this.getFunctionalElement(), this.getFunctionalElement_Interface(), "element", null, 0, 1, FunctionalInterface.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
509 | |||
510 | initEClass(functionalInputEClass, FunctionalInput.class, "FunctionalInput", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
511 | initEReference(getFunctionalInput_IncomingLinks(), this.getInformationLink(), this.getInformationLink_To(), "IncomingLinks", null, 0, -1, FunctionalInput.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
512 | |||
513 | initEClass(functionalOutputEClass, FunctionalOutput.class, "FunctionalOutput", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
514 | initEReference(getFunctionalOutput_OutgoingLinks(), this.getInformationLink(), this.getInformationLink_From(), "outgoingLinks", null, 0, -1, FunctionalOutput.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
515 | |||
516 | initEClass(functionalDataEClass, FunctionalData.class, "FunctionalData", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
517 | initEReference(getFunctionalData_Terminator(), this.getFAMTerminator(), this.getFAMTerminator_Data(), "terminator", null, 0, 1, FunctionalData.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
518 | initEReference(getFunctionalData_Interface(), this.getFunctionalInterface(), this.getFunctionalInterface_Data(), "interface", null, 0, 1, FunctionalData.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
519 | |||
520 | // Initialize enums and add enum literals | ||
521 | initEEnum(functionTypeEEnum, FunctionType.class, "FunctionType"); | ||
522 | addEEnumLiteral(functionTypeEEnum, FunctionType.ROOT); | ||
523 | addEEnumLiteral(functionTypeEEnum, FunctionType.INTERMEDIATE); | ||
524 | addEEnumLiteral(functionTypeEEnum, FunctionType.LEAF); | ||
525 | |||
526 | // Create resource | ||
527 | createResource(eNS_URI); | ||
528 | |||
529 | // Create annotations | ||
530 | // http://www.eclipse.org/emf/2002/Ecore | ||
531 | createEcoreAnnotations(); | ||
532 | // org.eclipse.viatra.query.querybasedfeature | ||
533 | createOrgAnnotations(); | ||
534 | } | ||
535 | |||
536 | /** | ||
537 | * Initializes the annotations for <b>http://www.eclipse.org/emf/2002/Ecore</b>. | ||
538 | * <!-- begin-user-doc --> | ||
539 | * <!-- end-user-doc --> | ||
540 | * @generated | ||
541 | */ | ||
542 | protected void createEcoreAnnotations() { | ||
543 | String source = "http://www.eclipse.org/emf/2002/Ecore"; | ||
544 | addAnnotation | ||
545 | (this, | ||
546 | source, | ||
547 | new String[] { | ||
548 | "settingDelegates", "org.eclipse.viatra.query.querybasedfeature" | ||
549 | }); | ||
550 | } | ||
551 | |||
552 | /** | ||
553 | * Initializes the annotations for <b>org.eclipse.viatra.query.querybasedfeature</b>. | ||
554 | * <!-- begin-user-doc --> | ||
555 | * <!-- end-user-doc --> | ||
556 | * @generated | ||
557 | */ | ||
558 | protected void createOrgAnnotations() { | ||
559 | String source = "org.eclipse.viatra.query.querybasedfeature"; | ||
560 | addAnnotation | ||
561 | (getFunctionalElement_Model(), | ||
562 | source, | ||
563 | new String[] { | ||
564 | "patternFQN", "ca.mcgill.ecse.dslreasoner.standalone.test.fam.queries.model" | ||
565 | }); | ||
566 | addAnnotation | ||
567 | (getFunction_Type(), | ||
568 | source, | ||
569 | new String[] { | ||
570 | "patternFQN", "ca.mcgill.ecse.dslreasoner.standalone.test.fam.queries.type" | ||
571 | }); | ||
572 | } | ||
573 | |||
574 | } //famPackageImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/util/famAdapterFactory.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/util/famAdapterFactory.java new file mode 100644 index 00000000..b5a4e37b --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/util/famAdapterFactory.java | |||
@@ -0,0 +1,271 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.util; | ||
4 | |||
5 | import org.eclipse.emf.common.notify.Adapter; | ||
6 | import org.eclipse.emf.common.notify.Notifier; | ||
7 | import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; | ||
8 | import org.eclipse.emf.ecore.EObject; | ||
9 | |||
10 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator; | ||
11 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function; | ||
12 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel; | ||
13 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData; | ||
14 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement; | ||
15 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput; | ||
16 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface; | ||
17 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput; | ||
18 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink; | ||
19 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
20 | |||
21 | /** | ||
22 | * <!-- begin-user-doc --> | ||
23 | * The <b>Adapter Factory</b> for the model. | ||
24 | * It provides an adapter <code>createXXX</code> method for each class of the model. | ||
25 | * <!-- end-user-doc --> | ||
26 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage | ||
27 | * @generated | ||
28 | */ | ||
29 | public class famAdapterFactory extends AdapterFactoryImpl { | ||
30 | /** | ||
31 | * The cached model package. | ||
32 | * <!-- begin-user-doc --> | ||
33 | * <!-- end-user-doc --> | ||
34 | * @generated | ||
35 | */ | ||
36 | protected static famPackage modelPackage; | ||
37 | |||
38 | /** | ||
39 | * Creates an instance of the adapter factory. | ||
40 | * <!-- begin-user-doc --> | ||
41 | * <!-- end-user-doc --> | ||
42 | * @generated | ||
43 | */ | ||
44 | public famAdapterFactory() { | ||
45 | if (modelPackage == null) { | ||
46 | modelPackage = famPackage.eINSTANCE; | ||
47 | } | ||
48 | } | ||
49 | |||
50 | /** | ||
51 | * Returns whether this factory is applicable for the type of the object. | ||
52 | * <!-- begin-user-doc --> | ||
53 | * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. | ||
54 | * <!-- end-user-doc --> | ||
55 | * @return whether this factory is applicable for the type of the object. | ||
56 | * @generated | ||
57 | */ | ||
58 | @Override | ||
59 | public boolean isFactoryForType(Object object) { | ||
60 | if (object == modelPackage) { | ||
61 | return true; | ||
62 | } | ||
63 | if (object instanceof EObject) { | ||
64 | return ((EObject)object).eClass().getEPackage() == modelPackage; | ||
65 | } | ||
66 | return false; | ||
67 | } | ||
68 | |||
69 | /** | ||
70 | * The switch that delegates to the <code>createXXX</code> methods. | ||
71 | * <!-- begin-user-doc --> | ||
72 | * <!-- end-user-doc --> | ||
73 | * @generated | ||
74 | */ | ||
75 | protected famSwitch<Adapter> modelSwitch = | ||
76 | new famSwitch<Adapter>() { | ||
77 | @Override | ||
78 | public Adapter caseFunctionalElement(FunctionalElement object) { | ||
79 | return createFunctionalElementAdapter(); | ||
80 | } | ||
81 | @Override | ||
82 | public Adapter caseFunctionalArchitectureModel(FunctionalArchitectureModel object) { | ||
83 | return createFunctionalArchitectureModelAdapter(); | ||
84 | } | ||
85 | @Override | ||
86 | public Adapter caseFunction(Function object) { | ||
87 | return createFunctionAdapter(); | ||
88 | } | ||
89 | @Override | ||
90 | public Adapter caseFAMTerminator(FAMTerminator object) { | ||
91 | return createFAMTerminatorAdapter(); | ||
92 | } | ||
93 | @Override | ||
94 | public Adapter caseInformationLink(InformationLink object) { | ||
95 | return createInformationLinkAdapter(); | ||
96 | } | ||
97 | @Override | ||
98 | public Adapter caseFunctionalInterface(FunctionalInterface object) { | ||
99 | return createFunctionalInterfaceAdapter(); | ||
100 | } | ||
101 | @Override | ||
102 | public Adapter caseFunctionalInput(FunctionalInput object) { | ||
103 | return createFunctionalInputAdapter(); | ||
104 | } | ||
105 | @Override | ||
106 | public Adapter caseFunctionalOutput(FunctionalOutput object) { | ||
107 | return createFunctionalOutputAdapter(); | ||
108 | } | ||
109 | @Override | ||
110 | public Adapter caseFunctionalData(FunctionalData object) { | ||
111 | return createFunctionalDataAdapter(); | ||
112 | } | ||
113 | @Override | ||
114 | public Adapter defaultCase(EObject object) { | ||
115 | return createEObjectAdapter(); | ||
116 | } | ||
117 | }; | ||
118 | |||
119 | /** | ||
120 | * Creates an adapter for the <code>target</code>. | ||
121 | * <!-- begin-user-doc --> | ||
122 | * <!-- end-user-doc --> | ||
123 | * @param target the object to adapt. | ||
124 | * @return the adapter for the <code>target</code>. | ||
125 | * @generated | ||
126 | */ | ||
127 | @Override | ||
128 | public Adapter createAdapter(Notifier target) { | ||
129 | return modelSwitch.doSwitch((EObject)target); | ||
130 | } | ||
131 | |||
132 | |||
133 | /** | ||
134 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement <em>Functional Element</em>}'. | ||
135 | * <!-- begin-user-doc --> | ||
136 | * This default implementation returns null so that we can easily ignore cases; | ||
137 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
138 | * <!-- end-user-doc --> | ||
139 | * @return the new adapter. | ||
140 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement | ||
141 | * @generated | ||
142 | */ | ||
143 | public Adapter createFunctionalElementAdapter() { | ||
144 | return null; | ||
145 | } | ||
146 | |||
147 | /** | ||
148 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel <em>Functional Architecture Model</em>}'. | ||
149 | * <!-- begin-user-doc --> | ||
150 | * This default implementation returns null so that we can easily ignore cases; | ||
151 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
152 | * <!-- end-user-doc --> | ||
153 | * @return the new adapter. | ||
154 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel | ||
155 | * @generated | ||
156 | */ | ||
157 | public Adapter createFunctionalArchitectureModelAdapter() { | ||
158 | return null; | ||
159 | } | ||
160 | |||
161 | /** | ||
162 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function <em>Function</em>}'. | ||
163 | * <!-- begin-user-doc --> | ||
164 | * This default implementation returns null so that we can easily ignore cases; | ||
165 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
166 | * <!-- end-user-doc --> | ||
167 | * @return the new adapter. | ||
168 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function | ||
169 | * @generated | ||
170 | */ | ||
171 | public Adapter createFunctionAdapter() { | ||
172 | return null; | ||
173 | } | ||
174 | |||
175 | /** | ||
176 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator <em>FAM Terminator</em>}'. | ||
177 | * <!-- begin-user-doc --> | ||
178 | * This default implementation returns null so that we can easily ignore cases; | ||
179 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
180 | * <!-- end-user-doc --> | ||
181 | * @return the new adapter. | ||
182 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator | ||
183 | * @generated | ||
184 | */ | ||
185 | public Adapter createFAMTerminatorAdapter() { | ||
186 | return null; | ||
187 | } | ||
188 | |||
189 | /** | ||
190 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink <em>Information Link</em>}'. | ||
191 | * <!-- begin-user-doc --> | ||
192 | * This default implementation returns null so that we can easily ignore cases; | ||
193 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
194 | * <!-- end-user-doc --> | ||
195 | * @return the new adapter. | ||
196 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink | ||
197 | * @generated | ||
198 | */ | ||
199 | public Adapter createInformationLinkAdapter() { | ||
200 | return null; | ||
201 | } | ||
202 | |||
203 | /** | ||
204 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface <em>Functional Interface</em>}'. | ||
205 | * <!-- begin-user-doc --> | ||
206 | * This default implementation returns null so that we can easily ignore cases; | ||
207 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
208 | * <!-- end-user-doc --> | ||
209 | * @return the new adapter. | ||
210 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface | ||
211 | * @generated | ||
212 | */ | ||
213 | public Adapter createFunctionalInterfaceAdapter() { | ||
214 | return null; | ||
215 | } | ||
216 | |||
217 | /** | ||
218 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput <em>Functional Input</em>}'. | ||
219 | * <!-- begin-user-doc --> | ||
220 | * This default implementation returns null so that we can easily ignore cases; | ||
221 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
222 | * <!-- end-user-doc --> | ||
223 | * @return the new adapter. | ||
224 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput | ||
225 | * @generated | ||
226 | */ | ||
227 | public Adapter createFunctionalInputAdapter() { | ||
228 | return null; | ||
229 | } | ||
230 | |||
231 | /** | ||
232 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput <em>Functional Output</em>}'. | ||
233 | * <!-- begin-user-doc --> | ||
234 | * This default implementation returns null so that we can easily ignore cases; | ||
235 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
236 | * <!-- end-user-doc --> | ||
237 | * @return the new adapter. | ||
238 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput | ||
239 | * @generated | ||
240 | */ | ||
241 | public Adapter createFunctionalOutputAdapter() { | ||
242 | return null; | ||
243 | } | ||
244 | |||
245 | /** | ||
246 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData <em>Functional Data</em>}'. | ||
247 | * <!-- begin-user-doc --> | ||
248 | * This default implementation returns null so that we can easily ignore cases; | ||
249 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
250 | * <!-- end-user-doc --> | ||
251 | * @return the new adapter. | ||
252 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData | ||
253 | * @generated | ||
254 | */ | ||
255 | public Adapter createFunctionalDataAdapter() { | ||
256 | return null; | ||
257 | } | ||
258 | |||
259 | /** | ||
260 | * Creates a new adapter for the default case. | ||
261 | * <!-- begin-user-doc --> | ||
262 | * This default implementation returns null. | ||
263 | * <!-- end-user-doc --> | ||
264 | * @return the new adapter. | ||
265 | * @generated | ||
266 | */ | ||
267 | public Adapter createEObjectAdapter() { | ||
268 | return null; | ||
269 | } | ||
270 | |||
271 | } //famAdapterFactory | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/util/famSwitch.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/util/famSwitch.java new file mode 100644 index 00000000..979bd3e9 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/fam/util/famSwitch.java | |||
@@ -0,0 +1,289 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.fam.util; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EObject; | ||
6 | import org.eclipse.emf.ecore.EPackage; | ||
7 | import org.eclipse.emf.ecore.util.Switch; | ||
8 | |||
9 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FAMTerminator; | ||
10 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.Function; | ||
11 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalArchitectureModel; | ||
12 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalData; | ||
13 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalElement; | ||
14 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInput; | ||
15 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalInterface; | ||
16 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.FunctionalOutput; | ||
17 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.InformationLink; | ||
18 | import ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage; | ||
19 | |||
20 | /** | ||
21 | * <!-- begin-user-doc --> | ||
22 | * The <b>Switch</b> for the model's inheritance hierarchy. | ||
23 | * It supports the call {@link #doSwitch(EObject) doSwitch(object)} | ||
24 | * to invoke the <code>caseXXX</code> method for each class of the model, | ||
25 | * starting with the actual class of the object | ||
26 | * and proceeding up the inheritance hierarchy | ||
27 | * until a non-null result is returned, | ||
28 | * which is the result of the switch. | ||
29 | * <!-- end-user-doc --> | ||
30 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.fam.famPackage | ||
31 | * @generated | ||
32 | */ | ||
33 | public class famSwitch<T> extends Switch<T> { | ||
34 | /** | ||
35 | * The cached model package | ||
36 | * <!-- begin-user-doc --> | ||
37 | * <!-- end-user-doc --> | ||
38 | * @generated | ||
39 | */ | ||
40 | protected static famPackage modelPackage; | ||
41 | |||
42 | /** | ||
43 | * Creates an instance of the switch. | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @generated | ||
47 | */ | ||
48 | public famSwitch() { | ||
49 | if (modelPackage == null) { | ||
50 | modelPackage = famPackage.eINSTANCE; | ||
51 | } | ||
52 | } | ||
53 | |||
54 | /** | ||
55 | * Checks whether this is a switch for the given package. | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <!-- end-user-doc --> | ||
58 | * @param ePackage the package in question. | ||
59 | * @return whether this is a switch for the given package. | ||
60 | * @generated | ||
61 | */ | ||
62 | @Override | ||
63 | protected boolean isSwitchFor(EPackage ePackage) { | ||
64 | return ePackage == modelPackage; | ||
65 | } | ||
66 | |||
67 | /** | ||
68 | * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. | ||
69 | * <!-- begin-user-doc --> | ||
70 | * <!-- end-user-doc --> | ||
71 | * @return the first non-null result returned by a <code>caseXXX</code> call. | ||
72 | * @generated | ||
73 | */ | ||
74 | @Override | ||
75 | protected T doSwitch(int classifierID, EObject theEObject) { | ||
76 | switch (classifierID) { | ||
77 | case famPackage.FUNCTIONAL_ELEMENT: { | ||
78 | FunctionalElement functionalElement = (FunctionalElement)theEObject; | ||
79 | T result = caseFunctionalElement(functionalElement); | ||
80 | if (result == null) result = defaultCase(theEObject); | ||
81 | return result; | ||
82 | } | ||
83 | case famPackage.FUNCTIONAL_ARCHITECTURE_MODEL: { | ||
84 | FunctionalArchitectureModel functionalArchitectureModel = (FunctionalArchitectureModel)theEObject; | ||
85 | T result = caseFunctionalArchitectureModel(functionalArchitectureModel); | ||
86 | if (result == null) result = defaultCase(theEObject); | ||
87 | return result; | ||
88 | } | ||
89 | case famPackage.FUNCTION: { | ||
90 | Function function = (Function)theEObject; | ||
91 | T result = caseFunction(function); | ||
92 | if (result == null) result = caseFunctionalElement(function); | ||
93 | if (result == null) result = defaultCase(theEObject); | ||
94 | return result; | ||
95 | } | ||
96 | case famPackage.FAM_TERMINATOR: { | ||
97 | FAMTerminator famTerminator = (FAMTerminator)theEObject; | ||
98 | T result = caseFAMTerminator(famTerminator); | ||
99 | if (result == null) result = defaultCase(theEObject); | ||
100 | return result; | ||
101 | } | ||
102 | case famPackage.INFORMATION_LINK: { | ||
103 | InformationLink informationLink = (InformationLink)theEObject; | ||
104 | T result = caseInformationLink(informationLink); | ||
105 | if (result == null) result = defaultCase(theEObject); | ||
106 | return result; | ||
107 | } | ||
108 | case famPackage.FUNCTIONAL_INTERFACE: { | ||
109 | FunctionalInterface functionalInterface = (FunctionalInterface)theEObject; | ||
110 | T result = caseFunctionalInterface(functionalInterface); | ||
111 | if (result == null) result = defaultCase(theEObject); | ||
112 | return result; | ||
113 | } | ||
114 | case famPackage.FUNCTIONAL_INPUT: { | ||
115 | FunctionalInput functionalInput = (FunctionalInput)theEObject; | ||
116 | T result = caseFunctionalInput(functionalInput); | ||
117 | if (result == null) result = caseFunctionalData(functionalInput); | ||
118 | if (result == null) result = defaultCase(theEObject); | ||
119 | return result; | ||
120 | } | ||
121 | case famPackage.FUNCTIONAL_OUTPUT: { | ||
122 | FunctionalOutput functionalOutput = (FunctionalOutput)theEObject; | ||
123 | T result = caseFunctionalOutput(functionalOutput); | ||
124 | if (result == null) result = caseFunctionalData(functionalOutput); | ||
125 | if (result == null) result = defaultCase(theEObject); | ||
126 | return result; | ||
127 | } | ||
128 | case famPackage.FUNCTIONAL_DATA: { | ||
129 | FunctionalData functionalData = (FunctionalData)theEObject; | ||
130 | T result = caseFunctionalData(functionalData); | ||
131 | if (result == null) result = defaultCase(theEObject); | ||
132 | return result; | ||
133 | } | ||
134 | default: return defaultCase(theEObject); | ||
135 | } | ||
136 | } | ||
137 | |||
138 | /** | ||
139 | * Returns the result of interpreting the object as an instance of '<em>Functional Element</em>'. | ||
140 | * <!-- begin-user-doc --> | ||
141 | * This implementation returns null; | ||
142 | * returning a non-null result will terminate the switch. | ||
143 | * <!-- end-user-doc --> | ||
144 | * @param object the target of the switch. | ||
145 | * @return the result of interpreting the object as an instance of '<em>Functional Element</em>'. | ||
146 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
147 | * @generated | ||
148 | */ | ||
149 | public T caseFunctionalElement(FunctionalElement object) { | ||
150 | return null; | ||
151 | } | ||
152 | |||
153 | /** | ||
154 | * Returns the result of interpreting the object as an instance of '<em>Functional Architecture Model</em>'. | ||
155 | * <!-- begin-user-doc --> | ||
156 | * This implementation returns null; | ||
157 | * returning a non-null result will terminate the switch. | ||
158 | * <!-- end-user-doc --> | ||
159 | * @param object the target of the switch. | ||
160 | * @return the result of interpreting the object as an instance of '<em>Functional Architecture Model</em>'. | ||
161 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
162 | * @generated | ||
163 | */ | ||
164 | public T caseFunctionalArchitectureModel(FunctionalArchitectureModel object) { | ||
165 | return null; | ||
166 | } | ||
167 | |||
168 | /** | ||
169 | * Returns the result of interpreting the object as an instance of '<em>Function</em>'. | ||
170 | * <!-- begin-user-doc --> | ||
171 | * This implementation returns null; | ||
172 | * returning a non-null result will terminate the switch. | ||
173 | * <!-- end-user-doc --> | ||
174 | * @param object the target of the switch. | ||
175 | * @return the result of interpreting the object as an instance of '<em>Function</em>'. | ||
176 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
177 | * @generated | ||
178 | */ | ||
179 | public T caseFunction(Function object) { | ||
180 | return null; | ||
181 | } | ||
182 | |||
183 | /** | ||
184 | * Returns the result of interpreting the object as an instance of '<em>FAM Terminator</em>'. | ||
185 | * <!-- begin-user-doc --> | ||
186 | * This implementation returns null; | ||
187 | * returning a non-null result will terminate the switch. | ||
188 | * <!-- end-user-doc --> | ||
189 | * @param object the target of the switch. | ||
190 | * @return the result of interpreting the object as an instance of '<em>FAM Terminator</em>'. | ||
191 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
192 | * @generated | ||
193 | */ | ||
194 | public T caseFAMTerminator(FAMTerminator object) { | ||
195 | return null; | ||
196 | } | ||
197 | |||
198 | /** | ||
199 | * Returns the result of interpreting the object as an instance of '<em>Information Link</em>'. | ||
200 | * <!-- begin-user-doc --> | ||
201 | * This implementation returns null; | ||
202 | * returning a non-null result will terminate the switch. | ||
203 | * <!-- end-user-doc --> | ||
204 | * @param object the target of the switch. | ||
205 | * @return the result of interpreting the object as an instance of '<em>Information Link</em>'. | ||
206 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
207 | * @generated | ||
208 | */ | ||
209 | public T caseInformationLink(InformationLink object) { | ||
210 | return null; | ||
211 | } | ||
212 | |||
213 | /** | ||
214 | * Returns the result of interpreting the object as an instance of '<em>Functional Interface</em>'. | ||
215 | * <!-- begin-user-doc --> | ||
216 | * This implementation returns null; | ||
217 | * returning a non-null result will terminate the switch. | ||
218 | * <!-- end-user-doc --> | ||
219 | * @param object the target of the switch. | ||
220 | * @return the result of interpreting the object as an instance of '<em>Functional Interface</em>'. | ||
221 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
222 | * @generated | ||
223 | */ | ||
224 | public T caseFunctionalInterface(FunctionalInterface object) { | ||
225 | return null; | ||
226 | } | ||
227 | |||
228 | /** | ||
229 | * Returns the result of interpreting the object as an instance of '<em>Functional Input</em>'. | ||
230 | * <!-- begin-user-doc --> | ||
231 | * This implementation returns null; | ||
232 | * returning a non-null result will terminate the switch. | ||
233 | * <!-- end-user-doc --> | ||
234 | * @param object the target of the switch. | ||
235 | * @return the result of interpreting the object as an instance of '<em>Functional Input</em>'. | ||
236 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
237 | * @generated | ||
238 | */ | ||
239 | public T caseFunctionalInput(FunctionalInput object) { | ||
240 | return null; | ||
241 | } | ||
242 | |||
243 | /** | ||
244 | * Returns the result of interpreting the object as an instance of '<em>Functional Output</em>'. | ||
245 | * <!-- begin-user-doc --> | ||
246 | * This implementation returns null; | ||
247 | * returning a non-null result will terminate the switch. | ||
248 | * <!-- end-user-doc --> | ||
249 | * @param object the target of the switch. | ||
250 | * @return the result of interpreting the object as an instance of '<em>Functional Output</em>'. | ||
251 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
252 | * @generated | ||
253 | */ | ||
254 | public T caseFunctionalOutput(FunctionalOutput object) { | ||
255 | return null; | ||
256 | } | ||
257 | |||
258 | /** | ||
259 | * Returns the result of interpreting the object as an instance of '<em>Functional Data</em>'. | ||
260 | * <!-- begin-user-doc --> | ||
261 | * This implementation returns null; | ||
262 | * returning a non-null result will terminate the switch. | ||
263 | * <!-- end-user-doc --> | ||
264 | * @param object the target of the switch. | ||
265 | * @return the result of interpreting the object as an instance of '<em>Functional Data</em>'. | ||
266 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
267 | * @generated | ||
268 | */ | ||
269 | public T caseFunctionalData(FunctionalData object) { | ||
270 | return null; | ||
271 | } | ||
272 | |||
273 | /** | ||
274 | * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. | ||
275 | * <!-- begin-user-doc --> | ||
276 | * This implementation returns null; | ||
277 | * returning a non-null result will terminate the switch, but this is the last case anyway. | ||
278 | * <!-- end-user-doc --> | ||
279 | * @param object the target of the switch. | ||
280 | * @return the result of interpreting the object as an instance of '<em>EObject</em>'. | ||
281 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) | ||
282 | * @generated | ||
283 | */ | ||
284 | @Override | ||
285 | public T defaultCase(EObject object) { | ||
286 | return null; | ||
287 | } | ||
288 | |||
289 | } //famSwitch | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/Dir.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/Dir.java new file mode 100644 index 00000000..03290097 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/Dir.java | |||
@@ -0,0 +1,42 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Dir</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir#getContents <em>Contents</em>}</li> | ||
17 | * </ul> | ||
18 | * | ||
19 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getDir() | ||
20 | * @model | ||
21 | * @generated | ||
22 | */ | ||
23 | public interface Dir extends FSObject { | ||
24 | /** | ||
25 | * Returns the value of the '<em><b>Contents</b></em>' containment reference list. | ||
26 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject}. | ||
27 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject#getParent <em>Parent</em>}'. | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <p> | ||
30 | * If the meaning of the '<em>Contents</em>' containment reference list isn't clear, | ||
31 | * there really should be more of a description here... | ||
32 | * </p> | ||
33 | * <!-- end-user-doc --> | ||
34 | * @return the value of the '<em>Contents</em>' containment reference list. | ||
35 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getDir_Contents() | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject#getParent | ||
37 | * @model opposite="parent" containment="true" | ||
38 | * @generated | ||
39 | */ | ||
40 | EList<FSObject> getContents(); | ||
41 | |||
42 | } // Dir | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/FSObject.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/FSObject.java new file mode 100644 index 00000000..87e4e4df --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/FSObject.java | |||
@@ -0,0 +1,52 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EObject; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>FS Object</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject#getParent <em>Parent</em>}</li> | ||
17 | * </ul> | ||
18 | * | ||
19 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getFSObject() | ||
20 | * @model abstract="true" | ||
21 | * @generated | ||
22 | */ | ||
23 | public interface FSObject extends EObject { | ||
24 | /** | ||
25 | * Returns the value of the '<em><b>Parent</b></em>' container reference. | ||
26 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir#getContents <em>Contents</em>}'. | ||
27 | * <!-- begin-user-doc --> | ||
28 | * <p> | ||
29 | * If the meaning of the '<em>Parent</em>' container reference isn't clear, | ||
30 | * there really should be more of a description here... | ||
31 | * </p> | ||
32 | * <!-- end-user-doc --> | ||
33 | * @return the value of the '<em>Parent</em>' container reference. | ||
34 | * @see #setParent(Dir) | ||
35 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getFSObject_Parent() | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir#getContents | ||
37 | * @model opposite="contents" transient="false" | ||
38 | * @generated | ||
39 | */ | ||
40 | Dir getParent(); | ||
41 | |||
42 | /** | ||
43 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject#getParent <em>Parent</em>}' container reference. | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @param value the new value of the '<em>Parent</em>' container reference. | ||
47 | * @see #getParent() | ||
48 | * @generated | ||
49 | */ | ||
50 | void setParent(Dir value); | ||
51 | |||
52 | } // FSObject | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/File.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/File.java new file mode 100644 index 00000000..f829076c --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/File.java | |||
@@ -0,0 +1,17 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem; | ||
4 | |||
5 | |||
6 | /** | ||
7 | * <!-- begin-user-doc --> | ||
8 | * A representation of the model object '<em><b>File</b></em>'. | ||
9 | * <!-- end-user-doc --> | ||
10 | * | ||
11 | * | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getFile() | ||
13 | * @model | ||
14 | * @generated | ||
15 | */ | ||
16 | public interface File extends FSObject { | ||
17 | } // File | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/FileSystem.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/FileSystem.java new file mode 100644 index 00000000..d8ca61ea --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/FileSystem.java | |||
@@ -0,0 +1,69 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | |||
9 | /** | ||
10 | * <!-- begin-user-doc --> | ||
11 | * A representation of the model object '<em><b>File System</b></em>'. | ||
12 | * <!-- end-user-doc --> | ||
13 | * | ||
14 | * <p> | ||
15 | * The following features are supported: | ||
16 | * </p> | ||
17 | * <ul> | ||
18 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem#getRoot <em>Root</em>}</li> | ||
19 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem#getLive <em>Live</em>}</li> | ||
20 | * </ul> | ||
21 | * | ||
22 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getFileSystem() | ||
23 | * @model | ||
24 | * @generated | ||
25 | */ | ||
26 | public interface FileSystem extends EObject { | ||
27 | /** | ||
28 | * Returns the value of the '<em><b>Root</b></em>' containment reference. | ||
29 | * <!-- begin-user-doc --> | ||
30 | * <p> | ||
31 | * If the meaning of the '<em>Root</em>' containment reference isn't clear, | ||
32 | * there really should be more of a description here... | ||
33 | * </p> | ||
34 | * <!-- end-user-doc --> | ||
35 | * @return the value of the '<em>Root</em>' containment reference. | ||
36 | * @see #setRoot(Dir) | ||
37 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getFileSystem_Root() | ||
38 | * @model containment="true" required="true" | ||
39 | * @generated | ||
40 | */ | ||
41 | Dir getRoot(); | ||
42 | |||
43 | /** | ||
44 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem#getRoot <em>Root</em>}' containment reference. | ||
45 | * <!-- begin-user-doc --> | ||
46 | * <!-- end-user-doc --> | ||
47 | * @param value the new value of the '<em>Root</em>' containment reference. | ||
48 | * @see #getRoot() | ||
49 | * @generated | ||
50 | */ | ||
51 | void setRoot(Dir value); | ||
52 | |||
53 | /** | ||
54 | * Returns the value of the '<em><b>Live</b></em>' reference list. | ||
55 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject}. | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <p> | ||
58 | * If the meaning of the '<em>Live</em>' reference list isn't clear, | ||
59 | * there really should be more of a description here... | ||
60 | * </p> | ||
61 | * <!-- end-user-doc --> | ||
62 | * @return the value of the '<em>Live</em>' reference list. | ||
63 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getFileSystem_Live() | ||
64 | * @model transient="true" changeable="false" volatile="true" derived="true" | ||
65 | * @generated | ||
66 | */ | ||
67 | EList<FSObject> getLive(); | ||
68 | |||
69 | } // FileSystem | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/Model.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/Model.java new file mode 100644 index 00000000..e75bd41a --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/Model.java | |||
@@ -0,0 +1,69 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | |||
9 | /** | ||
10 | * <!-- begin-user-doc --> | ||
11 | * A representation of the model object '<em><b>Model</b></em>'. | ||
12 | * <!-- end-user-doc --> | ||
13 | * | ||
14 | * <p> | ||
15 | * The following features are supported: | ||
16 | * </p> | ||
17 | * <ul> | ||
18 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model#getFilesystems <em>Filesystems</em>}</li> | ||
19 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model#getOtherFSObjects <em>Other FS Objects</em>}</li> | ||
20 | * </ul> | ||
21 | * | ||
22 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getModel() | ||
23 | * @model | ||
24 | * @generated | ||
25 | */ | ||
26 | public interface Model extends EObject { | ||
27 | /** | ||
28 | * Returns the value of the '<em><b>Filesystems</b></em>' containment reference. | ||
29 | * <!-- begin-user-doc --> | ||
30 | * <p> | ||
31 | * If the meaning of the '<em>Filesystems</em>' containment reference isn't clear, | ||
32 | * there really should be more of a description here... | ||
33 | * </p> | ||
34 | * <!-- end-user-doc --> | ||
35 | * @return the value of the '<em>Filesystems</em>' containment reference. | ||
36 | * @see #setFilesystems(FileSystem) | ||
37 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getModel_Filesystems() | ||
38 | * @model containment="true" required="true" | ||
39 | * @generated | ||
40 | */ | ||
41 | FileSystem getFilesystems(); | ||
42 | |||
43 | /** | ||
44 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model#getFilesystems <em>Filesystems</em>}' containment reference. | ||
45 | * <!-- begin-user-doc --> | ||
46 | * <!-- end-user-doc --> | ||
47 | * @param value the new value of the '<em>Filesystems</em>' containment reference. | ||
48 | * @see #getFilesystems() | ||
49 | * @generated | ||
50 | */ | ||
51 | void setFilesystems(FileSystem value); | ||
52 | |||
53 | /** | ||
54 | * Returns the value of the '<em><b>Other FS Objects</b></em>' containment reference list. | ||
55 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject}. | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <p> | ||
58 | * If the meaning of the '<em>Other FS Objects</em>' containment reference list isn't clear, | ||
59 | * there really should be more of a description here... | ||
60 | * </p> | ||
61 | * <!-- end-user-doc --> | ||
62 | * @return the value of the '<em>Other FS Objects</em>' containment reference list. | ||
63 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#getModel_OtherFSObjects() | ||
64 | * @model containment="true" | ||
65 | * @generated | ||
66 | */ | ||
67 | EList<FSObject> getOtherFSObjects(); | ||
68 | |||
69 | } // Model | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/filesystemFactory.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/filesystemFactory.java new file mode 100644 index 00000000..401becfb --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/filesystemFactory.java | |||
@@ -0,0 +1,69 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EFactory; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * The <b>Factory</b> for the model. | ||
10 | * It provides a create method for each non-abstract class of the model. | ||
11 | * <!-- end-user-doc --> | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage | ||
13 | * @generated | ||
14 | */ | ||
15 | public interface filesystemFactory extends EFactory { | ||
16 | /** | ||
17 | * The singleton instance of the factory. | ||
18 | * <!-- begin-user-doc --> | ||
19 | * <!-- end-user-doc --> | ||
20 | * @generated | ||
21 | */ | ||
22 | filesystemFactory eINSTANCE = ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemFactoryImpl.init(); | ||
23 | |||
24 | /** | ||
25 | * Returns a new object of class '<em>File System</em>'. | ||
26 | * <!-- begin-user-doc --> | ||
27 | * <!-- end-user-doc --> | ||
28 | * @return a new object of class '<em>File System</em>'. | ||
29 | * @generated | ||
30 | */ | ||
31 | FileSystem createFileSystem(); | ||
32 | |||
33 | /** | ||
34 | * Returns a new object of class '<em>Dir</em>'. | ||
35 | * <!-- begin-user-doc --> | ||
36 | * <!-- end-user-doc --> | ||
37 | * @return a new object of class '<em>Dir</em>'. | ||
38 | * @generated | ||
39 | */ | ||
40 | Dir createDir(); | ||
41 | |||
42 | /** | ||
43 | * Returns a new object of class '<em>File</em>'. | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @return a new object of class '<em>File</em>'. | ||
47 | * @generated | ||
48 | */ | ||
49 | File createFile(); | ||
50 | |||
51 | /** | ||
52 | * Returns a new object of class '<em>Model</em>'. | ||
53 | * <!-- begin-user-doc --> | ||
54 | * <!-- end-user-doc --> | ||
55 | * @return a new object of class '<em>Model</em>'. | ||
56 | * @generated | ||
57 | */ | ||
58 | Model createModel(); | ||
59 | |||
60 | /** | ||
61 | * Returns the package supported by this factory. | ||
62 | * <!-- begin-user-doc --> | ||
63 | * <!-- end-user-doc --> | ||
64 | * @return the package supported by this factory. | ||
65 | * @generated | ||
66 | */ | ||
67 | filesystemPackage getfilesystemPackage(); | ||
68 | |||
69 | } //filesystemFactory | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/filesystemPackage.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/filesystemPackage.java new file mode 100644 index 00000000..08133f96 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/filesystemPackage.java | |||
@@ -0,0 +1,511 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EClass; | ||
6 | import org.eclipse.emf.ecore.EPackage; | ||
7 | import org.eclipse.emf.ecore.EReference; | ||
8 | |||
9 | /** | ||
10 | * <!-- begin-user-doc --> | ||
11 | * The <b>Package</b> for the model. | ||
12 | * It contains accessors for the meta objects to represent | ||
13 | * <ul> | ||
14 | * <li>each class,</li> | ||
15 | * <li>each feature of each class,</li> | ||
16 | * <li>each operation of each class,</li> | ||
17 | * <li>each enum,</li> | ||
18 | * <li>and each data type</li> | ||
19 | * </ul> | ||
20 | * <!-- end-user-doc --> | ||
21 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemFactory | ||
22 | * @model kind="package" | ||
23 | * annotation="http://www.eclipse.org/emf/2002/Ecore settingDelegates='org.eclipse.viatra.query.querybasedfeature'" | ||
24 | * @generated | ||
25 | */ | ||
26 | public interface filesystemPackage extends EPackage { | ||
27 | /** | ||
28 | * The package name. | ||
29 | * <!-- begin-user-doc --> | ||
30 | * <!-- end-user-doc --> | ||
31 | * @generated | ||
32 | */ | ||
33 | String eNAME = "filesystem"; | ||
34 | |||
35 | /** | ||
36 | * The package namespace URI. | ||
37 | * <!-- begin-user-doc --> | ||
38 | * <!-- end-user-doc --> | ||
39 | * @generated | ||
40 | */ | ||
41 | String eNS_URI = "FileSystemMetamodel"; | ||
42 | |||
43 | /** | ||
44 | * The package namespace name. | ||
45 | * <!-- begin-user-doc --> | ||
46 | * <!-- end-user-doc --> | ||
47 | * @generated | ||
48 | */ | ||
49 | String eNS_PREFIX = "filesystem"; | ||
50 | |||
51 | /** | ||
52 | * The singleton instance of the package. | ||
53 | * <!-- begin-user-doc --> | ||
54 | * <!-- end-user-doc --> | ||
55 | * @generated | ||
56 | */ | ||
57 | filesystemPackage eINSTANCE = ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl.init(); | ||
58 | |||
59 | /** | ||
60 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FileSystemImpl <em>File System</em>}' class. | ||
61 | * <!-- begin-user-doc --> | ||
62 | * <!-- end-user-doc --> | ||
63 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FileSystemImpl | ||
64 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl#getFileSystem() | ||
65 | * @generated | ||
66 | */ | ||
67 | int FILE_SYSTEM = 0; | ||
68 | |||
69 | /** | ||
70 | * The feature id for the '<em><b>Root</b></em>' containment reference. | ||
71 | * <!-- begin-user-doc --> | ||
72 | * <!-- end-user-doc --> | ||
73 | * @generated | ||
74 | * @ordered | ||
75 | */ | ||
76 | int FILE_SYSTEM__ROOT = 0; | ||
77 | |||
78 | /** | ||
79 | * The feature id for the '<em><b>Live</b></em>' reference list. | ||
80 | * <!-- begin-user-doc --> | ||
81 | * <!-- end-user-doc --> | ||
82 | * @generated | ||
83 | * @ordered | ||
84 | */ | ||
85 | int FILE_SYSTEM__LIVE = 1; | ||
86 | |||
87 | /** | ||
88 | * The number of structural features of the '<em>File System</em>' class. | ||
89 | * <!-- begin-user-doc --> | ||
90 | * <!-- end-user-doc --> | ||
91 | * @generated | ||
92 | * @ordered | ||
93 | */ | ||
94 | int FILE_SYSTEM_FEATURE_COUNT = 2; | ||
95 | |||
96 | /** | ||
97 | * The number of operations of the '<em>File System</em>' class. | ||
98 | * <!-- begin-user-doc --> | ||
99 | * <!-- end-user-doc --> | ||
100 | * @generated | ||
101 | * @ordered | ||
102 | */ | ||
103 | int FILE_SYSTEM_OPERATION_COUNT = 0; | ||
104 | |||
105 | /** | ||
106 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FSObjectImpl <em>FS Object</em>}' class. | ||
107 | * <!-- begin-user-doc --> | ||
108 | * <!-- end-user-doc --> | ||
109 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FSObjectImpl | ||
110 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl#getFSObject() | ||
111 | * @generated | ||
112 | */ | ||
113 | int FS_OBJECT = 1; | ||
114 | |||
115 | /** | ||
116 | * The feature id for the '<em><b>Parent</b></em>' container reference. | ||
117 | * <!-- begin-user-doc --> | ||
118 | * <!-- end-user-doc --> | ||
119 | * @generated | ||
120 | * @ordered | ||
121 | */ | ||
122 | int FS_OBJECT__PARENT = 0; | ||
123 | |||
124 | /** | ||
125 | * The number of structural features of the '<em>FS Object</em>' class. | ||
126 | * <!-- begin-user-doc --> | ||
127 | * <!-- end-user-doc --> | ||
128 | * @generated | ||
129 | * @ordered | ||
130 | */ | ||
131 | int FS_OBJECT_FEATURE_COUNT = 1; | ||
132 | |||
133 | /** | ||
134 | * The number of operations of the '<em>FS Object</em>' class. | ||
135 | * <!-- begin-user-doc --> | ||
136 | * <!-- end-user-doc --> | ||
137 | * @generated | ||
138 | * @ordered | ||
139 | */ | ||
140 | int FS_OBJECT_OPERATION_COUNT = 0; | ||
141 | |||
142 | /** | ||
143 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.DirImpl <em>Dir</em>}' class. | ||
144 | * <!-- begin-user-doc --> | ||
145 | * <!-- end-user-doc --> | ||
146 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.DirImpl | ||
147 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl#getDir() | ||
148 | * @generated | ||
149 | */ | ||
150 | int DIR = 2; | ||
151 | |||
152 | /** | ||
153 | * The feature id for the '<em><b>Parent</b></em>' container reference. | ||
154 | * <!-- begin-user-doc --> | ||
155 | * <!-- end-user-doc --> | ||
156 | * @generated | ||
157 | * @ordered | ||
158 | */ | ||
159 | int DIR__PARENT = FS_OBJECT__PARENT; | ||
160 | |||
161 | /** | ||
162 | * The feature id for the '<em><b>Contents</b></em>' containment reference list. | ||
163 | * <!-- begin-user-doc --> | ||
164 | * <!-- end-user-doc --> | ||
165 | * @generated | ||
166 | * @ordered | ||
167 | */ | ||
168 | int DIR__CONTENTS = FS_OBJECT_FEATURE_COUNT + 0; | ||
169 | |||
170 | /** | ||
171 | * The number of structural features of the '<em>Dir</em>' class. | ||
172 | * <!-- begin-user-doc --> | ||
173 | * <!-- end-user-doc --> | ||
174 | * @generated | ||
175 | * @ordered | ||
176 | */ | ||
177 | int DIR_FEATURE_COUNT = FS_OBJECT_FEATURE_COUNT + 1; | ||
178 | |||
179 | /** | ||
180 | * The number of operations of the '<em>Dir</em>' class. | ||
181 | * <!-- begin-user-doc --> | ||
182 | * <!-- end-user-doc --> | ||
183 | * @generated | ||
184 | * @ordered | ||
185 | */ | ||
186 | int DIR_OPERATION_COUNT = FS_OBJECT_OPERATION_COUNT + 0; | ||
187 | |||
188 | /** | ||
189 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FileImpl <em>File</em>}' class. | ||
190 | * <!-- begin-user-doc --> | ||
191 | * <!-- end-user-doc --> | ||
192 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FileImpl | ||
193 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl#getFile() | ||
194 | * @generated | ||
195 | */ | ||
196 | int FILE = 3; | ||
197 | |||
198 | /** | ||
199 | * The feature id for the '<em><b>Parent</b></em>' container reference. | ||
200 | * <!-- begin-user-doc --> | ||
201 | * <!-- end-user-doc --> | ||
202 | * @generated | ||
203 | * @ordered | ||
204 | */ | ||
205 | int FILE__PARENT = FS_OBJECT__PARENT; | ||
206 | |||
207 | /** | ||
208 | * The number of structural features of the '<em>File</em>' class. | ||
209 | * <!-- begin-user-doc --> | ||
210 | * <!-- end-user-doc --> | ||
211 | * @generated | ||
212 | * @ordered | ||
213 | */ | ||
214 | int FILE_FEATURE_COUNT = FS_OBJECT_FEATURE_COUNT + 0; | ||
215 | |||
216 | /** | ||
217 | * The number of operations of the '<em>File</em>' class. | ||
218 | * <!-- begin-user-doc --> | ||
219 | * <!-- end-user-doc --> | ||
220 | * @generated | ||
221 | * @ordered | ||
222 | */ | ||
223 | int FILE_OPERATION_COUNT = FS_OBJECT_OPERATION_COUNT + 0; | ||
224 | |||
225 | /** | ||
226 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.ModelImpl <em>Model</em>}' class. | ||
227 | * <!-- begin-user-doc --> | ||
228 | * <!-- end-user-doc --> | ||
229 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.ModelImpl | ||
230 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl#getModel() | ||
231 | * @generated | ||
232 | */ | ||
233 | int MODEL = 4; | ||
234 | |||
235 | /** | ||
236 | * The feature id for the '<em><b>Filesystems</b></em>' containment reference. | ||
237 | * <!-- begin-user-doc --> | ||
238 | * <!-- end-user-doc --> | ||
239 | * @generated | ||
240 | * @ordered | ||
241 | */ | ||
242 | int MODEL__FILESYSTEMS = 0; | ||
243 | |||
244 | /** | ||
245 | * The feature id for the '<em><b>Other FS Objects</b></em>' containment reference list. | ||
246 | * <!-- begin-user-doc --> | ||
247 | * <!-- end-user-doc --> | ||
248 | * @generated | ||
249 | * @ordered | ||
250 | */ | ||
251 | int MODEL__OTHER_FS_OBJECTS = 1; | ||
252 | |||
253 | /** | ||
254 | * The number of structural features of the '<em>Model</em>' class. | ||
255 | * <!-- begin-user-doc --> | ||
256 | * <!-- end-user-doc --> | ||
257 | * @generated | ||
258 | * @ordered | ||
259 | */ | ||
260 | int MODEL_FEATURE_COUNT = 2; | ||
261 | |||
262 | /** | ||
263 | * The number of operations of the '<em>Model</em>' class. | ||
264 | * <!-- begin-user-doc --> | ||
265 | * <!-- end-user-doc --> | ||
266 | * @generated | ||
267 | * @ordered | ||
268 | */ | ||
269 | int MODEL_OPERATION_COUNT = 0; | ||
270 | |||
271 | |||
272 | /** | ||
273 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem <em>File System</em>}'. | ||
274 | * <!-- begin-user-doc --> | ||
275 | * <!-- end-user-doc --> | ||
276 | * @return the meta object for class '<em>File System</em>'. | ||
277 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem | ||
278 | * @generated | ||
279 | */ | ||
280 | EClass getFileSystem(); | ||
281 | |||
282 | /** | ||
283 | * Returns the meta object for the containment reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem#getRoot <em>Root</em>}'. | ||
284 | * <!-- begin-user-doc --> | ||
285 | * <!-- end-user-doc --> | ||
286 | * @return the meta object for the containment reference '<em>Root</em>'. | ||
287 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem#getRoot() | ||
288 | * @see #getFileSystem() | ||
289 | * @generated | ||
290 | */ | ||
291 | EReference getFileSystem_Root(); | ||
292 | |||
293 | /** | ||
294 | * Returns the meta object for the reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem#getLive <em>Live</em>}'. | ||
295 | * <!-- begin-user-doc --> | ||
296 | * <!-- end-user-doc --> | ||
297 | * @return the meta object for the reference list '<em>Live</em>'. | ||
298 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem#getLive() | ||
299 | * @see #getFileSystem() | ||
300 | * @generated | ||
301 | */ | ||
302 | EReference getFileSystem_Live(); | ||
303 | |||
304 | /** | ||
305 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject <em>FS Object</em>}'. | ||
306 | * <!-- begin-user-doc --> | ||
307 | * <!-- end-user-doc --> | ||
308 | * @return the meta object for class '<em>FS Object</em>'. | ||
309 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject | ||
310 | * @generated | ||
311 | */ | ||
312 | EClass getFSObject(); | ||
313 | |||
314 | /** | ||
315 | * Returns the meta object for the container reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject#getParent <em>Parent</em>}'. | ||
316 | * <!-- begin-user-doc --> | ||
317 | * <!-- end-user-doc --> | ||
318 | * @return the meta object for the container reference '<em>Parent</em>'. | ||
319 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject#getParent() | ||
320 | * @see #getFSObject() | ||
321 | * @generated | ||
322 | */ | ||
323 | EReference getFSObject_Parent(); | ||
324 | |||
325 | /** | ||
326 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir <em>Dir</em>}'. | ||
327 | * <!-- begin-user-doc --> | ||
328 | * <!-- end-user-doc --> | ||
329 | * @return the meta object for class '<em>Dir</em>'. | ||
330 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir | ||
331 | * @generated | ||
332 | */ | ||
333 | EClass getDir(); | ||
334 | |||
335 | /** | ||
336 | * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir#getContents <em>Contents</em>}'. | ||
337 | * <!-- begin-user-doc --> | ||
338 | * <!-- end-user-doc --> | ||
339 | * @return the meta object for the containment reference list '<em>Contents</em>'. | ||
340 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir#getContents() | ||
341 | * @see #getDir() | ||
342 | * @generated | ||
343 | */ | ||
344 | EReference getDir_Contents(); | ||
345 | |||
346 | /** | ||
347 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.File <em>File</em>}'. | ||
348 | * <!-- begin-user-doc --> | ||
349 | * <!-- end-user-doc --> | ||
350 | * @return the meta object for class '<em>File</em>'. | ||
351 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.File | ||
352 | * @generated | ||
353 | */ | ||
354 | EClass getFile(); | ||
355 | |||
356 | /** | ||
357 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model <em>Model</em>}'. | ||
358 | * <!-- begin-user-doc --> | ||
359 | * <!-- end-user-doc --> | ||
360 | * @return the meta object for class '<em>Model</em>'. | ||
361 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model | ||
362 | * @generated | ||
363 | */ | ||
364 | EClass getModel(); | ||
365 | |||
366 | /** | ||
367 | * Returns the meta object for the containment reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model#getFilesystems <em>Filesystems</em>}'. | ||
368 | * <!-- begin-user-doc --> | ||
369 | * <!-- end-user-doc --> | ||
370 | * @return the meta object for the containment reference '<em>Filesystems</em>'. | ||
371 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model#getFilesystems() | ||
372 | * @see #getModel() | ||
373 | * @generated | ||
374 | */ | ||
375 | EReference getModel_Filesystems(); | ||
376 | |||
377 | /** | ||
378 | * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model#getOtherFSObjects <em>Other FS Objects</em>}'. | ||
379 | * <!-- begin-user-doc --> | ||
380 | * <!-- end-user-doc --> | ||
381 | * @return the meta object for the containment reference list '<em>Other FS Objects</em>'. | ||
382 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model#getOtherFSObjects() | ||
383 | * @see #getModel() | ||
384 | * @generated | ||
385 | */ | ||
386 | EReference getModel_OtherFSObjects(); | ||
387 | |||
388 | /** | ||
389 | * Returns the factory that creates the instances of the model. | ||
390 | * <!-- begin-user-doc --> | ||
391 | * <!-- end-user-doc --> | ||
392 | * @return the factory that creates the instances of the model. | ||
393 | * @generated | ||
394 | */ | ||
395 | filesystemFactory getfilesystemFactory(); | ||
396 | |||
397 | /** | ||
398 | * <!-- begin-user-doc --> | ||
399 | * Defines literals for the meta objects that represent | ||
400 | * <ul> | ||
401 | * <li>each class,</li> | ||
402 | * <li>each feature of each class,</li> | ||
403 | * <li>each operation of each class,</li> | ||
404 | * <li>each enum,</li> | ||
405 | * <li>and each data type</li> | ||
406 | * </ul> | ||
407 | * <!-- end-user-doc --> | ||
408 | * @generated | ||
409 | */ | ||
410 | interface Literals { | ||
411 | /** | ||
412 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FileSystemImpl <em>File System</em>}' class. | ||
413 | * <!-- begin-user-doc --> | ||
414 | * <!-- end-user-doc --> | ||
415 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FileSystemImpl | ||
416 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl#getFileSystem() | ||
417 | * @generated | ||
418 | */ | ||
419 | EClass FILE_SYSTEM = eINSTANCE.getFileSystem(); | ||
420 | |||
421 | /** | ||
422 | * The meta object literal for the '<em><b>Root</b></em>' containment reference feature. | ||
423 | * <!-- begin-user-doc --> | ||
424 | * <!-- end-user-doc --> | ||
425 | * @generated | ||
426 | */ | ||
427 | EReference FILE_SYSTEM__ROOT = eINSTANCE.getFileSystem_Root(); | ||
428 | |||
429 | /** | ||
430 | * The meta object literal for the '<em><b>Live</b></em>' reference list feature. | ||
431 | * <!-- begin-user-doc --> | ||
432 | * <!-- end-user-doc --> | ||
433 | * @generated | ||
434 | */ | ||
435 | EReference FILE_SYSTEM__LIVE = eINSTANCE.getFileSystem_Live(); | ||
436 | |||
437 | /** | ||
438 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FSObjectImpl <em>FS Object</em>}' class. | ||
439 | * <!-- begin-user-doc --> | ||
440 | * <!-- end-user-doc --> | ||
441 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FSObjectImpl | ||
442 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl#getFSObject() | ||
443 | * @generated | ||
444 | */ | ||
445 | EClass FS_OBJECT = eINSTANCE.getFSObject(); | ||
446 | |||
447 | /** | ||
448 | * The meta object literal for the '<em><b>Parent</b></em>' container reference feature. | ||
449 | * <!-- begin-user-doc --> | ||
450 | * <!-- end-user-doc --> | ||
451 | * @generated | ||
452 | */ | ||
453 | EReference FS_OBJECT__PARENT = eINSTANCE.getFSObject_Parent(); | ||
454 | |||
455 | /** | ||
456 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.DirImpl <em>Dir</em>}' class. | ||
457 | * <!-- begin-user-doc --> | ||
458 | * <!-- end-user-doc --> | ||
459 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.DirImpl | ||
460 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl#getDir() | ||
461 | * @generated | ||
462 | */ | ||
463 | EClass DIR = eINSTANCE.getDir(); | ||
464 | |||
465 | /** | ||
466 | * The meta object literal for the '<em><b>Contents</b></em>' containment reference list feature. | ||
467 | * <!-- begin-user-doc --> | ||
468 | * <!-- end-user-doc --> | ||
469 | * @generated | ||
470 | */ | ||
471 | EReference DIR__CONTENTS = eINSTANCE.getDir_Contents(); | ||
472 | |||
473 | /** | ||
474 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FileImpl <em>File</em>}' class. | ||
475 | * <!-- begin-user-doc --> | ||
476 | * <!-- end-user-doc --> | ||
477 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FileImpl | ||
478 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl#getFile() | ||
479 | * @generated | ||
480 | */ | ||
481 | EClass FILE = eINSTANCE.getFile(); | ||
482 | |||
483 | /** | ||
484 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.ModelImpl <em>Model</em>}' class. | ||
485 | * <!-- begin-user-doc --> | ||
486 | * <!-- end-user-doc --> | ||
487 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.ModelImpl | ||
488 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.filesystemPackageImpl#getModel() | ||
489 | * @generated | ||
490 | */ | ||
491 | EClass MODEL = eINSTANCE.getModel(); | ||
492 | |||
493 | /** | ||
494 | * The meta object literal for the '<em><b>Filesystems</b></em>' containment reference feature. | ||
495 | * <!-- begin-user-doc --> | ||
496 | * <!-- end-user-doc --> | ||
497 | * @generated | ||
498 | */ | ||
499 | EReference MODEL__FILESYSTEMS = eINSTANCE.getModel_Filesystems(); | ||
500 | |||
501 | /** | ||
502 | * The meta object literal for the '<em><b>Other FS Objects</b></em>' containment reference list feature. | ||
503 | * <!-- begin-user-doc --> | ||
504 | * <!-- end-user-doc --> | ||
505 | * @generated | ||
506 | */ | ||
507 | EReference MODEL__OTHER_FS_OBJECTS = eINSTANCE.getModel_OtherFSObjects(); | ||
508 | |||
509 | } | ||
510 | |||
511 | } //filesystemPackage | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/DirImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/DirImpl.java new file mode 100644 index 00000000..2e2fbcba --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/DirImpl.java | |||
@@ -0,0 +1,165 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage; | ||
8 | |||
9 | import java.util.Collection; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.NotificationChain; | ||
12 | |||
13 | import org.eclipse.emf.common.util.EList; | ||
14 | |||
15 | import org.eclipse.emf.ecore.EClass; | ||
16 | import org.eclipse.emf.ecore.InternalEObject; | ||
17 | |||
18 | import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; | ||
19 | import org.eclipse.emf.ecore.util.InternalEList; | ||
20 | |||
21 | /** | ||
22 | * <!-- begin-user-doc --> | ||
23 | * An implementation of the model object '<em><b>Dir</b></em>'. | ||
24 | * <!-- end-user-doc --> | ||
25 | * <p> | ||
26 | * The following features are implemented: | ||
27 | * </p> | ||
28 | * <ul> | ||
29 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.DirImpl#getContents <em>Contents</em>}</li> | ||
30 | * </ul> | ||
31 | * | ||
32 | * @generated | ||
33 | */ | ||
34 | public class DirImpl extends FSObjectImpl implements Dir { | ||
35 | /** | ||
36 | * The cached value of the '{@link #getContents() <em>Contents</em>}' containment reference list. | ||
37 | * <!-- begin-user-doc --> | ||
38 | * <!-- end-user-doc --> | ||
39 | * @see #getContents() | ||
40 | * @generated | ||
41 | * @ordered | ||
42 | */ | ||
43 | protected EList<FSObject> contents; | ||
44 | |||
45 | /** | ||
46 | * <!-- begin-user-doc --> | ||
47 | * <!-- end-user-doc --> | ||
48 | * @generated | ||
49 | */ | ||
50 | protected DirImpl() { | ||
51 | super(); | ||
52 | } | ||
53 | |||
54 | /** | ||
55 | * <!-- begin-user-doc --> | ||
56 | * <!-- end-user-doc --> | ||
57 | * @generated | ||
58 | */ | ||
59 | @Override | ||
60 | protected EClass eStaticClass() { | ||
61 | return filesystemPackage.Literals.DIR; | ||
62 | } | ||
63 | |||
64 | /** | ||
65 | * <!-- begin-user-doc --> | ||
66 | * <!-- end-user-doc --> | ||
67 | * @generated | ||
68 | */ | ||
69 | public EList<FSObject> getContents() { | ||
70 | if (contents == null) { | ||
71 | contents = new EObjectContainmentWithInverseEList<FSObject>(FSObject.class, this, filesystemPackage.DIR__CONTENTS, filesystemPackage.FS_OBJECT__PARENT); | ||
72 | } | ||
73 | return contents; | ||
74 | } | ||
75 | |||
76 | /** | ||
77 | * <!-- begin-user-doc --> | ||
78 | * <!-- end-user-doc --> | ||
79 | * @generated | ||
80 | */ | ||
81 | @SuppressWarnings("unchecked") | ||
82 | @Override | ||
83 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
84 | switch (featureID) { | ||
85 | case filesystemPackage.DIR__CONTENTS: | ||
86 | return ((InternalEList<InternalEObject>)(InternalEList<?>)getContents()).basicAdd(otherEnd, msgs); | ||
87 | } | ||
88 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
89 | } | ||
90 | |||
91 | /** | ||
92 | * <!-- begin-user-doc --> | ||
93 | * <!-- end-user-doc --> | ||
94 | * @generated | ||
95 | */ | ||
96 | @Override | ||
97 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
98 | switch (featureID) { | ||
99 | case filesystemPackage.DIR__CONTENTS: | ||
100 | return ((InternalEList<?>)getContents()).basicRemove(otherEnd, msgs); | ||
101 | } | ||
102 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
103 | } | ||
104 | |||
105 | /** | ||
106 | * <!-- begin-user-doc --> | ||
107 | * <!-- end-user-doc --> | ||
108 | * @generated | ||
109 | */ | ||
110 | @Override | ||
111 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
112 | switch (featureID) { | ||
113 | case filesystemPackage.DIR__CONTENTS: | ||
114 | return getContents(); | ||
115 | } | ||
116 | return super.eGet(featureID, resolve, coreType); | ||
117 | } | ||
118 | |||
119 | /** | ||
120 | * <!-- begin-user-doc --> | ||
121 | * <!-- end-user-doc --> | ||
122 | * @generated | ||
123 | */ | ||
124 | @SuppressWarnings("unchecked") | ||
125 | @Override | ||
126 | public void eSet(int featureID, Object newValue) { | ||
127 | switch (featureID) { | ||
128 | case filesystemPackage.DIR__CONTENTS: | ||
129 | getContents().clear(); | ||
130 | getContents().addAll((Collection<? extends FSObject>)newValue); | ||
131 | return; | ||
132 | } | ||
133 | super.eSet(featureID, newValue); | ||
134 | } | ||
135 | |||
136 | /** | ||
137 | * <!-- begin-user-doc --> | ||
138 | * <!-- end-user-doc --> | ||
139 | * @generated | ||
140 | */ | ||
141 | @Override | ||
142 | public void eUnset(int featureID) { | ||
143 | switch (featureID) { | ||
144 | case filesystemPackage.DIR__CONTENTS: | ||
145 | getContents().clear(); | ||
146 | return; | ||
147 | } | ||
148 | super.eUnset(featureID); | ||
149 | } | ||
150 | |||
151 | /** | ||
152 | * <!-- begin-user-doc --> | ||
153 | * <!-- end-user-doc --> | ||
154 | * @generated | ||
155 | */ | ||
156 | @Override | ||
157 | public boolean eIsSet(int featureID) { | ||
158 | switch (featureID) { | ||
159 | case filesystemPackage.DIR__CONTENTS: | ||
160 | return contents != null && !contents.isEmpty(); | ||
161 | } | ||
162 | return super.eIsSet(featureID); | ||
163 | } | ||
164 | |||
165 | } //DirImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/FSObjectImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/FSObjectImpl.java new file mode 100644 index 00000000..25ea1fbb --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/FSObjectImpl.java | |||
@@ -0,0 +1,196 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage; | ||
8 | |||
9 | import org.eclipse.emf.common.notify.Notification; | ||
10 | import org.eclipse.emf.common.notify.NotificationChain; | ||
11 | |||
12 | import org.eclipse.emf.ecore.EClass; | ||
13 | import org.eclipse.emf.ecore.InternalEObject; | ||
14 | |||
15 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
16 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
17 | |||
18 | import org.eclipse.emf.ecore.util.EcoreUtil; | ||
19 | |||
20 | /** | ||
21 | * <!-- begin-user-doc --> | ||
22 | * An implementation of the model object '<em><b>FS Object</b></em>'. | ||
23 | * <!-- end-user-doc --> | ||
24 | * <p> | ||
25 | * The following features are implemented: | ||
26 | * </p> | ||
27 | * <ul> | ||
28 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FSObjectImpl#getParent <em>Parent</em>}</li> | ||
29 | * </ul> | ||
30 | * | ||
31 | * @generated | ||
32 | */ | ||
33 | public abstract class FSObjectImpl extends MinimalEObjectImpl.Container implements FSObject { | ||
34 | /** | ||
35 | * <!-- begin-user-doc --> | ||
36 | * <!-- end-user-doc --> | ||
37 | * @generated | ||
38 | */ | ||
39 | protected FSObjectImpl() { | ||
40 | super(); | ||
41 | } | ||
42 | |||
43 | /** | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @generated | ||
47 | */ | ||
48 | @Override | ||
49 | protected EClass eStaticClass() { | ||
50 | return filesystemPackage.Literals.FS_OBJECT; | ||
51 | } | ||
52 | |||
53 | /** | ||
54 | * <!-- begin-user-doc --> | ||
55 | * <!-- end-user-doc --> | ||
56 | * @generated | ||
57 | */ | ||
58 | public Dir getParent() { | ||
59 | if (eContainerFeatureID() != filesystemPackage.FS_OBJECT__PARENT) return null; | ||
60 | return (Dir)eInternalContainer(); | ||
61 | } | ||
62 | |||
63 | /** | ||
64 | * <!-- begin-user-doc --> | ||
65 | * <!-- end-user-doc --> | ||
66 | * @generated | ||
67 | */ | ||
68 | public NotificationChain basicSetParent(Dir newParent, NotificationChain msgs) { | ||
69 | msgs = eBasicSetContainer((InternalEObject)newParent, filesystemPackage.FS_OBJECT__PARENT, msgs); | ||
70 | return msgs; | ||
71 | } | ||
72 | |||
73 | /** | ||
74 | * <!-- begin-user-doc --> | ||
75 | * <!-- end-user-doc --> | ||
76 | * @generated | ||
77 | */ | ||
78 | public void setParent(Dir newParent) { | ||
79 | if (newParent != eInternalContainer() || (eContainerFeatureID() != filesystemPackage.FS_OBJECT__PARENT && newParent != null)) { | ||
80 | if (EcoreUtil.isAncestor(this, newParent)) | ||
81 | throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); | ||
82 | NotificationChain msgs = null; | ||
83 | if (eInternalContainer() != null) | ||
84 | msgs = eBasicRemoveFromContainer(msgs); | ||
85 | if (newParent != null) | ||
86 | msgs = ((InternalEObject)newParent).eInverseAdd(this, filesystemPackage.DIR__CONTENTS, Dir.class, msgs); | ||
87 | msgs = basicSetParent(newParent, msgs); | ||
88 | if (msgs != null) msgs.dispatch(); | ||
89 | } | ||
90 | else if (eNotificationRequired()) | ||
91 | eNotify(new ENotificationImpl(this, Notification.SET, filesystemPackage.FS_OBJECT__PARENT, newParent, newParent)); | ||
92 | } | ||
93 | |||
94 | /** | ||
95 | * <!-- begin-user-doc --> | ||
96 | * <!-- end-user-doc --> | ||
97 | * @generated | ||
98 | */ | ||
99 | @Override | ||
100 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
101 | switch (featureID) { | ||
102 | case filesystemPackage.FS_OBJECT__PARENT: | ||
103 | if (eInternalContainer() != null) | ||
104 | msgs = eBasicRemoveFromContainer(msgs); | ||
105 | return basicSetParent((Dir)otherEnd, msgs); | ||
106 | } | ||
107 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
108 | } | ||
109 | |||
110 | /** | ||
111 | * <!-- begin-user-doc --> | ||
112 | * <!-- end-user-doc --> | ||
113 | * @generated | ||
114 | */ | ||
115 | @Override | ||
116 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
117 | switch (featureID) { | ||
118 | case filesystemPackage.FS_OBJECT__PARENT: | ||
119 | return basicSetParent(null, msgs); | ||
120 | } | ||
121 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
122 | } | ||
123 | |||
124 | /** | ||
125 | * <!-- begin-user-doc --> | ||
126 | * <!-- end-user-doc --> | ||
127 | * @generated | ||
128 | */ | ||
129 | @Override | ||
130 | public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { | ||
131 | switch (eContainerFeatureID()) { | ||
132 | case filesystemPackage.FS_OBJECT__PARENT: | ||
133 | return eInternalContainer().eInverseRemove(this, filesystemPackage.DIR__CONTENTS, Dir.class, msgs); | ||
134 | } | ||
135 | return super.eBasicRemoveFromContainerFeature(msgs); | ||
136 | } | ||
137 | |||
138 | /** | ||
139 | * <!-- begin-user-doc --> | ||
140 | * <!-- end-user-doc --> | ||
141 | * @generated | ||
142 | */ | ||
143 | @Override | ||
144 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
145 | switch (featureID) { | ||
146 | case filesystemPackage.FS_OBJECT__PARENT: | ||
147 | return getParent(); | ||
148 | } | ||
149 | return super.eGet(featureID, resolve, coreType); | ||
150 | } | ||
151 | |||
152 | /** | ||
153 | * <!-- begin-user-doc --> | ||
154 | * <!-- end-user-doc --> | ||
155 | * @generated | ||
156 | */ | ||
157 | @Override | ||
158 | public void eSet(int featureID, Object newValue) { | ||
159 | switch (featureID) { | ||
160 | case filesystemPackage.FS_OBJECT__PARENT: | ||
161 | setParent((Dir)newValue); | ||
162 | return; | ||
163 | } | ||
164 | super.eSet(featureID, newValue); | ||
165 | } | ||
166 | |||
167 | /** | ||
168 | * <!-- begin-user-doc --> | ||
169 | * <!-- end-user-doc --> | ||
170 | * @generated | ||
171 | */ | ||
172 | @Override | ||
173 | public void eUnset(int featureID) { | ||
174 | switch (featureID) { | ||
175 | case filesystemPackage.FS_OBJECT__PARENT: | ||
176 | setParent((Dir)null); | ||
177 | return; | ||
178 | } | ||
179 | super.eUnset(featureID); | ||
180 | } | ||
181 | |||
182 | /** | ||
183 | * <!-- begin-user-doc --> | ||
184 | * <!-- end-user-doc --> | ||
185 | * @generated | ||
186 | */ | ||
187 | @Override | ||
188 | public boolean eIsSet(int featureID) { | ||
189 | switch (featureID) { | ||
190 | case filesystemPackage.FS_OBJECT__PARENT: | ||
191 | return getParent() != null; | ||
192 | } | ||
193 | return super.eIsSet(featureID); | ||
194 | } | ||
195 | |||
196 | } //FSObjectImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/FileImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/FileImpl.java new file mode 100644 index 00000000..29eb47fd --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/FileImpl.java | |||
@@ -0,0 +1,37 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.File; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage; | ||
7 | |||
8 | import org.eclipse.emf.ecore.EClass; | ||
9 | |||
10 | /** | ||
11 | * <!-- begin-user-doc --> | ||
12 | * An implementation of the model object '<em><b>File</b></em>'. | ||
13 | * <!-- end-user-doc --> | ||
14 | * | ||
15 | * @generated | ||
16 | */ | ||
17 | public class FileImpl extends FSObjectImpl implements File { | ||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * <!-- end-user-doc --> | ||
21 | * @generated | ||
22 | */ | ||
23 | protected FileImpl() { | ||
24 | super(); | ||
25 | } | ||
26 | |||
27 | /** | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | @Override | ||
33 | protected EClass eStaticClass() { | ||
34 | return filesystemPackage.Literals.FILE; | ||
35 | } | ||
36 | |||
37 | } //FileImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/FileSystemImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/FileSystemImpl.java new file mode 100644 index 00000000..b5ef2b66 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/FileSystemImpl.java | |||
@@ -0,0 +1,198 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage; | ||
9 | |||
10 | import org.eclipse.emf.common.notify.Notification; | ||
11 | import org.eclipse.emf.common.notify.NotificationChain; | ||
12 | |||
13 | import org.eclipse.emf.common.util.EList; | ||
14 | |||
15 | import org.eclipse.emf.ecore.EClass; | ||
16 | import org.eclipse.emf.ecore.InternalEObject; | ||
17 | |||
18 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
19 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
20 | |||
21 | /** | ||
22 | * <!-- begin-user-doc --> | ||
23 | * An implementation of the model object '<em><b>File System</b></em>'. | ||
24 | * <!-- end-user-doc --> | ||
25 | * <p> | ||
26 | * The following features are implemented: | ||
27 | * </p> | ||
28 | * <ul> | ||
29 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FileSystemImpl#getRoot <em>Root</em>}</li> | ||
30 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.FileSystemImpl#getLive <em>Live</em>}</li> | ||
31 | * </ul> | ||
32 | * | ||
33 | * @generated | ||
34 | */ | ||
35 | public class FileSystemImpl extends MinimalEObjectImpl.Container implements FileSystem { | ||
36 | /** | ||
37 | * The cached value of the '{@link #getRoot() <em>Root</em>}' containment reference. | ||
38 | * <!-- begin-user-doc --> | ||
39 | * <!-- end-user-doc --> | ||
40 | * @see #getRoot() | ||
41 | * @generated | ||
42 | * @ordered | ||
43 | */ | ||
44 | protected Dir root; | ||
45 | |||
46 | /** | ||
47 | * <!-- begin-user-doc --> | ||
48 | * <!-- end-user-doc --> | ||
49 | * @generated | ||
50 | */ | ||
51 | protected FileSystemImpl() { | ||
52 | super(); | ||
53 | } | ||
54 | |||
55 | /** | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <!-- end-user-doc --> | ||
58 | * @generated | ||
59 | */ | ||
60 | @Override | ||
61 | protected EClass eStaticClass() { | ||
62 | return filesystemPackage.Literals.FILE_SYSTEM; | ||
63 | } | ||
64 | |||
65 | /** | ||
66 | * <!-- begin-user-doc --> | ||
67 | * <!-- end-user-doc --> | ||
68 | * @generated | ||
69 | */ | ||
70 | public Dir getRoot() { | ||
71 | return root; | ||
72 | } | ||
73 | |||
74 | /** | ||
75 | * <!-- begin-user-doc --> | ||
76 | * <!-- end-user-doc --> | ||
77 | * @generated | ||
78 | */ | ||
79 | public NotificationChain basicSetRoot(Dir newRoot, NotificationChain msgs) { | ||
80 | Dir oldRoot = root; | ||
81 | root = newRoot; | ||
82 | if (eNotificationRequired()) { | ||
83 | ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, filesystemPackage.FILE_SYSTEM__ROOT, oldRoot, newRoot); | ||
84 | if (msgs == null) msgs = notification; else msgs.add(notification); | ||
85 | } | ||
86 | return msgs; | ||
87 | } | ||
88 | |||
89 | /** | ||
90 | * <!-- begin-user-doc --> | ||
91 | * <!-- end-user-doc --> | ||
92 | * @generated | ||
93 | */ | ||
94 | public void setRoot(Dir newRoot) { | ||
95 | if (newRoot != root) { | ||
96 | NotificationChain msgs = null; | ||
97 | if (root != null) | ||
98 | msgs = ((InternalEObject)root).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - filesystemPackage.FILE_SYSTEM__ROOT, null, msgs); | ||
99 | if (newRoot != null) | ||
100 | msgs = ((InternalEObject)newRoot).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - filesystemPackage.FILE_SYSTEM__ROOT, null, msgs); | ||
101 | msgs = basicSetRoot(newRoot, msgs); | ||
102 | if (msgs != null) msgs.dispatch(); | ||
103 | } | ||
104 | else if (eNotificationRequired()) | ||
105 | eNotify(new ENotificationImpl(this, Notification.SET, filesystemPackage.FILE_SYSTEM__ROOT, newRoot, newRoot)); | ||
106 | } | ||
107 | |||
108 | /** | ||
109 | * <!-- begin-user-doc --> | ||
110 | * <!-- end-user-doc --> | ||
111 | * @generated | ||
112 | */ | ||
113 | @SuppressWarnings("unchecked") | ||
114 | public EList<FSObject> getLive() { | ||
115 | // TODO: implement this method to return the 'Live' reference list | ||
116 | // Ensure that you remove @generated or mark it @generated NOT | ||
117 | // The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting | ||
118 | // so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.EcoreEList should be used. | ||
119 | throw new UnsupportedOperationException(); | ||
120 | } | ||
121 | |||
122 | /** | ||
123 | * <!-- begin-user-doc --> | ||
124 | * <!-- end-user-doc --> | ||
125 | * @generated | ||
126 | */ | ||
127 | @Override | ||
128 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
129 | switch (featureID) { | ||
130 | case filesystemPackage.FILE_SYSTEM__ROOT: | ||
131 | return basicSetRoot(null, msgs); | ||
132 | } | ||
133 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
134 | } | ||
135 | |||
136 | /** | ||
137 | * <!-- begin-user-doc --> | ||
138 | * <!-- end-user-doc --> | ||
139 | * @generated | ||
140 | */ | ||
141 | @Override | ||
142 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
143 | switch (featureID) { | ||
144 | case filesystemPackage.FILE_SYSTEM__ROOT: | ||
145 | return getRoot(); | ||
146 | case filesystemPackage.FILE_SYSTEM__LIVE: | ||
147 | return getLive(); | ||
148 | } | ||
149 | return super.eGet(featureID, resolve, coreType); | ||
150 | } | ||
151 | |||
152 | /** | ||
153 | * <!-- begin-user-doc --> | ||
154 | * <!-- end-user-doc --> | ||
155 | * @generated | ||
156 | */ | ||
157 | @Override | ||
158 | public void eSet(int featureID, Object newValue) { | ||
159 | switch (featureID) { | ||
160 | case filesystemPackage.FILE_SYSTEM__ROOT: | ||
161 | setRoot((Dir)newValue); | ||
162 | return; | ||
163 | } | ||
164 | super.eSet(featureID, newValue); | ||
165 | } | ||
166 | |||
167 | /** | ||
168 | * <!-- begin-user-doc --> | ||
169 | * <!-- end-user-doc --> | ||
170 | * @generated | ||
171 | */ | ||
172 | @Override | ||
173 | public void eUnset(int featureID) { | ||
174 | switch (featureID) { | ||
175 | case filesystemPackage.FILE_SYSTEM__ROOT: | ||
176 | setRoot((Dir)null); | ||
177 | return; | ||
178 | } | ||
179 | super.eUnset(featureID); | ||
180 | } | ||
181 | |||
182 | /** | ||
183 | * <!-- begin-user-doc --> | ||
184 | * <!-- end-user-doc --> | ||
185 | * @generated | ||
186 | */ | ||
187 | @Override | ||
188 | public boolean eIsSet(int featureID) { | ||
189 | switch (featureID) { | ||
190 | case filesystemPackage.FILE_SYSTEM__ROOT: | ||
191 | return root != null; | ||
192 | case filesystemPackage.FILE_SYSTEM__LIVE: | ||
193 | return !getLive().isEmpty(); | ||
194 | } | ||
195 | return super.eIsSet(featureID); | ||
196 | } | ||
197 | |||
198 | } //FileSystemImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/ModelImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/ModelImpl.java new file mode 100644 index 00000000..a21f5b6e --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/ModelImpl.java | |||
@@ -0,0 +1,221 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage; | ||
9 | |||
10 | import java.util.Collection; | ||
11 | |||
12 | import org.eclipse.emf.common.notify.Notification; | ||
13 | import org.eclipse.emf.common.notify.NotificationChain; | ||
14 | |||
15 | import org.eclipse.emf.common.util.EList; | ||
16 | |||
17 | import org.eclipse.emf.ecore.EClass; | ||
18 | import org.eclipse.emf.ecore.InternalEObject; | ||
19 | |||
20 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
21 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
22 | |||
23 | import org.eclipse.emf.ecore.util.EObjectContainmentEList; | ||
24 | import org.eclipse.emf.ecore.util.InternalEList; | ||
25 | |||
26 | /** | ||
27 | * <!-- begin-user-doc --> | ||
28 | * An implementation of the model object '<em><b>Model</b></em>'. | ||
29 | * <!-- end-user-doc --> | ||
30 | * <p> | ||
31 | * The following features are implemented: | ||
32 | * </p> | ||
33 | * <ul> | ||
34 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.ModelImpl#getFilesystems <em>Filesystems</em>}</li> | ||
35 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl.ModelImpl#getOtherFSObjects <em>Other FS Objects</em>}</li> | ||
36 | * </ul> | ||
37 | * | ||
38 | * @generated | ||
39 | */ | ||
40 | public class ModelImpl extends MinimalEObjectImpl.Container implements Model { | ||
41 | /** | ||
42 | * The cached value of the '{@link #getFilesystems() <em>Filesystems</em>}' containment reference. | ||
43 | * <!-- begin-user-doc --> | ||
44 | * <!-- end-user-doc --> | ||
45 | * @see #getFilesystems() | ||
46 | * @generated | ||
47 | * @ordered | ||
48 | */ | ||
49 | protected FileSystem filesystems; | ||
50 | |||
51 | /** | ||
52 | * The cached value of the '{@link #getOtherFSObjects() <em>Other FS Objects</em>}' containment reference list. | ||
53 | * <!-- begin-user-doc --> | ||
54 | * <!-- end-user-doc --> | ||
55 | * @see #getOtherFSObjects() | ||
56 | * @generated | ||
57 | * @ordered | ||
58 | */ | ||
59 | protected EList<FSObject> otherFSObjects; | ||
60 | |||
61 | /** | ||
62 | * <!-- begin-user-doc --> | ||
63 | * <!-- end-user-doc --> | ||
64 | * @generated | ||
65 | */ | ||
66 | protected ModelImpl() { | ||
67 | super(); | ||
68 | } | ||
69 | |||
70 | /** | ||
71 | * <!-- begin-user-doc --> | ||
72 | * <!-- end-user-doc --> | ||
73 | * @generated | ||
74 | */ | ||
75 | @Override | ||
76 | protected EClass eStaticClass() { | ||
77 | return filesystemPackage.Literals.MODEL; | ||
78 | } | ||
79 | |||
80 | /** | ||
81 | * <!-- begin-user-doc --> | ||
82 | * <!-- end-user-doc --> | ||
83 | * @generated | ||
84 | */ | ||
85 | public FileSystem getFilesystems() { | ||
86 | return filesystems; | ||
87 | } | ||
88 | |||
89 | /** | ||
90 | * <!-- begin-user-doc --> | ||
91 | * <!-- end-user-doc --> | ||
92 | * @generated | ||
93 | */ | ||
94 | public NotificationChain basicSetFilesystems(FileSystem newFilesystems, NotificationChain msgs) { | ||
95 | FileSystem oldFilesystems = filesystems; | ||
96 | filesystems = newFilesystems; | ||
97 | if (eNotificationRequired()) { | ||
98 | ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, filesystemPackage.MODEL__FILESYSTEMS, oldFilesystems, newFilesystems); | ||
99 | if (msgs == null) msgs = notification; else msgs.add(notification); | ||
100 | } | ||
101 | return msgs; | ||
102 | } | ||
103 | |||
104 | /** | ||
105 | * <!-- begin-user-doc --> | ||
106 | * <!-- end-user-doc --> | ||
107 | * @generated | ||
108 | */ | ||
109 | public void setFilesystems(FileSystem newFilesystems) { | ||
110 | if (newFilesystems != filesystems) { | ||
111 | NotificationChain msgs = null; | ||
112 | if (filesystems != null) | ||
113 | msgs = ((InternalEObject)filesystems).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - filesystemPackage.MODEL__FILESYSTEMS, null, msgs); | ||
114 | if (newFilesystems != null) | ||
115 | msgs = ((InternalEObject)newFilesystems).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - filesystemPackage.MODEL__FILESYSTEMS, null, msgs); | ||
116 | msgs = basicSetFilesystems(newFilesystems, msgs); | ||
117 | if (msgs != null) msgs.dispatch(); | ||
118 | } | ||
119 | else if (eNotificationRequired()) | ||
120 | eNotify(new ENotificationImpl(this, Notification.SET, filesystemPackage.MODEL__FILESYSTEMS, newFilesystems, newFilesystems)); | ||
121 | } | ||
122 | |||
123 | /** | ||
124 | * <!-- begin-user-doc --> | ||
125 | * <!-- end-user-doc --> | ||
126 | * @generated | ||
127 | */ | ||
128 | public EList<FSObject> getOtherFSObjects() { | ||
129 | if (otherFSObjects == null) { | ||
130 | otherFSObjects = new EObjectContainmentEList<FSObject>(FSObject.class, this, filesystemPackage.MODEL__OTHER_FS_OBJECTS); | ||
131 | } | ||
132 | return otherFSObjects; | ||
133 | } | ||
134 | |||
135 | /** | ||
136 | * <!-- begin-user-doc --> | ||
137 | * <!-- end-user-doc --> | ||
138 | * @generated | ||
139 | */ | ||
140 | @Override | ||
141 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
142 | switch (featureID) { | ||
143 | case filesystemPackage.MODEL__FILESYSTEMS: | ||
144 | return basicSetFilesystems(null, msgs); | ||
145 | case filesystemPackage.MODEL__OTHER_FS_OBJECTS: | ||
146 | return ((InternalEList<?>)getOtherFSObjects()).basicRemove(otherEnd, msgs); | ||
147 | } | ||
148 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
149 | } | ||
150 | |||
151 | /** | ||
152 | * <!-- begin-user-doc --> | ||
153 | * <!-- end-user-doc --> | ||
154 | * @generated | ||
155 | */ | ||
156 | @Override | ||
157 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
158 | switch (featureID) { | ||
159 | case filesystemPackage.MODEL__FILESYSTEMS: | ||
160 | return getFilesystems(); | ||
161 | case filesystemPackage.MODEL__OTHER_FS_OBJECTS: | ||
162 | return getOtherFSObjects(); | ||
163 | } | ||
164 | return super.eGet(featureID, resolve, coreType); | ||
165 | } | ||
166 | |||
167 | /** | ||
168 | * <!-- begin-user-doc --> | ||
169 | * <!-- end-user-doc --> | ||
170 | * @generated | ||
171 | */ | ||
172 | @SuppressWarnings("unchecked") | ||
173 | @Override | ||
174 | public void eSet(int featureID, Object newValue) { | ||
175 | switch (featureID) { | ||
176 | case filesystemPackage.MODEL__FILESYSTEMS: | ||
177 | setFilesystems((FileSystem)newValue); | ||
178 | return; | ||
179 | case filesystemPackage.MODEL__OTHER_FS_OBJECTS: | ||
180 | getOtherFSObjects().clear(); | ||
181 | getOtherFSObjects().addAll((Collection<? extends FSObject>)newValue); | ||
182 | return; | ||
183 | } | ||
184 | super.eSet(featureID, newValue); | ||
185 | } | ||
186 | |||
187 | /** | ||
188 | * <!-- begin-user-doc --> | ||
189 | * <!-- end-user-doc --> | ||
190 | * @generated | ||
191 | */ | ||
192 | @Override | ||
193 | public void eUnset(int featureID) { | ||
194 | switch (featureID) { | ||
195 | case filesystemPackage.MODEL__FILESYSTEMS: | ||
196 | setFilesystems((FileSystem)null); | ||
197 | return; | ||
198 | case filesystemPackage.MODEL__OTHER_FS_OBJECTS: | ||
199 | getOtherFSObjects().clear(); | ||
200 | return; | ||
201 | } | ||
202 | super.eUnset(featureID); | ||
203 | } | ||
204 | |||
205 | /** | ||
206 | * <!-- begin-user-doc --> | ||
207 | * <!-- end-user-doc --> | ||
208 | * @generated | ||
209 | */ | ||
210 | @Override | ||
211 | public boolean eIsSet(int featureID) { | ||
212 | switch (featureID) { | ||
213 | case filesystemPackage.MODEL__FILESYSTEMS: | ||
214 | return filesystems != null; | ||
215 | case filesystemPackage.MODEL__OTHER_FS_OBJECTS: | ||
216 | return otherFSObjects != null && !otherFSObjects.isEmpty(); | ||
217 | } | ||
218 | return super.eIsSet(featureID); | ||
219 | } | ||
220 | |||
221 | } //ModelImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/filesystemFactoryImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/filesystemFactoryImpl.java new file mode 100644 index 00000000..a3526e36 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/filesystemFactoryImpl.java | |||
@@ -0,0 +1,128 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.*; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EClass; | ||
8 | import org.eclipse.emf.ecore.EObject; | ||
9 | import org.eclipse.emf.ecore.EPackage; | ||
10 | |||
11 | import org.eclipse.emf.ecore.impl.EFactoryImpl; | ||
12 | |||
13 | import org.eclipse.emf.ecore.plugin.EcorePlugin; | ||
14 | |||
15 | /** | ||
16 | * <!-- begin-user-doc --> | ||
17 | * An implementation of the model <b>Factory</b>. | ||
18 | * <!-- end-user-doc --> | ||
19 | * @generated | ||
20 | */ | ||
21 | public class filesystemFactoryImpl extends EFactoryImpl implements filesystemFactory { | ||
22 | /** | ||
23 | * Creates the default factory implementation. | ||
24 | * <!-- begin-user-doc --> | ||
25 | * <!-- end-user-doc --> | ||
26 | * @generated | ||
27 | */ | ||
28 | public static filesystemFactory init() { | ||
29 | try { | ||
30 | filesystemFactory thefilesystemFactory = (filesystemFactory)EPackage.Registry.INSTANCE.getEFactory(filesystemPackage.eNS_URI); | ||
31 | if (thefilesystemFactory != null) { | ||
32 | return thefilesystemFactory; | ||
33 | } | ||
34 | } | ||
35 | catch (Exception exception) { | ||
36 | EcorePlugin.INSTANCE.log(exception); | ||
37 | } | ||
38 | return new filesystemFactoryImpl(); | ||
39 | } | ||
40 | |||
41 | /** | ||
42 | * Creates an instance of the factory. | ||
43 | * <!-- begin-user-doc --> | ||
44 | * <!-- end-user-doc --> | ||
45 | * @generated | ||
46 | */ | ||
47 | public filesystemFactoryImpl() { | ||
48 | super(); | ||
49 | } | ||
50 | |||
51 | /** | ||
52 | * <!-- begin-user-doc --> | ||
53 | * <!-- end-user-doc --> | ||
54 | * @generated | ||
55 | */ | ||
56 | @Override | ||
57 | public EObject create(EClass eClass) { | ||
58 | switch (eClass.getClassifierID()) { | ||
59 | case filesystemPackage.FILE_SYSTEM: return createFileSystem(); | ||
60 | case filesystemPackage.DIR: return createDir(); | ||
61 | case filesystemPackage.FILE: return createFile(); | ||
62 | case filesystemPackage.MODEL: return createModel(); | ||
63 | default: | ||
64 | throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); | ||
65 | } | ||
66 | } | ||
67 | |||
68 | /** | ||
69 | * <!-- begin-user-doc --> | ||
70 | * <!-- end-user-doc --> | ||
71 | * @generated | ||
72 | */ | ||
73 | public FileSystem createFileSystem() { | ||
74 | FileSystemImpl fileSystem = new FileSystemImpl(); | ||
75 | return fileSystem; | ||
76 | } | ||
77 | |||
78 | /** | ||
79 | * <!-- begin-user-doc --> | ||
80 | * <!-- end-user-doc --> | ||
81 | * @generated | ||
82 | */ | ||
83 | public Dir createDir() { | ||
84 | DirImpl dir = new DirImpl(); | ||
85 | return dir; | ||
86 | } | ||
87 | |||
88 | /** | ||
89 | * <!-- begin-user-doc --> | ||
90 | * <!-- end-user-doc --> | ||
91 | * @generated | ||
92 | */ | ||
93 | public File createFile() { | ||
94 | FileImpl file = new FileImpl(); | ||
95 | return file; | ||
96 | } | ||
97 | |||
98 | /** | ||
99 | * <!-- begin-user-doc --> | ||
100 | * <!-- end-user-doc --> | ||
101 | * @generated | ||
102 | */ | ||
103 | public Model createModel() { | ||
104 | ModelImpl model = new ModelImpl(); | ||
105 | return model; | ||
106 | } | ||
107 | |||
108 | /** | ||
109 | * <!-- begin-user-doc --> | ||
110 | * <!-- end-user-doc --> | ||
111 | * @generated | ||
112 | */ | ||
113 | public filesystemPackage getfilesystemPackage() { | ||
114 | return (filesystemPackage)getEPackage(); | ||
115 | } | ||
116 | |||
117 | /** | ||
118 | * <!-- begin-user-doc --> | ||
119 | * <!-- end-user-doc --> | ||
120 | * @deprecated | ||
121 | * @generated | ||
122 | */ | ||
123 | @Deprecated | ||
124 | public static filesystemPackage getPackage() { | ||
125 | return filesystemPackage.eINSTANCE; | ||
126 | } | ||
127 | |||
128 | } //filesystemFactoryImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/filesystemPackageImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/filesystemPackageImpl.java new file mode 100644 index 00000000..5bd41020 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/impl/filesystemPackageImpl.java | |||
@@ -0,0 +1,338 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.File; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem; | ||
9 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model; | ||
10 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemFactory; | ||
11 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage; | ||
12 | |||
13 | import org.eclipse.emf.ecore.EClass; | ||
14 | import org.eclipse.emf.ecore.EPackage; | ||
15 | import org.eclipse.emf.ecore.EReference; | ||
16 | |||
17 | import org.eclipse.emf.ecore.impl.EPackageImpl; | ||
18 | |||
19 | /** | ||
20 | * <!-- begin-user-doc --> | ||
21 | * An implementation of the model <b>Package</b>. | ||
22 | * <!-- end-user-doc --> | ||
23 | * @generated | ||
24 | */ | ||
25 | public class filesystemPackageImpl extends EPackageImpl implements filesystemPackage { | ||
26 | /** | ||
27 | * <!-- begin-user-doc --> | ||
28 | * <!-- end-user-doc --> | ||
29 | * @generated | ||
30 | */ | ||
31 | private EClass fileSystemEClass = null; | ||
32 | |||
33 | /** | ||
34 | * <!-- begin-user-doc --> | ||
35 | * <!-- end-user-doc --> | ||
36 | * @generated | ||
37 | */ | ||
38 | private EClass fsObjectEClass = null; | ||
39 | |||
40 | /** | ||
41 | * <!-- begin-user-doc --> | ||
42 | * <!-- end-user-doc --> | ||
43 | * @generated | ||
44 | */ | ||
45 | private EClass dirEClass = null; | ||
46 | |||
47 | /** | ||
48 | * <!-- begin-user-doc --> | ||
49 | * <!-- end-user-doc --> | ||
50 | * @generated | ||
51 | */ | ||
52 | private EClass fileEClass = null; | ||
53 | |||
54 | /** | ||
55 | * <!-- begin-user-doc --> | ||
56 | * <!-- end-user-doc --> | ||
57 | * @generated | ||
58 | */ | ||
59 | private EClass modelEClass = null; | ||
60 | |||
61 | /** | ||
62 | * Creates an instance of the model <b>Package</b>, registered with | ||
63 | * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package | ||
64 | * package URI value. | ||
65 | * <p>Note: the correct way to create the package is via the static | ||
66 | * factory method {@link #init init()}, which also performs | ||
67 | * initialization of the package, or returns the registered package, | ||
68 | * if one already exists. | ||
69 | * <!-- begin-user-doc --> | ||
70 | * <!-- end-user-doc --> | ||
71 | * @see org.eclipse.emf.ecore.EPackage.Registry | ||
72 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage#eNS_URI | ||
73 | * @see #init() | ||
74 | * @generated | ||
75 | */ | ||
76 | private filesystemPackageImpl() { | ||
77 | super(eNS_URI, filesystemFactory.eINSTANCE); | ||
78 | } | ||
79 | |||
80 | /** | ||
81 | * <!-- begin-user-doc --> | ||
82 | * <!-- end-user-doc --> | ||
83 | * @generated | ||
84 | */ | ||
85 | private static boolean isInited = false; | ||
86 | |||
87 | /** | ||
88 | * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. | ||
89 | * | ||
90 | * <p>This method is used to initialize {@link filesystemPackage#eINSTANCE} when that field is accessed. | ||
91 | * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. | ||
92 | * <!-- begin-user-doc --> | ||
93 | * <!-- end-user-doc --> | ||
94 | * @see #eNS_URI | ||
95 | * @see #createPackageContents() | ||
96 | * @see #initializePackageContents() | ||
97 | * @generated | ||
98 | */ | ||
99 | public static filesystemPackage init() { | ||
100 | if (isInited) return (filesystemPackage)EPackage.Registry.INSTANCE.getEPackage(filesystemPackage.eNS_URI); | ||
101 | |||
102 | // Obtain or create and register package | ||
103 | filesystemPackageImpl thefilesystemPackage = (filesystemPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof filesystemPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new filesystemPackageImpl()); | ||
104 | |||
105 | isInited = true; | ||
106 | |||
107 | // Create package meta-data objects | ||
108 | thefilesystemPackage.createPackageContents(); | ||
109 | |||
110 | // Initialize created meta-data | ||
111 | thefilesystemPackage.initializePackageContents(); | ||
112 | |||
113 | // Mark meta-data to indicate it can't be changed | ||
114 | thefilesystemPackage.freeze(); | ||
115 | |||
116 | |||
117 | // Update the registry and return the package | ||
118 | EPackage.Registry.INSTANCE.put(filesystemPackage.eNS_URI, thefilesystemPackage); | ||
119 | return thefilesystemPackage; | ||
120 | } | ||
121 | |||
122 | /** | ||
123 | * <!-- begin-user-doc --> | ||
124 | * <!-- end-user-doc --> | ||
125 | * @generated | ||
126 | */ | ||
127 | public EClass getFileSystem() { | ||
128 | return fileSystemEClass; | ||
129 | } | ||
130 | |||
131 | /** | ||
132 | * <!-- begin-user-doc --> | ||
133 | * <!-- end-user-doc --> | ||
134 | * @generated | ||
135 | */ | ||
136 | public EReference getFileSystem_Root() { | ||
137 | return (EReference)fileSystemEClass.getEStructuralFeatures().get(0); | ||
138 | } | ||
139 | |||
140 | /** | ||
141 | * <!-- begin-user-doc --> | ||
142 | * <!-- end-user-doc --> | ||
143 | * @generated | ||
144 | */ | ||
145 | public EReference getFileSystem_Live() { | ||
146 | return (EReference)fileSystemEClass.getEStructuralFeatures().get(1); | ||
147 | } | ||
148 | |||
149 | /** | ||
150 | * <!-- begin-user-doc --> | ||
151 | * <!-- end-user-doc --> | ||
152 | * @generated | ||
153 | */ | ||
154 | public EClass getFSObject() { | ||
155 | return fsObjectEClass; | ||
156 | } | ||
157 | |||
158 | /** | ||
159 | * <!-- begin-user-doc --> | ||
160 | * <!-- end-user-doc --> | ||
161 | * @generated | ||
162 | */ | ||
163 | public EReference getFSObject_Parent() { | ||
164 | return (EReference)fsObjectEClass.getEStructuralFeatures().get(0); | ||
165 | } | ||
166 | |||
167 | /** | ||
168 | * <!-- begin-user-doc --> | ||
169 | * <!-- end-user-doc --> | ||
170 | * @generated | ||
171 | */ | ||
172 | public EClass getDir() { | ||
173 | return dirEClass; | ||
174 | } | ||
175 | |||
176 | /** | ||
177 | * <!-- begin-user-doc --> | ||
178 | * <!-- end-user-doc --> | ||
179 | * @generated | ||
180 | */ | ||
181 | public EReference getDir_Contents() { | ||
182 | return (EReference)dirEClass.getEStructuralFeatures().get(0); | ||
183 | } | ||
184 | |||
185 | /** | ||
186 | * <!-- begin-user-doc --> | ||
187 | * <!-- end-user-doc --> | ||
188 | * @generated | ||
189 | */ | ||
190 | public EClass getFile() { | ||
191 | return fileEClass; | ||
192 | } | ||
193 | |||
194 | /** | ||
195 | * <!-- begin-user-doc --> | ||
196 | * <!-- end-user-doc --> | ||
197 | * @generated | ||
198 | */ | ||
199 | public EClass getModel() { | ||
200 | return modelEClass; | ||
201 | } | ||
202 | |||
203 | /** | ||
204 | * <!-- begin-user-doc --> | ||
205 | * <!-- end-user-doc --> | ||
206 | * @generated | ||
207 | */ | ||
208 | public EReference getModel_Filesystems() { | ||
209 | return (EReference)modelEClass.getEStructuralFeatures().get(0); | ||
210 | } | ||
211 | |||
212 | /** | ||
213 | * <!-- begin-user-doc --> | ||
214 | * <!-- end-user-doc --> | ||
215 | * @generated | ||
216 | */ | ||
217 | public EReference getModel_OtherFSObjects() { | ||
218 | return (EReference)modelEClass.getEStructuralFeatures().get(1); | ||
219 | } | ||
220 | |||
221 | /** | ||
222 | * <!-- begin-user-doc --> | ||
223 | * <!-- end-user-doc --> | ||
224 | * @generated | ||
225 | */ | ||
226 | public filesystemFactory getfilesystemFactory() { | ||
227 | return (filesystemFactory)getEFactoryInstance(); | ||
228 | } | ||
229 | |||
230 | /** | ||
231 | * <!-- begin-user-doc --> | ||
232 | * <!-- end-user-doc --> | ||
233 | * @generated | ||
234 | */ | ||
235 | private boolean isCreated = false; | ||
236 | |||
237 | /** | ||
238 | * Creates the meta-model objects for the package. This method is | ||
239 | * guarded to have no affect on any invocation but its first. | ||
240 | * <!-- begin-user-doc --> | ||
241 | * <!-- end-user-doc --> | ||
242 | * @generated | ||
243 | */ | ||
244 | public void createPackageContents() { | ||
245 | if (isCreated) return; | ||
246 | isCreated = true; | ||
247 | |||
248 | // Create classes and their features | ||
249 | fileSystemEClass = createEClass(FILE_SYSTEM); | ||
250 | createEReference(fileSystemEClass, FILE_SYSTEM__ROOT); | ||
251 | createEReference(fileSystemEClass, FILE_SYSTEM__LIVE); | ||
252 | |||
253 | fsObjectEClass = createEClass(FS_OBJECT); | ||
254 | createEReference(fsObjectEClass, FS_OBJECT__PARENT); | ||
255 | |||
256 | dirEClass = createEClass(DIR); | ||
257 | createEReference(dirEClass, DIR__CONTENTS); | ||
258 | |||
259 | fileEClass = createEClass(FILE); | ||
260 | |||
261 | modelEClass = createEClass(MODEL); | ||
262 | createEReference(modelEClass, MODEL__FILESYSTEMS); | ||
263 | createEReference(modelEClass, MODEL__OTHER_FS_OBJECTS); | ||
264 | } | ||
265 | |||
266 | /** | ||
267 | * <!-- begin-user-doc --> | ||
268 | * <!-- end-user-doc --> | ||
269 | * @generated | ||
270 | */ | ||
271 | private boolean isInitialized = false; | ||
272 | |||
273 | /** | ||
274 | * Complete the initialization of the package and its meta-model. This | ||
275 | * method is guarded to have no affect on any invocation but its first. | ||
276 | * <!-- begin-user-doc --> | ||
277 | * <!-- end-user-doc --> | ||
278 | * @generated | ||
279 | */ | ||
280 | public void initializePackageContents() { | ||
281 | if (isInitialized) return; | ||
282 | isInitialized = true; | ||
283 | |||
284 | // Initialize package | ||
285 | setName(eNAME); | ||
286 | setNsPrefix(eNS_PREFIX); | ||
287 | setNsURI(eNS_URI); | ||
288 | |||
289 | // Create type parameters | ||
290 | |||
291 | // Set bounds for type parameters | ||
292 | |||
293 | // Add supertypes to classes | ||
294 | dirEClass.getESuperTypes().add(this.getFSObject()); | ||
295 | fileEClass.getESuperTypes().add(this.getFSObject()); | ||
296 | |||
297 | // Initialize classes, features, and operations; add parameters | ||
298 | initEClass(fileSystemEClass, FileSystem.class, "FileSystem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
299 | initEReference(getFileSystem_Root(), this.getDir(), null, "root", null, 1, 1, FileSystem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
300 | initEReference(getFileSystem_Live(), this.getFSObject(), null, "live", null, 0, -1, FileSystem.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED); | ||
301 | |||
302 | initEClass(fsObjectEClass, FSObject.class, "FSObject", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
303 | initEReference(getFSObject_Parent(), this.getDir(), this.getDir_Contents(), "parent", null, 0, 1, FSObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
304 | |||
305 | initEClass(dirEClass, Dir.class, "Dir", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
306 | initEReference(getDir_Contents(), this.getFSObject(), this.getFSObject_Parent(), "contents", null, 0, -1, Dir.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
307 | |||
308 | initEClass(fileEClass, File.class, "File", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
309 | |||
310 | initEClass(modelEClass, Model.class, "Model", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
311 | initEReference(getModel_Filesystems(), this.getFileSystem(), null, "filesystems", null, 1, 1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
312 | initEReference(getModel_OtherFSObjects(), this.getFSObject(), null, "otherFSObjects", null, 0, -1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
313 | |||
314 | // Create resource | ||
315 | createResource(eNS_URI); | ||
316 | |||
317 | // Create annotations | ||
318 | // http://www.eclipse.org/emf/2002/Ecore | ||
319 | createEcoreAnnotations(); | ||
320 | } | ||
321 | |||
322 | /** | ||
323 | * Initializes the annotations for <b>http://www.eclipse.org/emf/2002/Ecore</b>. | ||
324 | * <!-- begin-user-doc --> | ||
325 | * <!-- end-user-doc --> | ||
326 | * @generated | ||
327 | */ | ||
328 | protected void createEcoreAnnotations() { | ||
329 | String source = "http://www.eclipse.org/emf/2002/Ecore"; | ||
330 | addAnnotation | ||
331 | (this, | ||
332 | source, | ||
333 | new String[] { | ||
334 | "settingDelegates", "org.eclipse.viatra.query.querybasedfeature" | ||
335 | }); | ||
336 | } | ||
337 | |||
338 | } //filesystemPackageImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/util/filesystemAdapterFactory.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/util/filesystemAdapterFactory.java new file mode 100644 index 00000000..d9aed046 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/util/filesystemAdapterFactory.java | |||
@@ -0,0 +1,192 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.util; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.*; | ||
6 | |||
7 | import org.eclipse.emf.common.notify.Adapter; | ||
8 | import org.eclipse.emf.common.notify.Notifier; | ||
9 | |||
10 | import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; | ||
11 | |||
12 | import org.eclipse.emf.ecore.EObject; | ||
13 | |||
14 | /** | ||
15 | * <!-- begin-user-doc --> | ||
16 | * The <b>Adapter Factory</b> for the model. | ||
17 | * It provides an adapter <code>createXXX</code> method for each class of the model. | ||
18 | * <!-- end-user-doc --> | ||
19 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage | ||
20 | * @generated | ||
21 | */ | ||
22 | public class filesystemAdapterFactory extends AdapterFactoryImpl { | ||
23 | /** | ||
24 | * The cached model package. | ||
25 | * <!-- begin-user-doc --> | ||
26 | * <!-- end-user-doc --> | ||
27 | * @generated | ||
28 | */ | ||
29 | protected static filesystemPackage modelPackage; | ||
30 | |||
31 | /** | ||
32 | * Creates an instance of the adapter factory. | ||
33 | * <!-- begin-user-doc --> | ||
34 | * <!-- end-user-doc --> | ||
35 | * @generated | ||
36 | */ | ||
37 | public filesystemAdapterFactory() { | ||
38 | if (modelPackage == null) { | ||
39 | modelPackage = filesystemPackage.eINSTANCE; | ||
40 | } | ||
41 | } | ||
42 | |||
43 | /** | ||
44 | * Returns whether this factory is applicable for the type of the object. | ||
45 | * <!-- begin-user-doc --> | ||
46 | * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. | ||
47 | * <!-- end-user-doc --> | ||
48 | * @return whether this factory is applicable for the type of the object. | ||
49 | * @generated | ||
50 | */ | ||
51 | @Override | ||
52 | public boolean isFactoryForType(Object object) { | ||
53 | if (object == modelPackage) { | ||
54 | return true; | ||
55 | } | ||
56 | if (object instanceof EObject) { | ||
57 | return ((EObject)object).eClass().getEPackage() == modelPackage; | ||
58 | } | ||
59 | return false; | ||
60 | } | ||
61 | |||
62 | /** | ||
63 | * The switch that delegates to the <code>createXXX</code> methods. | ||
64 | * <!-- begin-user-doc --> | ||
65 | * <!-- end-user-doc --> | ||
66 | * @generated | ||
67 | */ | ||
68 | protected filesystemSwitch<Adapter> modelSwitch = | ||
69 | new filesystemSwitch<Adapter>() { | ||
70 | @Override | ||
71 | public Adapter caseFileSystem(FileSystem object) { | ||
72 | return createFileSystemAdapter(); | ||
73 | } | ||
74 | @Override | ||
75 | public Adapter caseFSObject(FSObject object) { | ||
76 | return createFSObjectAdapter(); | ||
77 | } | ||
78 | @Override | ||
79 | public Adapter caseDir(Dir object) { | ||
80 | return createDirAdapter(); | ||
81 | } | ||
82 | @Override | ||
83 | public Adapter caseFile(File object) { | ||
84 | return createFileAdapter(); | ||
85 | } | ||
86 | @Override | ||
87 | public Adapter caseModel(Model object) { | ||
88 | return createModelAdapter(); | ||
89 | } | ||
90 | @Override | ||
91 | public Adapter defaultCase(EObject object) { | ||
92 | return createEObjectAdapter(); | ||
93 | } | ||
94 | }; | ||
95 | |||
96 | /** | ||
97 | * Creates an adapter for the <code>target</code>. | ||
98 | * <!-- begin-user-doc --> | ||
99 | * <!-- end-user-doc --> | ||
100 | * @param target the object to adapt. | ||
101 | * @return the adapter for the <code>target</code>. | ||
102 | * @generated | ||
103 | */ | ||
104 | @Override | ||
105 | public Adapter createAdapter(Notifier target) { | ||
106 | return modelSwitch.doSwitch((EObject)target); | ||
107 | } | ||
108 | |||
109 | |||
110 | /** | ||
111 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem <em>File System</em>}'. | ||
112 | * <!-- begin-user-doc --> | ||
113 | * This default implementation returns null so that we can easily ignore cases; | ||
114 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
115 | * <!-- end-user-doc --> | ||
116 | * @return the new adapter. | ||
117 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FileSystem | ||
118 | * @generated | ||
119 | */ | ||
120 | public Adapter createFileSystemAdapter() { | ||
121 | return null; | ||
122 | } | ||
123 | |||
124 | /** | ||
125 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject <em>FS Object</em>}'. | ||
126 | * <!-- begin-user-doc --> | ||
127 | * This default implementation returns null so that we can easily ignore cases; | ||
128 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
129 | * <!-- end-user-doc --> | ||
130 | * @return the new adapter. | ||
131 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.FSObject | ||
132 | * @generated | ||
133 | */ | ||
134 | public Adapter createFSObjectAdapter() { | ||
135 | return null; | ||
136 | } | ||
137 | |||
138 | /** | ||
139 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir <em>Dir</em>}'. | ||
140 | * <!-- begin-user-doc --> | ||
141 | * This default implementation returns null so that we can easily ignore cases; | ||
142 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
143 | * <!-- end-user-doc --> | ||
144 | * @return the new adapter. | ||
145 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Dir | ||
146 | * @generated | ||
147 | */ | ||
148 | public Adapter createDirAdapter() { | ||
149 | return null; | ||
150 | } | ||
151 | |||
152 | /** | ||
153 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.File <em>File</em>}'. | ||
154 | * <!-- begin-user-doc --> | ||
155 | * This default implementation returns null so that we can easily ignore cases; | ||
156 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
157 | * <!-- end-user-doc --> | ||
158 | * @return the new adapter. | ||
159 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.File | ||
160 | * @generated | ||
161 | */ | ||
162 | public Adapter createFileAdapter() { | ||
163 | return null; | ||
164 | } | ||
165 | |||
166 | /** | ||
167 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model <em>Model</em>}'. | ||
168 | * <!-- begin-user-doc --> | ||
169 | * This default implementation returns null so that we can easily ignore cases; | ||
170 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
171 | * <!-- end-user-doc --> | ||
172 | * @return the new adapter. | ||
173 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.Model | ||
174 | * @generated | ||
175 | */ | ||
176 | public Adapter createModelAdapter() { | ||
177 | return null; | ||
178 | } | ||
179 | |||
180 | /** | ||
181 | * Creates a new adapter for the default case. | ||
182 | * <!-- begin-user-doc --> | ||
183 | * This default implementation returns null. | ||
184 | * <!-- end-user-doc --> | ||
185 | * @return the new adapter. | ||
186 | * @generated | ||
187 | */ | ||
188 | public Adapter createEObjectAdapter() { | ||
189 | return null; | ||
190 | } | ||
191 | |||
192 | } //filesystemAdapterFactory | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/util/filesystemSwitch.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/util/filesystemSwitch.java new file mode 100644 index 00000000..33f4c7a4 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/filesystem/util/filesystemSwitch.java | |||
@@ -0,0 +1,196 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.util; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.*; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | import org.eclipse.emf.ecore.EPackage; | ||
9 | |||
10 | import org.eclipse.emf.ecore.util.Switch; | ||
11 | |||
12 | /** | ||
13 | * <!-- begin-user-doc --> | ||
14 | * The <b>Switch</b> for the model's inheritance hierarchy. | ||
15 | * It supports the call {@link #doSwitch(EObject) doSwitch(object)} | ||
16 | * to invoke the <code>caseXXX</code> method for each class of the model, | ||
17 | * starting with the actual class of the object | ||
18 | * and proceeding up the inheritance hierarchy | ||
19 | * until a non-null result is returned, | ||
20 | * which is the result of the switch. | ||
21 | * <!-- end-user-doc --> | ||
22 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.filesystem.filesystemPackage | ||
23 | * @generated | ||
24 | */ | ||
25 | public class filesystemSwitch<T> extends Switch<T> { | ||
26 | /** | ||
27 | * The cached model package | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | protected static filesystemPackage modelPackage; | ||
33 | |||
34 | /** | ||
35 | * Creates an instance of the switch. | ||
36 | * <!-- begin-user-doc --> | ||
37 | * <!-- end-user-doc --> | ||
38 | * @generated | ||
39 | */ | ||
40 | public filesystemSwitch() { | ||
41 | if (modelPackage == null) { | ||
42 | modelPackage = filesystemPackage.eINSTANCE; | ||
43 | } | ||
44 | } | ||
45 | |||
46 | /** | ||
47 | * Checks whether this is a switch for the given package. | ||
48 | * <!-- begin-user-doc --> | ||
49 | * <!-- end-user-doc --> | ||
50 | * @param ePackage the package in question. | ||
51 | * @return whether this is a switch for the given package. | ||
52 | * @generated | ||
53 | */ | ||
54 | @Override | ||
55 | protected boolean isSwitchFor(EPackage ePackage) { | ||
56 | return ePackage == modelPackage; | ||
57 | } | ||
58 | |||
59 | /** | ||
60 | * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. | ||
61 | * <!-- begin-user-doc --> | ||
62 | * <!-- end-user-doc --> | ||
63 | * @return the first non-null result returned by a <code>caseXXX</code> call. | ||
64 | * @generated | ||
65 | */ | ||
66 | @Override | ||
67 | protected T doSwitch(int classifierID, EObject theEObject) { | ||
68 | switch (classifierID) { | ||
69 | case filesystemPackage.FILE_SYSTEM: { | ||
70 | FileSystem fileSystem = (FileSystem)theEObject; | ||
71 | T result = caseFileSystem(fileSystem); | ||
72 | if (result == null) result = defaultCase(theEObject); | ||
73 | return result; | ||
74 | } | ||
75 | case filesystemPackage.FS_OBJECT: { | ||
76 | FSObject fsObject = (FSObject)theEObject; | ||
77 | T result = caseFSObject(fsObject); | ||
78 | if (result == null) result = defaultCase(theEObject); | ||
79 | return result; | ||
80 | } | ||
81 | case filesystemPackage.DIR: { | ||
82 | Dir dir = (Dir)theEObject; | ||
83 | T result = caseDir(dir); | ||
84 | if (result == null) result = caseFSObject(dir); | ||
85 | if (result == null) result = defaultCase(theEObject); | ||
86 | return result; | ||
87 | } | ||
88 | case filesystemPackage.FILE: { | ||
89 | File file = (File)theEObject; | ||
90 | T result = caseFile(file); | ||
91 | if (result == null) result = caseFSObject(file); | ||
92 | if (result == null) result = defaultCase(theEObject); | ||
93 | return result; | ||
94 | } | ||
95 | case filesystemPackage.MODEL: { | ||
96 | Model model = (Model)theEObject; | ||
97 | T result = caseModel(model); | ||
98 | if (result == null) result = defaultCase(theEObject); | ||
99 | return result; | ||
100 | } | ||
101 | default: return defaultCase(theEObject); | ||
102 | } | ||
103 | } | ||
104 | |||
105 | /** | ||
106 | * Returns the result of interpreting the object as an instance of '<em>File System</em>'. | ||
107 | * <!-- begin-user-doc --> | ||
108 | * This implementation returns null; | ||
109 | * returning a non-null result will terminate the switch. | ||
110 | * <!-- end-user-doc --> | ||
111 | * @param object the target of the switch. | ||
112 | * @return the result of interpreting the object as an instance of '<em>File System</em>'. | ||
113 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
114 | * @generated | ||
115 | */ | ||
116 | public T caseFileSystem(FileSystem object) { | ||
117 | return null; | ||
118 | } | ||
119 | |||
120 | /** | ||
121 | * Returns the result of interpreting the object as an instance of '<em>FS Object</em>'. | ||
122 | * <!-- begin-user-doc --> | ||
123 | * This implementation returns null; | ||
124 | * returning a non-null result will terminate the switch. | ||
125 | * <!-- end-user-doc --> | ||
126 | * @param object the target of the switch. | ||
127 | * @return the result of interpreting the object as an instance of '<em>FS Object</em>'. | ||
128 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
129 | * @generated | ||
130 | */ | ||
131 | public T caseFSObject(FSObject object) { | ||
132 | return null; | ||
133 | } | ||
134 | |||
135 | /** | ||
136 | * Returns the result of interpreting the object as an instance of '<em>Dir</em>'. | ||
137 | * <!-- begin-user-doc --> | ||
138 | * This implementation returns null; | ||
139 | * returning a non-null result will terminate the switch. | ||
140 | * <!-- end-user-doc --> | ||
141 | * @param object the target of the switch. | ||
142 | * @return the result of interpreting the object as an instance of '<em>Dir</em>'. | ||
143 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
144 | * @generated | ||
145 | */ | ||
146 | public T caseDir(Dir object) { | ||
147 | return null; | ||
148 | } | ||
149 | |||
150 | /** | ||
151 | * Returns the result of interpreting the object as an instance of '<em>File</em>'. | ||
152 | * <!-- begin-user-doc --> | ||
153 | * This implementation returns null; | ||
154 | * returning a non-null result will terminate the switch. | ||
155 | * <!-- end-user-doc --> | ||
156 | * @param object the target of the switch. | ||
157 | * @return the result of interpreting the object as an instance of '<em>File</em>'. | ||
158 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
159 | * @generated | ||
160 | */ | ||
161 | public T caseFile(File object) { | ||
162 | return null; | ||
163 | } | ||
164 | |||
165 | /** | ||
166 | * Returns the result of interpreting the object as an instance of '<em>Model</em>'. | ||
167 | * <!-- begin-user-doc --> | ||
168 | * This implementation returns null; | ||
169 | * returning a non-null result will terminate the switch. | ||
170 | * <!-- end-user-doc --> | ||
171 | * @param object the target of the switch. | ||
172 | * @return the result of interpreting the object as an instance of '<em>Model</em>'. | ||
173 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
174 | * @generated | ||
175 | */ | ||
176 | public T caseModel(Model object) { | ||
177 | return null; | ||
178 | } | ||
179 | |||
180 | /** | ||
181 | * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. | ||
182 | * <!-- begin-user-doc --> | ||
183 | * This implementation returns null; | ||
184 | * returning a non-null result will terminate the switch, but this is the last case anyway. | ||
185 | * <!-- end-user-doc --> | ||
186 | * @param object the target of the switch. | ||
187 | * @return the result of interpreting the object as an instance of '<em>EObject</em>'. | ||
188 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) | ||
189 | * @generated | ||
190 | */ | ||
191 | @Override | ||
192 | public T defaultCase(EObject object) { | ||
193 | return null; | ||
194 | } | ||
195 | |||
196 | } //filesystemSwitch | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Choice.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Choice.java new file mode 100644 index 00000000..fc2f0328 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Choice.java | |||
@@ -0,0 +1,17 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | |||
6 | /** | ||
7 | * <!-- begin-user-doc --> | ||
8 | * A representation of the model object '<em><b>Choice</b></em>'. | ||
9 | * <!-- end-user-doc --> | ||
10 | * | ||
11 | * | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getChoice() | ||
13 | * @model | ||
14 | * @generated | ||
15 | */ | ||
16 | public interface Choice extends Pseudostate { | ||
17 | } // Choice | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/CompositeElement.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/CompositeElement.java new file mode 100644 index 00000000..b0e38bcf --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/CompositeElement.java | |||
@@ -0,0 +1,42 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | |||
9 | /** | ||
10 | * <!-- begin-user-doc --> | ||
11 | * A representation of the model object '<em><b>Composite Element</b></em>'. | ||
12 | * <!-- end-user-doc --> | ||
13 | * | ||
14 | * <p> | ||
15 | * The following features are supported: | ||
16 | * </p> | ||
17 | * <ul> | ||
18 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement#getRegions <em>Regions</em>}</li> | ||
19 | * </ul> | ||
20 | * | ||
21 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getCompositeElement() | ||
22 | * @model abstract="true" | ||
23 | * @generated | ||
24 | */ | ||
25 | public interface CompositeElement extends EObject { | ||
26 | /** | ||
27 | * Returns the value of the '<em><b>Regions</b></em>' containment reference list. | ||
28 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region}. | ||
29 | * <!-- begin-user-doc --> | ||
30 | * <p> | ||
31 | * If the meaning of the '<em>Regions</em>' containment reference list isn't clear, | ||
32 | * there really should be more of a description here... | ||
33 | * </p> | ||
34 | * <!-- end-user-doc --> | ||
35 | * @return the value of the '<em>Regions</em>' containment reference list. | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getCompositeElement_Regions() | ||
37 | * @model containment="true" | ||
38 | * @generated | ||
39 | */ | ||
40 | EList<Region> getRegions(); | ||
41 | |||
42 | } // CompositeElement | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Exit.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Exit.java new file mode 100644 index 00000000..b134c14f --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Exit.java | |||
@@ -0,0 +1,17 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | |||
6 | /** | ||
7 | * <!-- begin-user-doc --> | ||
8 | * A representation of the model object '<em><b>Exit</b></em>'. | ||
9 | * <!-- end-user-doc --> | ||
10 | * | ||
11 | * | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getExit() | ||
13 | * @model | ||
14 | * @generated | ||
15 | */ | ||
16 | public interface Exit extends Pseudostate { | ||
17 | } // Exit | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/FinalState.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/FinalState.java new file mode 100644 index 00000000..5ec2a16a --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/FinalState.java | |||
@@ -0,0 +1,17 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | |||
6 | /** | ||
7 | * <!-- begin-user-doc --> | ||
8 | * A representation of the model object '<em><b>Final State</b></em>'. | ||
9 | * <!-- end-user-doc --> | ||
10 | * | ||
11 | * | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getFinalState() | ||
13 | * @model | ||
14 | * @generated | ||
15 | */ | ||
16 | public interface FinalState extends RegularState { | ||
17 | } // FinalState | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Pseudostate.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Pseudostate.java new file mode 100644 index 00000000..670a172a --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Pseudostate.java | |||
@@ -0,0 +1,17 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | |||
6 | /** | ||
7 | * <!-- begin-user-doc --> | ||
8 | * A representation of the model object '<em><b>Pseudostate</b></em>'. | ||
9 | * <!-- end-user-doc --> | ||
10 | * | ||
11 | * | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getPseudostate() | ||
13 | * @model abstract="true" | ||
14 | * @generated | ||
15 | */ | ||
16 | public interface Pseudostate extends Vertex { | ||
17 | } // Pseudostate | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Region.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Region.java new file mode 100644 index 00000000..84081ae8 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Region.java | |||
@@ -0,0 +1,42 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | |||
9 | /** | ||
10 | * <!-- begin-user-doc --> | ||
11 | * A representation of the model object '<em><b>Region</b></em>'. | ||
12 | * <!-- end-user-doc --> | ||
13 | * | ||
14 | * <p> | ||
15 | * The following features are supported: | ||
16 | * </p> | ||
17 | * <ul> | ||
18 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region#getVertices <em>Vertices</em>}</li> | ||
19 | * </ul> | ||
20 | * | ||
21 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getRegion() | ||
22 | * @model | ||
23 | * @generated | ||
24 | */ | ||
25 | public interface Region extends EObject { | ||
26 | /** | ||
27 | * Returns the value of the '<em><b>Vertices</b></em>' containment reference list. | ||
28 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex}. | ||
29 | * <!-- begin-user-doc --> | ||
30 | * <p> | ||
31 | * If the meaning of the '<em>Vertices</em>' containment reference list isn't clear, | ||
32 | * there really should be more of a description here... | ||
33 | * </p> | ||
34 | * <!-- end-user-doc --> | ||
35 | * @return the value of the '<em>Vertices</em>' containment reference list. | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getRegion_Vertices() | ||
37 | * @model containment="true" ordered="false" | ||
38 | * @generated | ||
39 | */ | ||
40 | EList<Vertex> getVertices(); | ||
41 | |||
42 | } // Region | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/RegularState.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/RegularState.java new file mode 100644 index 00000000..4ad05644 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/RegularState.java | |||
@@ -0,0 +1,17 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | |||
6 | /** | ||
7 | * <!-- begin-user-doc --> | ||
8 | * A representation of the model object '<em><b>Regular State</b></em>'. | ||
9 | * <!-- end-user-doc --> | ||
10 | * | ||
11 | * | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getRegularState() | ||
13 | * @model abstract="true" | ||
14 | * @generated | ||
15 | */ | ||
16 | public interface RegularState extends Vertex { | ||
17 | } // RegularState | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/State.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/State.java new file mode 100644 index 00000000..09667a01 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/State.java | |||
@@ -0,0 +1,17 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | |||
6 | /** | ||
7 | * <!-- begin-user-doc --> | ||
8 | * A representation of the model object '<em><b>State</b></em>'. | ||
9 | * <!-- end-user-doc --> | ||
10 | * | ||
11 | * | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getState() | ||
13 | * @model | ||
14 | * @generated | ||
15 | */ | ||
16 | public interface State extends RegularState, CompositeElement { | ||
17 | } // State | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Statechart.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Statechart.java new file mode 100644 index 00000000..0f8e383d --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Statechart.java | |||
@@ -0,0 +1,17 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | |||
6 | /** | ||
7 | * <!-- begin-user-doc --> | ||
8 | * A representation of the model object '<em><b>Statechart</b></em>'. | ||
9 | * <!-- end-user-doc --> | ||
10 | * | ||
11 | * | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getStatechart() | ||
13 | * @model | ||
14 | * @generated | ||
15 | */ | ||
16 | public interface Statechart extends CompositeElement { | ||
17 | } // Statechart | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Transition.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Transition.java new file mode 100644 index 00000000..c90c8d23 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Transition.java | |||
@@ -0,0 +1,81 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EObject; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Transition</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget <em>Target</em>}</li> | ||
17 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource <em>Source</em>}</li> | ||
18 | * </ul> | ||
19 | * | ||
20 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getTransition() | ||
21 | * @model | ||
22 | * @generated | ||
23 | */ | ||
24 | public interface Transition extends EObject { | ||
25 | /** | ||
26 | * Returns the value of the '<em><b>Target</b></em>' reference. | ||
27 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getIncomingTransitions <em>Incoming Transitions</em>}'. | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <p> | ||
30 | * If the meaning of the '<em>Target</em>' reference isn't clear, | ||
31 | * there really should be more of a description here... | ||
32 | * </p> | ||
33 | * <!-- end-user-doc --> | ||
34 | * @return the value of the '<em>Target</em>' reference. | ||
35 | * @see #setTarget(Vertex) | ||
36 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getTransition_Target() | ||
37 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getIncomingTransitions | ||
38 | * @model opposite="incomingTransitions" required="true" ordered="false" | ||
39 | * @generated | ||
40 | */ | ||
41 | Vertex getTarget(); | ||
42 | |||
43 | /** | ||
44 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget <em>Target</em>}' reference. | ||
45 | * <!-- begin-user-doc --> | ||
46 | * <!-- end-user-doc --> | ||
47 | * @param value the new value of the '<em>Target</em>' reference. | ||
48 | * @see #getTarget() | ||
49 | * @generated | ||
50 | */ | ||
51 | void setTarget(Vertex value); | ||
52 | |||
53 | /** | ||
54 | * Returns the value of the '<em><b>Source</b></em>' container reference. | ||
55 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getOutgoingTransitions <em>Outgoing Transitions</em>}'. | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <p> | ||
58 | * If the meaning of the '<em>Source</em>' container reference isn't clear, | ||
59 | * there really should be more of a description here... | ||
60 | * </p> | ||
61 | * <!-- end-user-doc --> | ||
62 | * @return the value of the '<em>Source</em>' container reference. | ||
63 | * @see #setSource(Vertex) | ||
64 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getTransition_Source() | ||
65 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getOutgoingTransitions | ||
66 | * @model opposite="outgoingTransitions" transient="false" ordered="false" | ||
67 | * @generated | ||
68 | */ | ||
69 | Vertex getSource(); | ||
70 | |||
71 | /** | ||
72 | * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource <em>Source</em>}' container reference. | ||
73 | * <!-- begin-user-doc --> | ||
74 | * <!-- end-user-doc --> | ||
75 | * @param value the new value of the '<em>Source</em>' container reference. | ||
76 | * @see #getSource() | ||
77 | * @generated | ||
78 | */ | ||
79 | void setSource(Vertex value); | ||
80 | |||
81 | } // Transition | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Vertex.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Vertex.java new file mode 100644 index 00000000..e4631e42 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Vertex.java | |||
@@ -0,0 +1,63 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | import org.eclipse.emf.common.util.EList; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | |||
9 | /** | ||
10 | * <!-- begin-user-doc --> | ||
11 | * A representation of the model object '<em><b>Vertex</b></em>'. | ||
12 | * <!-- end-user-doc --> | ||
13 | * | ||
14 | * <p> | ||
15 | * The following features are supported: | ||
16 | * </p> | ||
17 | * <ul> | ||
18 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getIncomingTransitions <em>Incoming Transitions</em>}</li> | ||
19 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getOutgoingTransitions <em>Outgoing Transitions</em>}</li> | ||
20 | * </ul> | ||
21 | * | ||
22 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getVertex() | ||
23 | * @model abstract="true" | ||
24 | * @generated | ||
25 | */ | ||
26 | public interface Vertex extends EObject { | ||
27 | /** | ||
28 | * Returns the value of the '<em><b>Incoming Transitions</b></em>' reference list. | ||
29 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition}. | ||
30 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget <em>Target</em>}'. | ||
31 | * <!-- begin-user-doc --> | ||
32 | * <p> | ||
33 | * If the meaning of the '<em>Incoming Transitions</em>' reference list isn't clear, | ||
34 | * there really should be more of a description here... | ||
35 | * </p> | ||
36 | * <!-- end-user-doc --> | ||
37 | * @return the value of the '<em>Incoming Transitions</em>' reference list. | ||
38 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getVertex_IncomingTransitions() | ||
39 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget | ||
40 | * @model opposite="target" ordered="false" | ||
41 | * @generated | ||
42 | */ | ||
43 | EList<Transition> getIncomingTransitions(); | ||
44 | |||
45 | /** | ||
46 | * Returns the value of the '<em><b>Outgoing Transitions</b></em>' containment reference list. | ||
47 | * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition}. | ||
48 | * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource <em>Source</em>}'. | ||
49 | * <!-- begin-user-doc --> | ||
50 | * <p> | ||
51 | * If the meaning of the '<em>Outgoing Transitions</em>' containment reference list isn't clear, | ||
52 | * there really should be more of a description here... | ||
53 | * </p> | ||
54 | * <!-- end-user-doc --> | ||
55 | * @return the value of the '<em>Outgoing Transitions</em>' containment reference list. | ||
56 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#getVertex_OutgoingTransitions() | ||
57 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource | ||
58 | * @model opposite="source" containment="true" ordered="false" | ||
59 | * @generated | ||
60 | */ | ||
61 | EList<Transition> getOutgoingTransitions(); | ||
62 | |||
63 | } // Vertex | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/YakinduFactory.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/YakinduFactory.java new file mode 100644 index 00000000..53afae22 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/YakinduFactory.java | |||
@@ -0,0 +1,114 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EFactory; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * The <b>Factory</b> for the model. | ||
10 | * It provides a create method for each non-abstract class of the model. | ||
11 | * <!-- end-user-doc --> | ||
12 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage | ||
13 | * @generated | ||
14 | */ | ||
15 | public interface YakinduFactory extends EFactory { | ||
16 | /** | ||
17 | * The singleton instance of the factory. | ||
18 | * <!-- begin-user-doc --> | ||
19 | * <!-- end-user-doc --> | ||
20 | * @generated | ||
21 | */ | ||
22 | YakinduFactory eINSTANCE = ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduFactoryImpl.init(); | ||
23 | |||
24 | /** | ||
25 | * Returns a new object of class '<em>Region</em>'. | ||
26 | * <!-- begin-user-doc --> | ||
27 | * <!-- end-user-doc --> | ||
28 | * @return a new object of class '<em>Region</em>'. | ||
29 | * @generated | ||
30 | */ | ||
31 | Region createRegion(); | ||
32 | |||
33 | /** | ||
34 | * Returns a new object of class '<em>Transition</em>'. | ||
35 | * <!-- begin-user-doc --> | ||
36 | * <!-- end-user-doc --> | ||
37 | * @return a new object of class '<em>Transition</em>'. | ||
38 | * @generated | ||
39 | */ | ||
40 | Transition createTransition(); | ||
41 | |||
42 | /** | ||
43 | * Returns a new object of class '<em>Statechart</em>'. | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @return a new object of class '<em>Statechart</em>'. | ||
47 | * @generated | ||
48 | */ | ||
49 | Statechart createStatechart(); | ||
50 | |||
51 | /** | ||
52 | * Returns a new object of class '<em>Entry</em>'. | ||
53 | * <!-- begin-user-doc --> | ||
54 | * <!-- end-user-doc --> | ||
55 | * @return a new object of class '<em>Entry</em>'. | ||
56 | * @generated | ||
57 | */ | ||
58 | Entry createEntry(); | ||
59 | |||
60 | /** | ||
61 | * Returns a new object of class '<em>Synchronization</em>'. | ||
62 | * <!-- begin-user-doc --> | ||
63 | * <!-- end-user-doc --> | ||
64 | * @return a new object of class '<em>Synchronization</em>'. | ||
65 | * @generated | ||
66 | */ | ||
67 | Synchronization createSynchronization(); | ||
68 | |||
69 | /** | ||
70 | * Returns a new object of class '<em>State</em>'. | ||
71 | * <!-- begin-user-doc --> | ||
72 | * <!-- end-user-doc --> | ||
73 | * @return a new object of class '<em>State</em>'. | ||
74 | * @generated | ||
75 | */ | ||
76 | State createState(); | ||
77 | |||
78 | /** | ||
79 | * Returns a new object of class '<em>Choice</em>'. | ||
80 | * <!-- begin-user-doc --> | ||
81 | * <!-- end-user-doc --> | ||
82 | * @return a new object of class '<em>Choice</em>'. | ||
83 | * @generated | ||
84 | */ | ||
85 | Choice createChoice(); | ||
86 | |||
87 | /** | ||
88 | * Returns a new object of class '<em>Exit</em>'. | ||
89 | * <!-- begin-user-doc --> | ||
90 | * <!-- end-user-doc --> | ||
91 | * @return a new object of class '<em>Exit</em>'. | ||
92 | * @generated | ||
93 | */ | ||
94 | Exit createExit(); | ||
95 | |||
96 | /** | ||
97 | * Returns a new object of class '<em>Final State</em>'. | ||
98 | * <!-- begin-user-doc --> | ||
99 | * <!-- end-user-doc --> | ||
100 | * @return a new object of class '<em>Final State</em>'. | ||
101 | * @generated | ||
102 | */ | ||
103 | FinalState createFinalState(); | ||
104 | |||
105 | /** | ||
106 | * Returns the package supported by this factory. | ||
107 | * <!-- begin-user-doc --> | ||
108 | * <!-- end-user-doc --> | ||
109 | * @return the package supported by this factory. | ||
110 | * @generated | ||
111 | */ | ||
112 | YakinduPackage getYakinduPackage(); | ||
113 | |||
114 | } //YakinduFactory | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/YakinduPackage.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/YakinduPackage.java new file mode 100644 index 00000000..7fbe176c --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/YakinduPackage.java | |||
@@ -0,0 +1,1038 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EClass; | ||
6 | import org.eclipse.emf.ecore.EPackage; | ||
7 | import org.eclipse.emf.ecore.EReference; | ||
8 | |||
9 | /** | ||
10 | * <!-- begin-user-doc --> | ||
11 | * The <b>Package</b> for the model. | ||
12 | * It contains accessors for the meta objects to represent | ||
13 | * <ul> | ||
14 | * <li>each class,</li> | ||
15 | * <li>each feature of each class,</li> | ||
16 | * <li>each operation of each class,</li> | ||
17 | * <li>each enum,</li> | ||
18 | * <li>and each data type</li> | ||
19 | * </ul> | ||
20 | * <!-- end-user-doc --> | ||
21 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduFactory | ||
22 | * @model kind="package" | ||
23 | * @generated | ||
24 | */ | ||
25 | public interface YakinduPackage extends EPackage { | ||
26 | /** | ||
27 | * The package name. | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | String eNAME = "yakindu"; | ||
33 | |||
34 | /** | ||
35 | * The package namespace URI. | ||
36 | * <!-- begin-user-doc --> | ||
37 | * <!-- end-user-doc --> | ||
38 | * @generated | ||
39 | */ | ||
40 | String eNS_URI = "YakinduMetamodel"; | ||
41 | |||
42 | /** | ||
43 | * The package namespace name. | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @generated | ||
47 | */ | ||
48 | String eNS_PREFIX = "yakindu"; | ||
49 | |||
50 | /** | ||
51 | * The singleton instance of the package. | ||
52 | * <!-- begin-user-doc --> | ||
53 | * <!-- end-user-doc --> | ||
54 | * @generated | ||
55 | */ | ||
56 | YakinduPackage eINSTANCE = ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl.init(); | ||
57 | |||
58 | /** | ||
59 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl <em>Vertex</em>}' class. | ||
60 | * <!-- begin-user-doc --> | ||
61 | * <!-- end-user-doc --> | ||
62 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl | ||
63 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getVertex() | ||
64 | * @generated | ||
65 | */ | ||
66 | int VERTEX = 1; | ||
67 | |||
68 | /** | ||
69 | * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list. | ||
70 | * <!-- begin-user-doc --> | ||
71 | * <!-- end-user-doc --> | ||
72 | * @generated | ||
73 | * @ordered | ||
74 | */ | ||
75 | int VERTEX__INCOMING_TRANSITIONS = 0; | ||
76 | |||
77 | /** | ||
78 | * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list. | ||
79 | * <!-- begin-user-doc --> | ||
80 | * <!-- end-user-doc --> | ||
81 | * @generated | ||
82 | * @ordered | ||
83 | */ | ||
84 | int VERTEX__OUTGOING_TRANSITIONS = 1; | ||
85 | |||
86 | /** | ||
87 | * The number of structural features of the '<em>Vertex</em>' class. | ||
88 | * <!-- begin-user-doc --> | ||
89 | * <!-- end-user-doc --> | ||
90 | * @generated | ||
91 | * @ordered | ||
92 | */ | ||
93 | int VERTEX_FEATURE_COUNT = 2; | ||
94 | |||
95 | /** | ||
96 | * The number of operations of the '<em>Vertex</em>' class. | ||
97 | * <!-- begin-user-doc --> | ||
98 | * <!-- end-user-doc --> | ||
99 | * @generated | ||
100 | * @ordered | ||
101 | */ | ||
102 | int VERTEX_OPERATION_COUNT = 0; | ||
103 | |||
104 | /** | ||
105 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.PseudostateImpl <em>Pseudostate</em>}' class. | ||
106 | * <!-- begin-user-doc --> | ||
107 | * <!-- end-user-doc --> | ||
108 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.PseudostateImpl | ||
109 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getPseudostate() | ||
110 | * @generated | ||
111 | */ | ||
112 | int PSEUDOSTATE = 0; | ||
113 | |||
114 | /** | ||
115 | * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list. | ||
116 | * <!-- begin-user-doc --> | ||
117 | * <!-- end-user-doc --> | ||
118 | * @generated | ||
119 | * @ordered | ||
120 | */ | ||
121 | int PSEUDOSTATE__INCOMING_TRANSITIONS = VERTEX__INCOMING_TRANSITIONS; | ||
122 | |||
123 | /** | ||
124 | * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list. | ||
125 | * <!-- begin-user-doc --> | ||
126 | * <!-- end-user-doc --> | ||
127 | * @generated | ||
128 | * @ordered | ||
129 | */ | ||
130 | int PSEUDOSTATE__OUTGOING_TRANSITIONS = VERTEX__OUTGOING_TRANSITIONS; | ||
131 | |||
132 | /** | ||
133 | * The number of structural features of the '<em>Pseudostate</em>' class. | ||
134 | * <!-- begin-user-doc --> | ||
135 | * <!-- end-user-doc --> | ||
136 | * @generated | ||
137 | * @ordered | ||
138 | */ | ||
139 | int PSEUDOSTATE_FEATURE_COUNT = VERTEX_FEATURE_COUNT + 0; | ||
140 | |||
141 | /** | ||
142 | * The number of operations of the '<em>Pseudostate</em>' class. | ||
143 | * <!-- begin-user-doc --> | ||
144 | * <!-- end-user-doc --> | ||
145 | * @generated | ||
146 | * @ordered | ||
147 | */ | ||
148 | int PSEUDOSTATE_OPERATION_COUNT = VERTEX_OPERATION_COUNT + 0; | ||
149 | |||
150 | /** | ||
151 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegionImpl <em>Region</em>}' class. | ||
152 | * <!-- begin-user-doc --> | ||
153 | * <!-- end-user-doc --> | ||
154 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegionImpl | ||
155 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getRegion() | ||
156 | * @generated | ||
157 | */ | ||
158 | int REGION = 2; | ||
159 | |||
160 | /** | ||
161 | * The feature id for the '<em><b>Vertices</b></em>' containment reference list. | ||
162 | * <!-- begin-user-doc --> | ||
163 | * <!-- end-user-doc --> | ||
164 | * @generated | ||
165 | * @ordered | ||
166 | */ | ||
167 | int REGION__VERTICES = 0; | ||
168 | |||
169 | /** | ||
170 | * The number of structural features of the '<em>Region</em>' class. | ||
171 | * <!-- begin-user-doc --> | ||
172 | * <!-- end-user-doc --> | ||
173 | * @generated | ||
174 | * @ordered | ||
175 | */ | ||
176 | int REGION_FEATURE_COUNT = 1; | ||
177 | |||
178 | /** | ||
179 | * The number of operations of the '<em>Region</em>' class. | ||
180 | * <!-- begin-user-doc --> | ||
181 | * <!-- end-user-doc --> | ||
182 | * @generated | ||
183 | * @ordered | ||
184 | */ | ||
185 | int REGION_OPERATION_COUNT = 0; | ||
186 | |||
187 | /** | ||
188 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl <em>Transition</em>}' class. | ||
189 | * <!-- begin-user-doc --> | ||
190 | * <!-- end-user-doc --> | ||
191 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl | ||
192 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getTransition() | ||
193 | * @generated | ||
194 | */ | ||
195 | int TRANSITION = 3; | ||
196 | |||
197 | /** | ||
198 | * The feature id for the '<em><b>Target</b></em>' reference. | ||
199 | * <!-- begin-user-doc --> | ||
200 | * <!-- end-user-doc --> | ||
201 | * @generated | ||
202 | * @ordered | ||
203 | */ | ||
204 | int TRANSITION__TARGET = 0; | ||
205 | |||
206 | /** | ||
207 | * The feature id for the '<em><b>Source</b></em>' container reference. | ||
208 | * <!-- begin-user-doc --> | ||
209 | * <!-- end-user-doc --> | ||
210 | * @generated | ||
211 | * @ordered | ||
212 | */ | ||
213 | int TRANSITION__SOURCE = 1; | ||
214 | |||
215 | /** | ||
216 | * The number of structural features of the '<em>Transition</em>' class. | ||
217 | * <!-- begin-user-doc --> | ||
218 | * <!-- end-user-doc --> | ||
219 | * @generated | ||
220 | * @ordered | ||
221 | */ | ||
222 | int TRANSITION_FEATURE_COUNT = 2; | ||
223 | |||
224 | /** | ||
225 | * The number of operations of the '<em>Transition</em>' class. | ||
226 | * <!-- begin-user-doc --> | ||
227 | * <!-- end-user-doc --> | ||
228 | * @generated | ||
229 | * @ordered | ||
230 | */ | ||
231 | int TRANSITION_OPERATION_COUNT = 0; | ||
232 | |||
233 | /** | ||
234 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.CompositeElementImpl <em>Composite Element</em>}' class. | ||
235 | * <!-- begin-user-doc --> | ||
236 | * <!-- end-user-doc --> | ||
237 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.CompositeElementImpl | ||
238 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getCompositeElement() | ||
239 | * @generated | ||
240 | */ | ||
241 | int COMPOSITE_ELEMENT = 9; | ||
242 | |||
243 | /** | ||
244 | * The feature id for the '<em><b>Regions</b></em>' containment reference list. | ||
245 | * <!-- begin-user-doc --> | ||
246 | * <!-- end-user-doc --> | ||
247 | * @generated | ||
248 | * @ordered | ||
249 | */ | ||
250 | int COMPOSITE_ELEMENT__REGIONS = 0; | ||
251 | |||
252 | /** | ||
253 | * The number of structural features of the '<em>Composite Element</em>' class. | ||
254 | * <!-- begin-user-doc --> | ||
255 | * <!-- end-user-doc --> | ||
256 | * @generated | ||
257 | * @ordered | ||
258 | */ | ||
259 | int COMPOSITE_ELEMENT_FEATURE_COUNT = 1; | ||
260 | |||
261 | /** | ||
262 | * The number of operations of the '<em>Composite Element</em>' class. | ||
263 | * <!-- begin-user-doc --> | ||
264 | * <!-- end-user-doc --> | ||
265 | * @generated | ||
266 | * @ordered | ||
267 | */ | ||
268 | int COMPOSITE_ELEMENT_OPERATION_COUNT = 0; | ||
269 | |||
270 | /** | ||
271 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StatechartImpl <em>Statechart</em>}' class. | ||
272 | * <!-- begin-user-doc --> | ||
273 | * <!-- end-user-doc --> | ||
274 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StatechartImpl | ||
275 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getStatechart() | ||
276 | * @generated | ||
277 | */ | ||
278 | int STATECHART = 4; | ||
279 | |||
280 | /** | ||
281 | * The feature id for the '<em><b>Regions</b></em>' containment reference list. | ||
282 | * <!-- begin-user-doc --> | ||
283 | * <!-- end-user-doc --> | ||
284 | * @generated | ||
285 | * @ordered | ||
286 | */ | ||
287 | int STATECHART__REGIONS = COMPOSITE_ELEMENT__REGIONS; | ||
288 | |||
289 | /** | ||
290 | * The number of structural features of the '<em>Statechart</em>' class. | ||
291 | * <!-- begin-user-doc --> | ||
292 | * <!-- end-user-doc --> | ||
293 | * @generated | ||
294 | * @ordered | ||
295 | */ | ||
296 | int STATECHART_FEATURE_COUNT = COMPOSITE_ELEMENT_FEATURE_COUNT + 0; | ||
297 | |||
298 | /** | ||
299 | * The number of operations of the '<em>Statechart</em>' class. | ||
300 | * <!-- begin-user-doc --> | ||
301 | * <!-- end-user-doc --> | ||
302 | * @generated | ||
303 | * @ordered | ||
304 | */ | ||
305 | int STATECHART_OPERATION_COUNT = COMPOSITE_ELEMENT_OPERATION_COUNT + 0; | ||
306 | |||
307 | /** | ||
308 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.EntryImpl <em>Entry</em>}' class. | ||
309 | * <!-- begin-user-doc --> | ||
310 | * <!-- end-user-doc --> | ||
311 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.EntryImpl | ||
312 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getEntry() | ||
313 | * @generated | ||
314 | */ | ||
315 | int ENTRY = 5; | ||
316 | |||
317 | /** | ||
318 | * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list. | ||
319 | * <!-- begin-user-doc --> | ||
320 | * <!-- end-user-doc --> | ||
321 | * @generated | ||
322 | * @ordered | ||
323 | */ | ||
324 | int ENTRY__INCOMING_TRANSITIONS = PSEUDOSTATE__INCOMING_TRANSITIONS; | ||
325 | |||
326 | /** | ||
327 | * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list. | ||
328 | * <!-- begin-user-doc --> | ||
329 | * <!-- end-user-doc --> | ||
330 | * @generated | ||
331 | * @ordered | ||
332 | */ | ||
333 | int ENTRY__OUTGOING_TRANSITIONS = PSEUDOSTATE__OUTGOING_TRANSITIONS; | ||
334 | |||
335 | /** | ||
336 | * The number of structural features of the '<em>Entry</em>' class. | ||
337 | * <!-- begin-user-doc --> | ||
338 | * <!-- end-user-doc --> | ||
339 | * @generated | ||
340 | * @ordered | ||
341 | */ | ||
342 | int ENTRY_FEATURE_COUNT = PSEUDOSTATE_FEATURE_COUNT + 0; | ||
343 | |||
344 | /** | ||
345 | * The number of operations of the '<em>Entry</em>' class. | ||
346 | * <!-- begin-user-doc --> | ||
347 | * <!-- end-user-doc --> | ||
348 | * @generated | ||
349 | * @ordered | ||
350 | */ | ||
351 | int ENTRY_OPERATION_COUNT = PSEUDOSTATE_OPERATION_COUNT + 0; | ||
352 | |||
353 | /** | ||
354 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.SynchronizationImpl <em>Synchronization</em>}' class. | ||
355 | * <!-- begin-user-doc --> | ||
356 | * <!-- end-user-doc --> | ||
357 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.SynchronizationImpl | ||
358 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getSynchronization() | ||
359 | * @generated | ||
360 | */ | ||
361 | int SYNCHRONIZATION = 6; | ||
362 | |||
363 | /** | ||
364 | * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list. | ||
365 | * <!-- begin-user-doc --> | ||
366 | * <!-- end-user-doc --> | ||
367 | * @generated | ||
368 | * @ordered | ||
369 | */ | ||
370 | int SYNCHRONIZATION__INCOMING_TRANSITIONS = PSEUDOSTATE__INCOMING_TRANSITIONS; | ||
371 | |||
372 | /** | ||
373 | * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list. | ||
374 | * <!-- begin-user-doc --> | ||
375 | * <!-- end-user-doc --> | ||
376 | * @generated | ||
377 | * @ordered | ||
378 | */ | ||
379 | int SYNCHRONIZATION__OUTGOING_TRANSITIONS = PSEUDOSTATE__OUTGOING_TRANSITIONS; | ||
380 | |||
381 | /** | ||
382 | * The number of structural features of the '<em>Synchronization</em>' class. | ||
383 | * <!-- begin-user-doc --> | ||
384 | * <!-- end-user-doc --> | ||
385 | * @generated | ||
386 | * @ordered | ||
387 | */ | ||
388 | int SYNCHRONIZATION_FEATURE_COUNT = PSEUDOSTATE_FEATURE_COUNT + 0; | ||
389 | |||
390 | /** | ||
391 | * The number of operations of the '<em>Synchronization</em>' class. | ||
392 | * <!-- begin-user-doc --> | ||
393 | * <!-- end-user-doc --> | ||
394 | * @generated | ||
395 | * @ordered | ||
396 | */ | ||
397 | int SYNCHRONIZATION_OPERATION_COUNT = PSEUDOSTATE_OPERATION_COUNT + 0; | ||
398 | |||
399 | /** | ||
400 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegularStateImpl <em>Regular State</em>}' class. | ||
401 | * <!-- begin-user-doc --> | ||
402 | * <!-- end-user-doc --> | ||
403 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegularStateImpl | ||
404 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getRegularState() | ||
405 | * @generated | ||
406 | */ | ||
407 | int REGULAR_STATE = 8; | ||
408 | |||
409 | /** | ||
410 | * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list. | ||
411 | * <!-- begin-user-doc --> | ||
412 | * <!-- end-user-doc --> | ||
413 | * @generated | ||
414 | * @ordered | ||
415 | */ | ||
416 | int REGULAR_STATE__INCOMING_TRANSITIONS = VERTEX__INCOMING_TRANSITIONS; | ||
417 | |||
418 | /** | ||
419 | * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list. | ||
420 | * <!-- begin-user-doc --> | ||
421 | * <!-- end-user-doc --> | ||
422 | * @generated | ||
423 | * @ordered | ||
424 | */ | ||
425 | int REGULAR_STATE__OUTGOING_TRANSITIONS = VERTEX__OUTGOING_TRANSITIONS; | ||
426 | |||
427 | /** | ||
428 | * The number of structural features of the '<em>Regular State</em>' class. | ||
429 | * <!-- begin-user-doc --> | ||
430 | * <!-- end-user-doc --> | ||
431 | * @generated | ||
432 | * @ordered | ||
433 | */ | ||
434 | int REGULAR_STATE_FEATURE_COUNT = VERTEX_FEATURE_COUNT + 0; | ||
435 | |||
436 | /** | ||
437 | * The number of operations of the '<em>Regular State</em>' class. | ||
438 | * <!-- begin-user-doc --> | ||
439 | * <!-- end-user-doc --> | ||
440 | * @generated | ||
441 | * @ordered | ||
442 | */ | ||
443 | int REGULAR_STATE_OPERATION_COUNT = VERTEX_OPERATION_COUNT + 0; | ||
444 | |||
445 | /** | ||
446 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StateImpl <em>State</em>}' class. | ||
447 | * <!-- begin-user-doc --> | ||
448 | * <!-- end-user-doc --> | ||
449 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StateImpl | ||
450 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getState() | ||
451 | * @generated | ||
452 | */ | ||
453 | int STATE = 7; | ||
454 | |||
455 | /** | ||
456 | * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list. | ||
457 | * <!-- begin-user-doc --> | ||
458 | * <!-- end-user-doc --> | ||
459 | * @generated | ||
460 | * @ordered | ||
461 | */ | ||
462 | int STATE__INCOMING_TRANSITIONS = REGULAR_STATE__INCOMING_TRANSITIONS; | ||
463 | |||
464 | /** | ||
465 | * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list. | ||
466 | * <!-- begin-user-doc --> | ||
467 | * <!-- end-user-doc --> | ||
468 | * @generated | ||
469 | * @ordered | ||
470 | */ | ||
471 | int STATE__OUTGOING_TRANSITIONS = REGULAR_STATE__OUTGOING_TRANSITIONS; | ||
472 | |||
473 | /** | ||
474 | * The feature id for the '<em><b>Regions</b></em>' containment reference list. | ||
475 | * <!-- begin-user-doc --> | ||
476 | * <!-- end-user-doc --> | ||
477 | * @generated | ||
478 | * @ordered | ||
479 | */ | ||
480 | int STATE__REGIONS = REGULAR_STATE_FEATURE_COUNT + 0; | ||
481 | |||
482 | /** | ||
483 | * The number of structural features of the '<em>State</em>' class. | ||
484 | * <!-- begin-user-doc --> | ||
485 | * <!-- end-user-doc --> | ||
486 | * @generated | ||
487 | * @ordered | ||
488 | */ | ||
489 | int STATE_FEATURE_COUNT = REGULAR_STATE_FEATURE_COUNT + 1; | ||
490 | |||
491 | /** | ||
492 | * The number of operations of the '<em>State</em>' class. | ||
493 | * <!-- begin-user-doc --> | ||
494 | * <!-- end-user-doc --> | ||
495 | * @generated | ||
496 | * @ordered | ||
497 | */ | ||
498 | int STATE_OPERATION_COUNT = REGULAR_STATE_OPERATION_COUNT + 0; | ||
499 | |||
500 | /** | ||
501 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ChoiceImpl <em>Choice</em>}' class. | ||
502 | * <!-- begin-user-doc --> | ||
503 | * <!-- end-user-doc --> | ||
504 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ChoiceImpl | ||
505 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getChoice() | ||
506 | * @generated | ||
507 | */ | ||
508 | int CHOICE = 10; | ||
509 | |||
510 | /** | ||
511 | * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list. | ||
512 | * <!-- begin-user-doc --> | ||
513 | * <!-- end-user-doc --> | ||
514 | * @generated | ||
515 | * @ordered | ||
516 | */ | ||
517 | int CHOICE__INCOMING_TRANSITIONS = PSEUDOSTATE__INCOMING_TRANSITIONS; | ||
518 | |||
519 | /** | ||
520 | * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list. | ||
521 | * <!-- begin-user-doc --> | ||
522 | * <!-- end-user-doc --> | ||
523 | * @generated | ||
524 | * @ordered | ||
525 | */ | ||
526 | int CHOICE__OUTGOING_TRANSITIONS = PSEUDOSTATE__OUTGOING_TRANSITIONS; | ||
527 | |||
528 | /** | ||
529 | * The number of structural features of the '<em>Choice</em>' class. | ||
530 | * <!-- begin-user-doc --> | ||
531 | * <!-- end-user-doc --> | ||
532 | * @generated | ||
533 | * @ordered | ||
534 | */ | ||
535 | int CHOICE_FEATURE_COUNT = PSEUDOSTATE_FEATURE_COUNT + 0; | ||
536 | |||
537 | /** | ||
538 | * The number of operations of the '<em>Choice</em>' class. | ||
539 | * <!-- begin-user-doc --> | ||
540 | * <!-- end-user-doc --> | ||
541 | * @generated | ||
542 | * @ordered | ||
543 | */ | ||
544 | int CHOICE_OPERATION_COUNT = PSEUDOSTATE_OPERATION_COUNT + 0; | ||
545 | |||
546 | /** | ||
547 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ExitImpl <em>Exit</em>}' class. | ||
548 | * <!-- begin-user-doc --> | ||
549 | * <!-- end-user-doc --> | ||
550 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ExitImpl | ||
551 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getExit() | ||
552 | * @generated | ||
553 | */ | ||
554 | int EXIT = 11; | ||
555 | |||
556 | /** | ||
557 | * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list. | ||
558 | * <!-- begin-user-doc --> | ||
559 | * <!-- end-user-doc --> | ||
560 | * @generated | ||
561 | * @ordered | ||
562 | */ | ||
563 | int EXIT__INCOMING_TRANSITIONS = PSEUDOSTATE__INCOMING_TRANSITIONS; | ||
564 | |||
565 | /** | ||
566 | * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list. | ||
567 | * <!-- begin-user-doc --> | ||
568 | * <!-- end-user-doc --> | ||
569 | * @generated | ||
570 | * @ordered | ||
571 | */ | ||
572 | int EXIT__OUTGOING_TRANSITIONS = PSEUDOSTATE__OUTGOING_TRANSITIONS; | ||
573 | |||
574 | /** | ||
575 | * The number of structural features of the '<em>Exit</em>' class. | ||
576 | * <!-- begin-user-doc --> | ||
577 | * <!-- end-user-doc --> | ||
578 | * @generated | ||
579 | * @ordered | ||
580 | */ | ||
581 | int EXIT_FEATURE_COUNT = PSEUDOSTATE_FEATURE_COUNT + 0; | ||
582 | |||
583 | /** | ||
584 | * The number of operations of the '<em>Exit</em>' class. | ||
585 | * <!-- begin-user-doc --> | ||
586 | * <!-- end-user-doc --> | ||
587 | * @generated | ||
588 | * @ordered | ||
589 | */ | ||
590 | int EXIT_OPERATION_COUNT = PSEUDOSTATE_OPERATION_COUNT + 0; | ||
591 | |||
592 | /** | ||
593 | * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.FinalStateImpl <em>Final State</em>}' class. | ||
594 | * <!-- begin-user-doc --> | ||
595 | * <!-- end-user-doc --> | ||
596 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.FinalStateImpl | ||
597 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getFinalState() | ||
598 | * @generated | ||
599 | */ | ||
600 | int FINAL_STATE = 12; | ||
601 | |||
602 | /** | ||
603 | * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list. | ||
604 | * <!-- begin-user-doc --> | ||
605 | * <!-- end-user-doc --> | ||
606 | * @generated | ||
607 | * @ordered | ||
608 | */ | ||
609 | int FINAL_STATE__INCOMING_TRANSITIONS = REGULAR_STATE__INCOMING_TRANSITIONS; | ||
610 | |||
611 | /** | ||
612 | * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list. | ||
613 | * <!-- begin-user-doc --> | ||
614 | * <!-- end-user-doc --> | ||
615 | * @generated | ||
616 | * @ordered | ||
617 | */ | ||
618 | int FINAL_STATE__OUTGOING_TRANSITIONS = REGULAR_STATE__OUTGOING_TRANSITIONS; | ||
619 | |||
620 | /** | ||
621 | * The number of structural features of the '<em>Final State</em>' class. | ||
622 | * <!-- begin-user-doc --> | ||
623 | * <!-- end-user-doc --> | ||
624 | * @generated | ||
625 | * @ordered | ||
626 | */ | ||
627 | int FINAL_STATE_FEATURE_COUNT = REGULAR_STATE_FEATURE_COUNT + 0; | ||
628 | |||
629 | /** | ||
630 | * The number of operations of the '<em>Final State</em>' class. | ||
631 | * <!-- begin-user-doc --> | ||
632 | * <!-- end-user-doc --> | ||
633 | * @generated | ||
634 | * @ordered | ||
635 | */ | ||
636 | int FINAL_STATE_OPERATION_COUNT = REGULAR_STATE_OPERATION_COUNT + 0; | ||
637 | |||
638 | |||
639 | /** | ||
640 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate <em>Pseudostate</em>}'. | ||
641 | * <!-- begin-user-doc --> | ||
642 | * <!-- end-user-doc --> | ||
643 | * @return the meta object for class '<em>Pseudostate</em>'. | ||
644 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate | ||
645 | * @generated | ||
646 | */ | ||
647 | EClass getPseudostate(); | ||
648 | |||
649 | /** | ||
650 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex <em>Vertex</em>}'. | ||
651 | * <!-- begin-user-doc --> | ||
652 | * <!-- end-user-doc --> | ||
653 | * @return the meta object for class '<em>Vertex</em>'. | ||
654 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex | ||
655 | * @generated | ||
656 | */ | ||
657 | EClass getVertex(); | ||
658 | |||
659 | /** | ||
660 | * Returns the meta object for the reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getIncomingTransitions <em>Incoming Transitions</em>}'. | ||
661 | * <!-- begin-user-doc --> | ||
662 | * <!-- end-user-doc --> | ||
663 | * @return the meta object for the reference list '<em>Incoming Transitions</em>'. | ||
664 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getIncomingTransitions() | ||
665 | * @see #getVertex() | ||
666 | * @generated | ||
667 | */ | ||
668 | EReference getVertex_IncomingTransitions(); | ||
669 | |||
670 | /** | ||
671 | * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getOutgoingTransitions <em>Outgoing Transitions</em>}'. | ||
672 | * <!-- begin-user-doc --> | ||
673 | * <!-- end-user-doc --> | ||
674 | * @return the meta object for the containment reference list '<em>Outgoing Transitions</em>'. | ||
675 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getOutgoingTransitions() | ||
676 | * @see #getVertex() | ||
677 | * @generated | ||
678 | */ | ||
679 | EReference getVertex_OutgoingTransitions(); | ||
680 | |||
681 | /** | ||
682 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region <em>Region</em>}'. | ||
683 | * <!-- begin-user-doc --> | ||
684 | * <!-- end-user-doc --> | ||
685 | * @return the meta object for class '<em>Region</em>'. | ||
686 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region | ||
687 | * @generated | ||
688 | */ | ||
689 | EClass getRegion(); | ||
690 | |||
691 | /** | ||
692 | * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region#getVertices <em>Vertices</em>}'. | ||
693 | * <!-- begin-user-doc --> | ||
694 | * <!-- end-user-doc --> | ||
695 | * @return the meta object for the containment reference list '<em>Vertices</em>'. | ||
696 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region#getVertices() | ||
697 | * @see #getRegion() | ||
698 | * @generated | ||
699 | */ | ||
700 | EReference getRegion_Vertices(); | ||
701 | |||
702 | /** | ||
703 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition <em>Transition</em>}'. | ||
704 | * <!-- begin-user-doc --> | ||
705 | * <!-- end-user-doc --> | ||
706 | * @return the meta object for class '<em>Transition</em>'. | ||
707 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition | ||
708 | * @generated | ||
709 | */ | ||
710 | EClass getTransition(); | ||
711 | |||
712 | /** | ||
713 | * Returns the meta object for the reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget <em>Target</em>}'. | ||
714 | * <!-- begin-user-doc --> | ||
715 | * <!-- end-user-doc --> | ||
716 | * @return the meta object for the reference '<em>Target</em>'. | ||
717 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget() | ||
718 | * @see #getTransition() | ||
719 | * @generated | ||
720 | */ | ||
721 | EReference getTransition_Target(); | ||
722 | |||
723 | /** | ||
724 | * Returns the meta object for the container reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource <em>Source</em>}'. | ||
725 | * <!-- begin-user-doc --> | ||
726 | * <!-- end-user-doc --> | ||
727 | * @return the meta object for the container reference '<em>Source</em>'. | ||
728 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource() | ||
729 | * @see #getTransition() | ||
730 | * @generated | ||
731 | */ | ||
732 | EReference getTransition_Source(); | ||
733 | |||
734 | /** | ||
735 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart <em>Statechart</em>}'. | ||
736 | * <!-- begin-user-doc --> | ||
737 | * <!-- end-user-doc --> | ||
738 | * @return the meta object for class '<em>Statechart</em>'. | ||
739 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart | ||
740 | * @generated | ||
741 | */ | ||
742 | EClass getStatechart(); | ||
743 | |||
744 | /** | ||
745 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry <em>Entry</em>}'. | ||
746 | * <!-- begin-user-doc --> | ||
747 | * <!-- end-user-doc --> | ||
748 | * @return the meta object for class '<em>Entry</em>'. | ||
749 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry | ||
750 | * @generated | ||
751 | */ | ||
752 | EClass getEntry(); | ||
753 | |||
754 | /** | ||
755 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization <em>Synchronization</em>}'. | ||
756 | * <!-- begin-user-doc --> | ||
757 | * <!-- end-user-doc --> | ||
758 | * @return the meta object for class '<em>Synchronization</em>'. | ||
759 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization | ||
760 | * @generated | ||
761 | */ | ||
762 | EClass getSynchronization(); | ||
763 | |||
764 | /** | ||
765 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State <em>State</em>}'. | ||
766 | * <!-- begin-user-doc --> | ||
767 | * <!-- end-user-doc --> | ||
768 | * @return the meta object for class '<em>State</em>'. | ||
769 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State | ||
770 | * @generated | ||
771 | */ | ||
772 | EClass getState(); | ||
773 | |||
774 | /** | ||
775 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState <em>Regular State</em>}'. | ||
776 | * <!-- begin-user-doc --> | ||
777 | * <!-- end-user-doc --> | ||
778 | * @return the meta object for class '<em>Regular State</em>'. | ||
779 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState | ||
780 | * @generated | ||
781 | */ | ||
782 | EClass getRegularState(); | ||
783 | |||
784 | /** | ||
785 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement <em>Composite Element</em>}'. | ||
786 | * <!-- begin-user-doc --> | ||
787 | * <!-- end-user-doc --> | ||
788 | * @return the meta object for class '<em>Composite Element</em>'. | ||
789 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement | ||
790 | * @generated | ||
791 | */ | ||
792 | EClass getCompositeElement(); | ||
793 | |||
794 | /** | ||
795 | * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement#getRegions <em>Regions</em>}'. | ||
796 | * <!-- begin-user-doc --> | ||
797 | * <!-- end-user-doc --> | ||
798 | * @return the meta object for the containment reference list '<em>Regions</em>'. | ||
799 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement#getRegions() | ||
800 | * @see #getCompositeElement() | ||
801 | * @generated | ||
802 | */ | ||
803 | EReference getCompositeElement_Regions(); | ||
804 | |||
805 | /** | ||
806 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice <em>Choice</em>}'. | ||
807 | * <!-- begin-user-doc --> | ||
808 | * <!-- end-user-doc --> | ||
809 | * @return the meta object for class '<em>Choice</em>'. | ||
810 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice | ||
811 | * @generated | ||
812 | */ | ||
813 | EClass getChoice(); | ||
814 | |||
815 | /** | ||
816 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit <em>Exit</em>}'. | ||
817 | * <!-- begin-user-doc --> | ||
818 | * <!-- end-user-doc --> | ||
819 | * @return the meta object for class '<em>Exit</em>'. | ||
820 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit | ||
821 | * @generated | ||
822 | */ | ||
823 | EClass getExit(); | ||
824 | |||
825 | /** | ||
826 | * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState <em>Final State</em>}'. | ||
827 | * <!-- begin-user-doc --> | ||
828 | * <!-- end-user-doc --> | ||
829 | * @return the meta object for class '<em>Final State</em>'. | ||
830 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState | ||
831 | * @generated | ||
832 | */ | ||
833 | EClass getFinalState(); | ||
834 | |||
835 | /** | ||
836 | * Returns the factory that creates the instances of the model. | ||
837 | * <!-- begin-user-doc --> | ||
838 | * <!-- end-user-doc --> | ||
839 | * @return the factory that creates the instances of the model. | ||
840 | * @generated | ||
841 | */ | ||
842 | YakinduFactory getYakinduFactory(); | ||
843 | |||
844 | /** | ||
845 | * <!-- begin-user-doc --> | ||
846 | * Defines literals for the meta objects that represent | ||
847 | * <ul> | ||
848 | * <li>each class,</li> | ||
849 | * <li>each feature of each class,</li> | ||
850 | * <li>each operation of each class,</li> | ||
851 | * <li>each enum,</li> | ||
852 | * <li>and each data type</li> | ||
853 | * </ul> | ||
854 | * <!-- end-user-doc --> | ||
855 | * @generated | ||
856 | */ | ||
857 | interface Literals { | ||
858 | /** | ||
859 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.PseudostateImpl <em>Pseudostate</em>}' class. | ||
860 | * <!-- begin-user-doc --> | ||
861 | * <!-- end-user-doc --> | ||
862 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.PseudostateImpl | ||
863 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getPseudostate() | ||
864 | * @generated | ||
865 | */ | ||
866 | EClass PSEUDOSTATE = eINSTANCE.getPseudostate(); | ||
867 | |||
868 | /** | ||
869 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl <em>Vertex</em>}' class. | ||
870 | * <!-- begin-user-doc --> | ||
871 | * <!-- end-user-doc --> | ||
872 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl | ||
873 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getVertex() | ||
874 | * @generated | ||
875 | */ | ||
876 | EClass VERTEX = eINSTANCE.getVertex(); | ||
877 | |||
878 | /** | ||
879 | * The meta object literal for the '<em><b>Incoming Transitions</b></em>' reference list feature. | ||
880 | * <!-- begin-user-doc --> | ||
881 | * <!-- end-user-doc --> | ||
882 | * @generated | ||
883 | */ | ||
884 | EReference VERTEX__INCOMING_TRANSITIONS = eINSTANCE.getVertex_IncomingTransitions(); | ||
885 | |||
886 | /** | ||
887 | * The meta object literal for the '<em><b>Outgoing Transitions</b></em>' containment reference list feature. | ||
888 | * <!-- begin-user-doc --> | ||
889 | * <!-- end-user-doc --> | ||
890 | * @generated | ||
891 | */ | ||
892 | EReference VERTEX__OUTGOING_TRANSITIONS = eINSTANCE.getVertex_OutgoingTransitions(); | ||
893 | |||
894 | /** | ||
895 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegionImpl <em>Region</em>}' class. | ||
896 | * <!-- begin-user-doc --> | ||
897 | * <!-- end-user-doc --> | ||
898 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegionImpl | ||
899 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getRegion() | ||
900 | * @generated | ||
901 | */ | ||
902 | EClass REGION = eINSTANCE.getRegion(); | ||
903 | |||
904 | /** | ||
905 | * The meta object literal for the '<em><b>Vertices</b></em>' containment reference list feature. | ||
906 | * <!-- begin-user-doc --> | ||
907 | * <!-- end-user-doc --> | ||
908 | * @generated | ||
909 | */ | ||
910 | EReference REGION__VERTICES = eINSTANCE.getRegion_Vertices(); | ||
911 | |||
912 | /** | ||
913 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl <em>Transition</em>}' class. | ||
914 | * <!-- begin-user-doc --> | ||
915 | * <!-- end-user-doc --> | ||
916 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl | ||
917 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getTransition() | ||
918 | * @generated | ||
919 | */ | ||
920 | EClass TRANSITION = eINSTANCE.getTransition(); | ||
921 | |||
922 | /** | ||
923 | * The meta object literal for the '<em><b>Target</b></em>' reference feature. | ||
924 | * <!-- begin-user-doc --> | ||
925 | * <!-- end-user-doc --> | ||
926 | * @generated | ||
927 | */ | ||
928 | EReference TRANSITION__TARGET = eINSTANCE.getTransition_Target(); | ||
929 | |||
930 | /** | ||
931 | * The meta object literal for the '<em><b>Source</b></em>' container reference feature. | ||
932 | * <!-- begin-user-doc --> | ||
933 | * <!-- end-user-doc --> | ||
934 | * @generated | ||
935 | */ | ||
936 | EReference TRANSITION__SOURCE = eINSTANCE.getTransition_Source(); | ||
937 | |||
938 | /** | ||
939 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StatechartImpl <em>Statechart</em>}' class. | ||
940 | * <!-- begin-user-doc --> | ||
941 | * <!-- end-user-doc --> | ||
942 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StatechartImpl | ||
943 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getStatechart() | ||
944 | * @generated | ||
945 | */ | ||
946 | EClass STATECHART = eINSTANCE.getStatechart(); | ||
947 | |||
948 | /** | ||
949 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.EntryImpl <em>Entry</em>}' class. | ||
950 | * <!-- begin-user-doc --> | ||
951 | * <!-- end-user-doc --> | ||
952 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.EntryImpl | ||
953 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getEntry() | ||
954 | * @generated | ||
955 | */ | ||
956 | EClass ENTRY = eINSTANCE.getEntry(); | ||
957 | |||
958 | /** | ||
959 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.SynchronizationImpl <em>Synchronization</em>}' class. | ||
960 | * <!-- begin-user-doc --> | ||
961 | * <!-- end-user-doc --> | ||
962 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.SynchronizationImpl | ||
963 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getSynchronization() | ||
964 | * @generated | ||
965 | */ | ||
966 | EClass SYNCHRONIZATION = eINSTANCE.getSynchronization(); | ||
967 | |||
968 | /** | ||
969 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StateImpl <em>State</em>}' class. | ||
970 | * <!-- begin-user-doc --> | ||
971 | * <!-- end-user-doc --> | ||
972 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StateImpl | ||
973 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getState() | ||
974 | * @generated | ||
975 | */ | ||
976 | EClass STATE = eINSTANCE.getState(); | ||
977 | |||
978 | /** | ||
979 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegularStateImpl <em>Regular State</em>}' class. | ||
980 | * <!-- begin-user-doc --> | ||
981 | * <!-- end-user-doc --> | ||
982 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegularStateImpl | ||
983 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getRegularState() | ||
984 | * @generated | ||
985 | */ | ||
986 | EClass REGULAR_STATE = eINSTANCE.getRegularState(); | ||
987 | |||
988 | /** | ||
989 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.CompositeElementImpl <em>Composite Element</em>}' class. | ||
990 | * <!-- begin-user-doc --> | ||
991 | * <!-- end-user-doc --> | ||
992 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.CompositeElementImpl | ||
993 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getCompositeElement() | ||
994 | * @generated | ||
995 | */ | ||
996 | EClass COMPOSITE_ELEMENT = eINSTANCE.getCompositeElement(); | ||
997 | |||
998 | /** | ||
999 | * The meta object literal for the '<em><b>Regions</b></em>' containment reference list feature. | ||
1000 | * <!-- begin-user-doc --> | ||
1001 | * <!-- end-user-doc --> | ||
1002 | * @generated | ||
1003 | */ | ||
1004 | EReference COMPOSITE_ELEMENT__REGIONS = eINSTANCE.getCompositeElement_Regions(); | ||
1005 | |||
1006 | /** | ||
1007 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ChoiceImpl <em>Choice</em>}' class. | ||
1008 | * <!-- begin-user-doc --> | ||
1009 | * <!-- end-user-doc --> | ||
1010 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ChoiceImpl | ||
1011 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getChoice() | ||
1012 | * @generated | ||
1013 | */ | ||
1014 | EClass CHOICE = eINSTANCE.getChoice(); | ||
1015 | |||
1016 | /** | ||
1017 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ExitImpl <em>Exit</em>}' class. | ||
1018 | * <!-- begin-user-doc --> | ||
1019 | * <!-- end-user-doc --> | ||
1020 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ExitImpl | ||
1021 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getExit() | ||
1022 | * @generated | ||
1023 | */ | ||
1024 | EClass EXIT = eINSTANCE.getExit(); | ||
1025 | |||
1026 | /** | ||
1027 | * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.FinalStateImpl <em>Final State</em>}' class. | ||
1028 | * <!-- begin-user-doc --> | ||
1029 | * <!-- end-user-doc --> | ||
1030 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.FinalStateImpl | ||
1031 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.YakinduPackageImpl#getFinalState() | ||
1032 | * @generated | ||
1033 | */ | ||
1034 | EClass FINAL_STATE = eINSTANCE.getFinalState(); | ||
1035 | |||
1036 | } | ||
1037 | |||
1038 | } //YakinduPackage | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ChoiceImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ChoiceImpl.java new file mode 100644 index 00000000..b757b42f --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ChoiceImpl.java | |||
@@ -0,0 +1,37 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
7 | |||
8 | import org.eclipse.emf.ecore.EClass; | ||
9 | |||
10 | /** | ||
11 | * <!-- begin-user-doc --> | ||
12 | * An implementation of the model object '<em><b>Choice</b></em>'. | ||
13 | * <!-- end-user-doc --> | ||
14 | * | ||
15 | * @generated | ||
16 | */ | ||
17 | public class ChoiceImpl extends PseudostateImpl implements Choice { | ||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * <!-- end-user-doc --> | ||
21 | * @generated | ||
22 | */ | ||
23 | protected ChoiceImpl() { | ||
24 | super(); | ||
25 | } | ||
26 | |||
27 | /** | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | @Override | ||
33 | protected EClass eStaticClass() { | ||
34 | return YakinduPackage.Literals.CHOICE; | ||
35 | } | ||
36 | |||
37 | } //ChoiceImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/CompositeElementImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/CompositeElementImpl.java new file mode 100644 index 00000000..8441ed27 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/CompositeElementImpl.java | |||
@@ -0,0 +1,152 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
8 | |||
9 | import java.util.Collection; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.NotificationChain; | ||
12 | |||
13 | import org.eclipse.emf.common.util.EList; | ||
14 | |||
15 | import org.eclipse.emf.ecore.EClass; | ||
16 | import org.eclipse.emf.ecore.InternalEObject; | ||
17 | |||
18 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
19 | |||
20 | import org.eclipse.emf.ecore.util.EObjectContainmentEList; | ||
21 | import org.eclipse.emf.ecore.util.InternalEList; | ||
22 | |||
23 | /** | ||
24 | * <!-- begin-user-doc --> | ||
25 | * An implementation of the model object '<em><b>Composite Element</b></em>'. | ||
26 | * <!-- end-user-doc --> | ||
27 | * <p> | ||
28 | * The following features are implemented: | ||
29 | * </p> | ||
30 | * <ul> | ||
31 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.CompositeElementImpl#getRegions <em>Regions</em>}</li> | ||
32 | * </ul> | ||
33 | * | ||
34 | * @generated | ||
35 | */ | ||
36 | public abstract class CompositeElementImpl extends MinimalEObjectImpl.Container implements CompositeElement { | ||
37 | /** | ||
38 | * The cached value of the '{@link #getRegions() <em>Regions</em>}' containment reference list. | ||
39 | * <!-- begin-user-doc --> | ||
40 | * <!-- end-user-doc --> | ||
41 | * @see #getRegions() | ||
42 | * @generated | ||
43 | * @ordered | ||
44 | */ | ||
45 | protected EList<Region> regions; | ||
46 | |||
47 | /** | ||
48 | * <!-- begin-user-doc --> | ||
49 | * <!-- end-user-doc --> | ||
50 | * @generated | ||
51 | */ | ||
52 | protected CompositeElementImpl() { | ||
53 | super(); | ||
54 | } | ||
55 | |||
56 | /** | ||
57 | * <!-- begin-user-doc --> | ||
58 | * <!-- end-user-doc --> | ||
59 | * @generated | ||
60 | */ | ||
61 | @Override | ||
62 | protected EClass eStaticClass() { | ||
63 | return YakinduPackage.Literals.COMPOSITE_ELEMENT; | ||
64 | } | ||
65 | |||
66 | /** | ||
67 | * <!-- begin-user-doc --> | ||
68 | * <!-- end-user-doc --> | ||
69 | * @generated | ||
70 | */ | ||
71 | public EList<Region> getRegions() { | ||
72 | if (regions == null) { | ||
73 | regions = new EObjectContainmentEList<Region>(Region.class, this, YakinduPackage.COMPOSITE_ELEMENT__REGIONS); | ||
74 | } | ||
75 | return regions; | ||
76 | } | ||
77 | |||
78 | /** | ||
79 | * <!-- begin-user-doc --> | ||
80 | * <!-- end-user-doc --> | ||
81 | * @generated | ||
82 | */ | ||
83 | @Override | ||
84 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
85 | switch (featureID) { | ||
86 | case YakinduPackage.COMPOSITE_ELEMENT__REGIONS: | ||
87 | return ((InternalEList<?>)getRegions()).basicRemove(otherEnd, msgs); | ||
88 | } | ||
89 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
90 | } | ||
91 | |||
92 | /** | ||
93 | * <!-- begin-user-doc --> | ||
94 | * <!-- end-user-doc --> | ||
95 | * @generated | ||
96 | */ | ||
97 | @Override | ||
98 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
99 | switch (featureID) { | ||
100 | case YakinduPackage.COMPOSITE_ELEMENT__REGIONS: | ||
101 | return getRegions(); | ||
102 | } | ||
103 | return super.eGet(featureID, resolve, coreType); | ||
104 | } | ||
105 | |||
106 | /** | ||
107 | * <!-- begin-user-doc --> | ||
108 | * <!-- end-user-doc --> | ||
109 | * @generated | ||
110 | */ | ||
111 | @SuppressWarnings("unchecked") | ||
112 | @Override | ||
113 | public void eSet(int featureID, Object newValue) { | ||
114 | switch (featureID) { | ||
115 | case YakinduPackage.COMPOSITE_ELEMENT__REGIONS: | ||
116 | getRegions().clear(); | ||
117 | getRegions().addAll((Collection<? extends Region>)newValue); | ||
118 | return; | ||
119 | } | ||
120 | super.eSet(featureID, newValue); | ||
121 | } | ||
122 | |||
123 | /** | ||
124 | * <!-- begin-user-doc --> | ||
125 | * <!-- end-user-doc --> | ||
126 | * @generated | ||
127 | */ | ||
128 | @Override | ||
129 | public void eUnset(int featureID) { | ||
130 | switch (featureID) { | ||
131 | case YakinduPackage.COMPOSITE_ELEMENT__REGIONS: | ||
132 | getRegions().clear(); | ||
133 | return; | ||
134 | } | ||
135 | super.eUnset(featureID); | ||
136 | } | ||
137 | |||
138 | /** | ||
139 | * <!-- begin-user-doc --> | ||
140 | * <!-- end-user-doc --> | ||
141 | * @generated | ||
142 | */ | ||
143 | @Override | ||
144 | public boolean eIsSet(int featureID) { | ||
145 | switch (featureID) { | ||
146 | case YakinduPackage.COMPOSITE_ELEMENT__REGIONS: | ||
147 | return regions != null && !regions.isEmpty(); | ||
148 | } | ||
149 | return super.eIsSet(featureID); | ||
150 | } | ||
151 | |||
152 | } //CompositeElementImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ExitImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ExitImpl.java new file mode 100644 index 00000000..4859ef03 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ExitImpl.java | |||
@@ -0,0 +1,37 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
7 | |||
8 | import org.eclipse.emf.ecore.EClass; | ||
9 | |||
10 | /** | ||
11 | * <!-- begin-user-doc --> | ||
12 | * An implementation of the model object '<em><b>Exit</b></em>'. | ||
13 | * <!-- end-user-doc --> | ||
14 | * | ||
15 | * @generated | ||
16 | */ | ||
17 | public class ExitImpl extends PseudostateImpl implements Exit { | ||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * <!-- end-user-doc --> | ||
21 | * @generated | ||
22 | */ | ||
23 | protected ExitImpl() { | ||
24 | super(); | ||
25 | } | ||
26 | |||
27 | /** | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | @Override | ||
33 | protected EClass eStaticClass() { | ||
34 | return YakinduPackage.Literals.EXIT; | ||
35 | } | ||
36 | |||
37 | } //ExitImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/FinalStateImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/FinalStateImpl.java new file mode 100644 index 00000000..c4d4e157 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/FinalStateImpl.java | |||
@@ -0,0 +1,37 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
7 | |||
8 | import org.eclipse.emf.ecore.EClass; | ||
9 | |||
10 | /** | ||
11 | * <!-- begin-user-doc --> | ||
12 | * An implementation of the model object '<em><b>Final State</b></em>'. | ||
13 | * <!-- end-user-doc --> | ||
14 | * | ||
15 | * @generated | ||
16 | */ | ||
17 | public class FinalStateImpl extends RegularStateImpl implements FinalState { | ||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * <!-- end-user-doc --> | ||
21 | * @generated | ||
22 | */ | ||
23 | protected FinalStateImpl() { | ||
24 | super(); | ||
25 | } | ||
26 | |||
27 | /** | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | @Override | ||
33 | protected EClass eStaticClass() { | ||
34 | return YakinduPackage.Literals.FINAL_STATE; | ||
35 | } | ||
36 | |||
37 | } //FinalStateImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/PseudostateImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/PseudostateImpl.java new file mode 100644 index 00000000..56c44b78 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/PseudostateImpl.java | |||
@@ -0,0 +1,37 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
7 | |||
8 | import org.eclipse.emf.ecore.EClass; | ||
9 | |||
10 | /** | ||
11 | * <!-- begin-user-doc --> | ||
12 | * An implementation of the model object '<em><b>Pseudostate</b></em>'. | ||
13 | * <!-- end-user-doc --> | ||
14 | * | ||
15 | * @generated | ||
16 | */ | ||
17 | public abstract class PseudostateImpl extends VertexImpl implements Pseudostate { | ||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * <!-- end-user-doc --> | ||
21 | * @generated | ||
22 | */ | ||
23 | protected PseudostateImpl() { | ||
24 | super(); | ||
25 | } | ||
26 | |||
27 | /** | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | @Override | ||
33 | protected EClass eStaticClass() { | ||
34 | return YakinduPackage.Literals.PSEUDOSTATE; | ||
35 | } | ||
36 | |||
37 | } //PseudostateImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegionImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegionImpl.java new file mode 100644 index 00000000..fa529ad6 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegionImpl.java | |||
@@ -0,0 +1,152 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
8 | |||
9 | import java.util.Collection; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.NotificationChain; | ||
12 | |||
13 | import org.eclipse.emf.common.util.EList; | ||
14 | |||
15 | import org.eclipse.emf.ecore.EClass; | ||
16 | import org.eclipse.emf.ecore.InternalEObject; | ||
17 | |||
18 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
19 | |||
20 | import org.eclipse.emf.ecore.util.EObjectContainmentEList; | ||
21 | import org.eclipse.emf.ecore.util.InternalEList; | ||
22 | |||
23 | /** | ||
24 | * <!-- begin-user-doc --> | ||
25 | * An implementation of the model object '<em><b>Region</b></em>'. | ||
26 | * <!-- end-user-doc --> | ||
27 | * <p> | ||
28 | * The following features are implemented: | ||
29 | * </p> | ||
30 | * <ul> | ||
31 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegionImpl#getVertices <em>Vertices</em>}</li> | ||
32 | * </ul> | ||
33 | * | ||
34 | * @generated | ||
35 | */ | ||
36 | public class RegionImpl extends MinimalEObjectImpl.Container implements Region { | ||
37 | /** | ||
38 | * The cached value of the '{@link #getVertices() <em>Vertices</em>}' containment reference list. | ||
39 | * <!-- begin-user-doc --> | ||
40 | * <!-- end-user-doc --> | ||
41 | * @see #getVertices() | ||
42 | * @generated | ||
43 | * @ordered | ||
44 | */ | ||
45 | protected EList<Vertex> vertices; | ||
46 | |||
47 | /** | ||
48 | * <!-- begin-user-doc --> | ||
49 | * <!-- end-user-doc --> | ||
50 | * @generated | ||
51 | */ | ||
52 | protected RegionImpl() { | ||
53 | super(); | ||
54 | } | ||
55 | |||
56 | /** | ||
57 | * <!-- begin-user-doc --> | ||
58 | * <!-- end-user-doc --> | ||
59 | * @generated | ||
60 | */ | ||
61 | @Override | ||
62 | protected EClass eStaticClass() { | ||
63 | return YakinduPackage.Literals.REGION; | ||
64 | } | ||
65 | |||
66 | /** | ||
67 | * <!-- begin-user-doc --> | ||
68 | * <!-- end-user-doc --> | ||
69 | * @generated | ||
70 | */ | ||
71 | public EList<Vertex> getVertices() { | ||
72 | if (vertices == null) { | ||
73 | vertices = new EObjectContainmentEList<Vertex>(Vertex.class, this, YakinduPackage.REGION__VERTICES); | ||
74 | } | ||
75 | return vertices; | ||
76 | } | ||
77 | |||
78 | /** | ||
79 | * <!-- begin-user-doc --> | ||
80 | * <!-- end-user-doc --> | ||
81 | * @generated | ||
82 | */ | ||
83 | @Override | ||
84 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
85 | switch (featureID) { | ||
86 | case YakinduPackage.REGION__VERTICES: | ||
87 | return ((InternalEList<?>)getVertices()).basicRemove(otherEnd, msgs); | ||
88 | } | ||
89 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
90 | } | ||
91 | |||
92 | /** | ||
93 | * <!-- begin-user-doc --> | ||
94 | * <!-- end-user-doc --> | ||
95 | * @generated | ||
96 | */ | ||
97 | @Override | ||
98 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
99 | switch (featureID) { | ||
100 | case YakinduPackage.REGION__VERTICES: | ||
101 | return getVertices(); | ||
102 | } | ||
103 | return super.eGet(featureID, resolve, coreType); | ||
104 | } | ||
105 | |||
106 | /** | ||
107 | * <!-- begin-user-doc --> | ||
108 | * <!-- end-user-doc --> | ||
109 | * @generated | ||
110 | */ | ||
111 | @SuppressWarnings("unchecked") | ||
112 | @Override | ||
113 | public void eSet(int featureID, Object newValue) { | ||
114 | switch (featureID) { | ||
115 | case YakinduPackage.REGION__VERTICES: | ||
116 | getVertices().clear(); | ||
117 | getVertices().addAll((Collection<? extends Vertex>)newValue); | ||
118 | return; | ||
119 | } | ||
120 | super.eSet(featureID, newValue); | ||
121 | } | ||
122 | |||
123 | /** | ||
124 | * <!-- begin-user-doc --> | ||
125 | * <!-- end-user-doc --> | ||
126 | * @generated | ||
127 | */ | ||
128 | @Override | ||
129 | public void eUnset(int featureID) { | ||
130 | switch (featureID) { | ||
131 | case YakinduPackage.REGION__VERTICES: | ||
132 | getVertices().clear(); | ||
133 | return; | ||
134 | } | ||
135 | super.eUnset(featureID); | ||
136 | } | ||
137 | |||
138 | /** | ||
139 | * <!-- begin-user-doc --> | ||
140 | * <!-- end-user-doc --> | ||
141 | * @generated | ||
142 | */ | ||
143 | @Override | ||
144 | public boolean eIsSet(int featureID) { | ||
145 | switch (featureID) { | ||
146 | case YakinduPackage.REGION__VERTICES: | ||
147 | return vertices != null && !vertices.isEmpty(); | ||
148 | } | ||
149 | return super.eIsSet(featureID); | ||
150 | } | ||
151 | |||
152 | } //RegionImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegularStateImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegularStateImpl.java new file mode 100644 index 00000000..5361d4d5 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegularStateImpl.java | |||
@@ -0,0 +1,37 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
7 | |||
8 | import org.eclipse.emf.ecore.EClass; | ||
9 | |||
10 | /** | ||
11 | * <!-- begin-user-doc --> | ||
12 | * An implementation of the model object '<em><b>Regular State</b></em>'. | ||
13 | * <!-- end-user-doc --> | ||
14 | * | ||
15 | * @generated | ||
16 | */ | ||
17 | public abstract class RegularStateImpl extends VertexImpl implements RegularState { | ||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * <!-- end-user-doc --> | ||
21 | * @generated | ||
22 | */ | ||
23 | protected RegularStateImpl() { | ||
24 | super(); | ||
25 | } | ||
26 | |||
27 | /** | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | @Override | ||
33 | protected EClass eStaticClass() { | ||
34 | return YakinduPackage.Literals.REGULAR_STATE; | ||
35 | } | ||
36 | |||
37 | } //RegularStateImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StateImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StateImpl.java new file mode 100644 index 00000000..85938d63 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StateImpl.java | |||
@@ -0,0 +1,183 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
9 | |||
10 | import java.util.Collection; | ||
11 | |||
12 | import org.eclipse.emf.common.notify.NotificationChain; | ||
13 | |||
14 | import org.eclipse.emf.common.util.EList; | ||
15 | |||
16 | import org.eclipse.emf.ecore.EClass; | ||
17 | import org.eclipse.emf.ecore.InternalEObject; | ||
18 | |||
19 | import org.eclipse.emf.ecore.util.EObjectContainmentEList; | ||
20 | import org.eclipse.emf.ecore.util.InternalEList; | ||
21 | |||
22 | /** | ||
23 | * <!-- begin-user-doc --> | ||
24 | * An implementation of the model object '<em><b>State</b></em>'. | ||
25 | * <!-- end-user-doc --> | ||
26 | * <p> | ||
27 | * The following features are implemented: | ||
28 | * </p> | ||
29 | * <ul> | ||
30 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StateImpl#getRegions <em>Regions</em>}</li> | ||
31 | * </ul> | ||
32 | * | ||
33 | * @generated | ||
34 | */ | ||
35 | public class StateImpl extends RegularStateImpl implements State { | ||
36 | /** | ||
37 | * The cached value of the '{@link #getRegions() <em>Regions</em>}' containment reference list. | ||
38 | * <!-- begin-user-doc --> | ||
39 | * <!-- end-user-doc --> | ||
40 | * @see #getRegions() | ||
41 | * @generated | ||
42 | * @ordered | ||
43 | */ | ||
44 | protected EList<Region> regions; | ||
45 | |||
46 | /** | ||
47 | * <!-- begin-user-doc --> | ||
48 | * <!-- end-user-doc --> | ||
49 | * @generated | ||
50 | */ | ||
51 | protected StateImpl() { | ||
52 | super(); | ||
53 | } | ||
54 | |||
55 | /** | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <!-- end-user-doc --> | ||
58 | * @generated | ||
59 | */ | ||
60 | @Override | ||
61 | protected EClass eStaticClass() { | ||
62 | return YakinduPackage.Literals.STATE; | ||
63 | } | ||
64 | |||
65 | /** | ||
66 | * <!-- begin-user-doc --> | ||
67 | * <!-- end-user-doc --> | ||
68 | * @generated | ||
69 | */ | ||
70 | public EList<Region> getRegions() { | ||
71 | if (regions == null) { | ||
72 | regions = new EObjectContainmentEList<Region>(Region.class, this, YakinduPackage.STATE__REGIONS); | ||
73 | } | ||
74 | return regions; | ||
75 | } | ||
76 | |||
77 | /** | ||
78 | * <!-- begin-user-doc --> | ||
79 | * <!-- end-user-doc --> | ||
80 | * @generated | ||
81 | */ | ||
82 | @Override | ||
83 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
84 | switch (featureID) { | ||
85 | case YakinduPackage.STATE__REGIONS: | ||
86 | return ((InternalEList<?>)getRegions()).basicRemove(otherEnd, msgs); | ||
87 | } | ||
88 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
89 | } | ||
90 | |||
91 | /** | ||
92 | * <!-- begin-user-doc --> | ||
93 | * <!-- end-user-doc --> | ||
94 | * @generated | ||
95 | */ | ||
96 | @Override | ||
97 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
98 | switch (featureID) { | ||
99 | case YakinduPackage.STATE__REGIONS: | ||
100 | return getRegions(); | ||
101 | } | ||
102 | return super.eGet(featureID, resolve, coreType); | ||
103 | } | ||
104 | |||
105 | /** | ||
106 | * <!-- begin-user-doc --> | ||
107 | * <!-- end-user-doc --> | ||
108 | * @generated | ||
109 | */ | ||
110 | @SuppressWarnings("unchecked") | ||
111 | @Override | ||
112 | public void eSet(int featureID, Object newValue) { | ||
113 | switch (featureID) { | ||
114 | case YakinduPackage.STATE__REGIONS: | ||
115 | getRegions().clear(); | ||
116 | getRegions().addAll((Collection<? extends Region>)newValue); | ||
117 | return; | ||
118 | } | ||
119 | super.eSet(featureID, newValue); | ||
120 | } | ||
121 | |||
122 | /** | ||
123 | * <!-- begin-user-doc --> | ||
124 | * <!-- end-user-doc --> | ||
125 | * @generated | ||
126 | */ | ||
127 | @Override | ||
128 | public void eUnset(int featureID) { | ||
129 | switch (featureID) { | ||
130 | case YakinduPackage.STATE__REGIONS: | ||
131 | getRegions().clear(); | ||
132 | return; | ||
133 | } | ||
134 | super.eUnset(featureID); | ||
135 | } | ||
136 | |||
137 | /** | ||
138 | * <!-- begin-user-doc --> | ||
139 | * <!-- end-user-doc --> | ||
140 | * @generated | ||
141 | */ | ||
142 | @Override | ||
143 | public boolean eIsSet(int featureID) { | ||
144 | switch (featureID) { | ||
145 | case YakinduPackage.STATE__REGIONS: | ||
146 | return regions != null && !regions.isEmpty(); | ||
147 | } | ||
148 | return super.eIsSet(featureID); | ||
149 | } | ||
150 | |||
151 | /** | ||
152 | * <!-- begin-user-doc --> | ||
153 | * <!-- end-user-doc --> | ||
154 | * @generated | ||
155 | */ | ||
156 | @Override | ||
157 | public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { | ||
158 | if (baseClass == CompositeElement.class) { | ||
159 | switch (derivedFeatureID) { | ||
160 | case YakinduPackage.STATE__REGIONS: return YakinduPackage.COMPOSITE_ELEMENT__REGIONS; | ||
161 | default: return -1; | ||
162 | } | ||
163 | } | ||
164 | return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); | ||
165 | } | ||
166 | |||
167 | /** | ||
168 | * <!-- begin-user-doc --> | ||
169 | * <!-- end-user-doc --> | ||
170 | * @generated | ||
171 | */ | ||
172 | @Override | ||
173 | public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { | ||
174 | if (baseClass == CompositeElement.class) { | ||
175 | switch (baseFeatureID) { | ||
176 | case YakinduPackage.COMPOSITE_ELEMENT__REGIONS: return YakinduPackage.STATE__REGIONS; | ||
177 | default: return -1; | ||
178 | } | ||
179 | } | ||
180 | return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); | ||
181 | } | ||
182 | |||
183 | } //StateImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StatechartImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StatechartImpl.java new file mode 100644 index 00000000..a74110da --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StatechartImpl.java | |||
@@ -0,0 +1,37 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
7 | |||
8 | import org.eclipse.emf.ecore.EClass; | ||
9 | |||
10 | /** | ||
11 | * <!-- begin-user-doc --> | ||
12 | * An implementation of the model object '<em><b>Statechart</b></em>'. | ||
13 | * <!-- end-user-doc --> | ||
14 | * | ||
15 | * @generated | ||
16 | */ | ||
17 | public class StatechartImpl extends CompositeElementImpl implements Statechart { | ||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * <!-- end-user-doc --> | ||
21 | * @generated | ||
22 | */ | ||
23 | protected StatechartImpl() { | ||
24 | super(); | ||
25 | } | ||
26 | |||
27 | /** | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | @Override | ||
33 | protected EClass eStaticClass() { | ||
34 | return YakinduPackage.Literals.STATECHART; | ||
35 | } | ||
36 | |||
37 | } //StatechartImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/TransitionImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/TransitionImpl.java new file mode 100644 index 00000000..dfbca048 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/TransitionImpl.java | |||
@@ -0,0 +1,284 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
8 | |||
9 | import org.eclipse.emf.common.notify.Notification; | ||
10 | import org.eclipse.emf.common.notify.NotificationChain; | ||
11 | |||
12 | import org.eclipse.emf.ecore.EClass; | ||
13 | import org.eclipse.emf.ecore.InternalEObject; | ||
14 | |||
15 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
16 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
17 | |||
18 | import org.eclipse.emf.ecore.util.EcoreUtil; | ||
19 | |||
20 | /** | ||
21 | * <!-- begin-user-doc --> | ||
22 | * An implementation of the model object '<em><b>Transition</b></em>'. | ||
23 | * <!-- end-user-doc --> | ||
24 | * <p> | ||
25 | * The following features are implemented: | ||
26 | * </p> | ||
27 | * <ul> | ||
28 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl#getTarget <em>Target</em>}</li> | ||
29 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl#getSource <em>Source</em>}</li> | ||
30 | * </ul> | ||
31 | * | ||
32 | * @generated | ||
33 | */ | ||
34 | public class TransitionImpl extends MinimalEObjectImpl.Container implements Transition { | ||
35 | /** | ||
36 | * The cached value of the '{@link #getTarget() <em>Target</em>}' reference. | ||
37 | * <!-- begin-user-doc --> | ||
38 | * <!-- end-user-doc --> | ||
39 | * @see #getTarget() | ||
40 | * @generated | ||
41 | * @ordered | ||
42 | */ | ||
43 | protected Vertex target; | ||
44 | |||
45 | /** | ||
46 | * <!-- begin-user-doc --> | ||
47 | * <!-- end-user-doc --> | ||
48 | * @generated | ||
49 | */ | ||
50 | protected TransitionImpl() { | ||
51 | super(); | ||
52 | } | ||
53 | |||
54 | /** | ||
55 | * <!-- begin-user-doc --> | ||
56 | * <!-- end-user-doc --> | ||
57 | * @generated | ||
58 | */ | ||
59 | @Override | ||
60 | protected EClass eStaticClass() { | ||
61 | return YakinduPackage.Literals.TRANSITION; | ||
62 | } | ||
63 | |||
64 | /** | ||
65 | * <!-- begin-user-doc --> | ||
66 | * <!-- end-user-doc --> | ||
67 | * @generated | ||
68 | */ | ||
69 | public Vertex getTarget() { | ||
70 | if (target != null && target.eIsProxy()) { | ||
71 | InternalEObject oldTarget = (InternalEObject)target; | ||
72 | target = (Vertex)eResolveProxy(oldTarget); | ||
73 | if (target != oldTarget) { | ||
74 | if (eNotificationRequired()) | ||
75 | eNotify(new ENotificationImpl(this, Notification.RESOLVE, YakinduPackage.TRANSITION__TARGET, oldTarget, target)); | ||
76 | } | ||
77 | } | ||
78 | return target; | ||
79 | } | ||
80 | |||
81 | /** | ||
82 | * <!-- begin-user-doc --> | ||
83 | * <!-- end-user-doc --> | ||
84 | * @generated | ||
85 | */ | ||
86 | public Vertex basicGetTarget() { | ||
87 | return target; | ||
88 | } | ||
89 | |||
90 | /** | ||
91 | * <!-- begin-user-doc --> | ||
92 | * <!-- end-user-doc --> | ||
93 | * @generated | ||
94 | */ | ||
95 | public NotificationChain basicSetTarget(Vertex newTarget, NotificationChain msgs) { | ||
96 | Vertex oldTarget = target; | ||
97 | target = newTarget; | ||
98 | if (eNotificationRequired()) { | ||
99 | ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, YakinduPackage.TRANSITION__TARGET, oldTarget, newTarget); | ||
100 | if (msgs == null) msgs = notification; else msgs.add(notification); | ||
101 | } | ||
102 | return msgs; | ||
103 | } | ||
104 | |||
105 | /** | ||
106 | * <!-- begin-user-doc --> | ||
107 | * <!-- end-user-doc --> | ||
108 | * @generated | ||
109 | */ | ||
110 | public void setTarget(Vertex newTarget) { | ||
111 | if (newTarget != target) { | ||
112 | NotificationChain msgs = null; | ||
113 | if (target != null) | ||
114 | msgs = ((InternalEObject)target).eInverseRemove(this, YakinduPackage.VERTEX__INCOMING_TRANSITIONS, Vertex.class, msgs); | ||
115 | if (newTarget != null) | ||
116 | msgs = ((InternalEObject)newTarget).eInverseAdd(this, YakinduPackage.VERTEX__INCOMING_TRANSITIONS, Vertex.class, msgs); | ||
117 | msgs = basicSetTarget(newTarget, msgs); | ||
118 | if (msgs != null) msgs.dispatch(); | ||
119 | } | ||
120 | else if (eNotificationRequired()) | ||
121 | eNotify(new ENotificationImpl(this, Notification.SET, YakinduPackage.TRANSITION__TARGET, newTarget, newTarget)); | ||
122 | } | ||
123 | |||
124 | /** | ||
125 | * <!-- begin-user-doc --> | ||
126 | * <!-- end-user-doc --> | ||
127 | * @generated | ||
128 | */ | ||
129 | public Vertex getSource() { | ||
130 | if (eContainerFeatureID() != YakinduPackage.TRANSITION__SOURCE) return null; | ||
131 | return (Vertex)eInternalContainer(); | ||
132 | } | ||
133 | |||
134 | /** | ||
135 | * <!-- begin-user-doc --> | ||
136 | * <!-- end-user-doc --> | ||
137 | * @generated | ||
138 | */ | ||
139 | public NotificationChain basicSetSource(Vertex newSource, NotificationChain msgs) { | ||
140 | msgs = eBasicSetContainer((InternalEObject)newSource, YakinduPackage.TRANSITION__SOURCE, msgs); | ||
141 | return msgs; | ||
142 | } | ||
143 | |||
144 | /** | ||
145 | * <!-- begin-user-doc --> | ||
146 | * <!-- end-user-doc --> | ||
147 | * @generated | ||
148 | */ | ||
149 | public void setSource(Vertex newSource) { | ||
150 | if (newSource != eInternalContainer() || (eContainerFeatureID() != YakinduPackage.TRANSITION__SOURCE && newSource != null)) { | ||
151 | if (EcoreUtil.isAncestor(this, newSource)) | ||
152 | throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); | ||
153 | NotificationChain msgs = null; | ||
154 | if (eInternalContainer() != null) | ||
155 | msgs = eBasicRemoveFromContainer(msgs); | ||
156 | if (newSource != null) | ||
157 | msgs = ((InternalEObject)newSource).eInverseAdd(this, YakinduPackage.VERTEX__OUTGOING_TRANSITIONS, Vertex.class, msgs); | ||
158 | msgs = basicSetSource(newSource, msgs); | ||
159 | if (msgs != null) msgs.dispatch(); | ||
160 | } | ||
161 | else if (eNotificationRequired()) | ||
162 | eNotify(new ENotificationImpl(this, Notification.SET, YakinduPackage.TRANSITION__SOURCE, newSource, newSource)); | ||
163 | } | ||
164 | |||
165 | /** | ||
166 | * <!-- begin-user-doc --> | ||
167 | * <!-- end-user-doc --> | ||
168 | * @generated | ||
169 | */ | ||
170 | @Override | ||
171 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
172 | switch (featureID) { | ||
173 | case YakinduPackage.TRANSITION__TARGET: | ||
174 | if (target != null) | ||
175 | msgs = ((InternalEObject)target).eInverseRemove(this, YakinduPackage.VERTEX__INCOMING_TRANSITIONS, Vertex.class, msgs); | ||
176 | return basicSetTarget((Vertex)otherEnd, msgs); | ||
177 | case YakinduPackage.TRANSITION__SOURCE: | ||
178 | if (eInternalContainer() != null) | ||
179 | msgs = eBasicRemoveFromContainer(msgs); | ||
180 | return basicSetSource((Vertex)otherEnd, msgs); | ||
181 | } | ||
182 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
183 | } | ||
184 | |||
185 | /** | ||
186 | * <!-- begin-user-doc --> | ||
187 | * <!-- end-user-doc --> | ||
188 | * @generated | ||
189 | */ | ||
190 | @Override | ||
191 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
192 | switch (featureID) { | ||
193 | case YakinduPackage.TRANSITION__TARGET: | ||
194 | return basicSetTarget(null, msgs); | ||
195 | case YakinduPackage.TRANSITION__SOURCE: | ||
196 | return basicSetSource(null, msgs); | ||
197 | } | ||
198 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
199 | } | ||
200 | |||
201 | /** | ||
202 | * <!-- begin-user-doc --> | ||
203 | * <!-- end-user-doc --> | ||
204 | * @generated | ||
205 | */ | ||
206 | @Override | ||
207 | public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { | ||
208 | switch (eContainerFeatureID()) { | ||
209 | case YakinduPackage.TRANSITION__SOURCE: | ||
210 | return eInternalContainer().eInverseRemove(this, YakinduPackage.VERTEX__OUTGOING_TRANSITIONS, Vertex.class, msgs); | ||
211 | } | ||
212 | return super.eBasicRemoveFromContainerFeature(msgs); | ||
213 | } | ||
214 | |||
215 | /** | ||
216 | * <!-- begin-user-doc --> | ||
217 | * <!-- end-user-doc --> | ||
218 | * @generated | ||
219 | */ | ||
220 | @Override | ||
221 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
222 | switch (featureID) { | ||
223 | case YakinduPackage.TRANSITION__TARGET: | ||
224 | if (resolve) return getTarget(); | ||
225 | return basicGetTarget(); | ||
226 | case YakinduPackage.TRANSITION__SOURCE: | ||
227 | return getSource(); | ||
228 | } | ||
229 | return super.eGet(featureID, resolve, coreType); | ||
230 | } | ||
231 | |||
232 | /** | ||
233 | * <!-- begin-user-doc --> | ||
234 | * <!-- end-user-doc --> | ||
235 | * @generated | ||
236 | */ | ||
237 | @Override | ||
238 | public void eSet(int featureID, Object newValue) { | ||
239 | switch (featureID) { | ||
240 | case YakinduPackage.TRANSITION__TARGET: | ||
241 | setTarget((Vertex)newValue); | ||
242 | return; | ||
243 | case YakinduPackage.TRANSITION__SOURCE: | ||
244 | setSource((Vertex)newValue); | ||
245 | return; | ||
246 | } | ||
247 | super.eSet(featureID, newValue); | ||
248 | } | ||
249 | |||
250 | /** | ||
251 | * <!-- begin-user-doc --> | ||
252 | * <!-- end-user-doc --> | ||
253 | * @generated | ||
254 | */ | ||
255 | @Override | ||
256 | public void eUnset(int featureID) { | ||
257 | switch (featureID) { | ||
258 | case YakinduPackage.TRANSITION__TARGET: | ||
259 | setTarget((Vertex)null); | ||
260 | return; | ||
261 | case YakinduPackage.TRANSITION__SOURCE: | ||
262 | setSource((Vertex)null); | ||
263 | return; | ||
264 | } | ||
265 | super.eUnset(featureID); | ||
266 | } | ||
267 | |||
268 | /** | ||
269 | * <!-- begin-user-doc --> | ||
270 | * <!-- end-user-doc --> | ||
271 | * @generated | ||
272 | */ | ||
273 | @Override | ||
274 | public boolean eIsSet(int featureID) { | ||
275 | switch (featureID) { | ||
276 | case YakinduPackage.TRANSITION__TARGET: | ||
277 | return target != null; | ||
278 | case YakinduPackage.TRANSITION__SOURCE: | ||
279 | return getSource() != null; | ||
280 | } | ||
281 | return super.eIsSet(featureID); | ||
282 | } | ||
283 | |||
284 | } //TransitionImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/VertexImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/VertexImpl.java new file mode 100644 index 00000000..6384fb51 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/VertexImpl.java | |||
@@ -0,0 +1,206 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
8 | |||
9 | import java.util.Collection; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.NotificationChain; | ||
12 | |||
13 | import org.eclipse.emf.common.util.EList; | ||
14 | |||
15 | import org.eclipse.emf.ecore.EClass; | ||
16 | import org.eclipse.emf.ecore.InternalEObject; | ||
17 | |||
18 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
19 | |||
20 | import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; | ||
21 | import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; | ||
22 | import org.eclipse.emf.ecore.util.InternalEList; | ||
23 | |||
24 | /** | ||
25 | * <!-- begin-user-doc --> | ||
26 | * An implementation of the model object '<em><b>Vertex</b></em>'. | ||
27 | * <!-- end-user-doc --> | ||
28 | * <p> | ||
29 | * The following features are implemented: | ||
30 | * </p> | ||
31 | * <ul> | ||
32 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl#getIncomingTransitions <em>Incoming Transitions</em>}</li> | ||
33 | * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl#getOutgoingTransitions <em>Outgoing Transitions</em>}</li> | ||
34 | * </ul> | ||
35 | * | ||
36 | * @generated | ||
37 | */ | ||
38 | public abstract class VertexImpl extends MinimalEObjectImpl.Container implements Vertex { | ||
39 | /** | ||
40 | * The cached value of the '{@link #getIncomingTransitions() <em>Incoming Transitions</em>}' reference list. | ||
41 | * <!-- begin-user-doc --> | ||
42 | * <!-- end-user-doc --> | ||
43 | * @see #getIncomingTransitions() | ||
44 | * @generated | ||
45 | * @ordered | ||
46 | */ | ||
47 | protected EList<Transition> incomingTransitions; | ||
48 | |||
49 | /** | ||
50 | * The cached value of the '{@link #getOutgoingTransitions() <em>Outgoing Transitions</em>}' containment reference list. | ||
51 | * <!-- begin-user-doc --> | ||
52 | * <!-- end-user-doc --> | ||
53 | * @see #getOutgoingTransitions() | ||
54 | * @generated | ||
55 | * @ordered | ||
56 | */ | ||
57 | protected EList<Transition> outgoingTransitions; | ||
58 | |||
59 | /** | ||
60 | * <!-- begin-user-doc --> | ||
61 | * <!-- end-user-doc --> | ||
62 | * @generated | ||
63 | */ | ||
64 | protected VertexImpl() { | ||
65 | super(); | ||
66 | } | ||
67 | |||
68 | /** | ||
69 | * <!-- begin-user-doc --> | ||
70 | * <!-- end-user-doc --> | ||
71 | * @generated | ||
72 | */ | ||
73 | @Override | ||
74 | protected EClass eStaticClass() { | ||
75 | return YakinduPackage.Literals.VERTEX; | ||
76 | } | ||
77 | |||
78 | /** | ||
79 | * <!-- begin-user-doc --> | ||
80 | * <!-- end-user-doc --> | ||
81 | * @generated | ||
82 | */ | ||
83 | public EList<Transition> getIncomingTransitions() { | ||
84 | if (incomingTransitions == null) { | ||
85 | incomingTransitions = new EObjectWithInverseResolvingEList<Transition>(Transition.class, this, YakinduPackage.VERTEX__INCOMING_TRANSITIONS, YakinduPackage.TRANSITION__TARGET); | ||
86 | } | ||
87 | return incomingTransitions; | ||
88 | } | ||
89 | |||
90 | /** | ||
91 | * <!-- begin-user-doc --> | ||
92 | * <!-- end-user-doc --> | ||
93 | * @generated | ||
94 | */ | ||
95 | public EList<Transition> getOutgoingTransitions() { | ||
96 | if (outgoingTransitions == null) { | ||
97 | outgoingTransitions = new EObjectContainmentWithInverseEList<Transition>(Transition.class, this, YakinduPackage.VERTEX__OUTGOING_TRANSITIONS, YakinduPackage.TRANSITION__SOURCE); | ||
98 | } | ||
99 | return outgoingTransitions; | ||
100 | } | ||
101 | |||
102 | /** | ||
103 | * <!-- begin-user-doc --> | ||
104 | * <!-- end-user-doc --> | ||
105 | * @generated | ||
106 | */ | ||
107 | @SuppressWarnings("unchecked") | ||
108 | @Override | ||
109 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
110 | switch (featureID) { | ||
111 | case YakinduPackage.VERTEX__INCOMING_TRANSITIONS: | ||
112 | return ((InternalEList<InternalEObject>)(InternalEList<?>)getIncomingTransitions()).basicAdd(otherEnd, msgs); | ||
113 | case YakinduPackage.VERTEX__OUTGOING_TRANSITIONS: | ||
114 | return ((InternalEList<InternalEObject>)(InternalEList<?>)getOutgoingTransitions()).basicAdd(otherEnd, msgs); | ||
115 | } | ||
116 | return super.eInverseAdd(otherEnd, featureID, msgs); | ||
117 | } | ||
118 | |||
119 | /** | ||
120 | * <!-- begin-user-doc --> | ||
121 | * <!-- end-user-doc --> | ||
122 | * @generated | ||
123 | */ | ||
124 | @Override | ||
125 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
126 | switch (featureID) { | ||
127 | case YakinduPackage.VERTEX__INCOMING_TRANSITIONS: | ||
128 | return ((InternalEList<?>)getIncomingTransitions()).basicRemove(otherEnd, msgs); | ||
129 | case YakinduPackage.VERTEX__OUTGOING_TRANSITIONS: | ||
130 | return ((InternalEList<?>)getOutgoingTransitions()).basicRemove(otherEnd, msgs); | ||
131 | } | ||
132 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
133 | } | ||
134 | |||
135 | /** | ||
136 | * <!-- begin-user-doc --> | ||
137 | * <!-- end-user-doc --> | ||
138 | * @generated | ||
139 | */ | ||
140 | @Override | ||
141 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
142 | switch (featureID) { | ||
143 | case YakinduPackage.VERTEX__INCOMING_TRANSITIONS: | ||
144 | return getIncomingTransitions(); | ||
145 | case YakinduPackage.VERTEX__OUTGOING_TRANSITIONS: | ||
146 | return getOutgoingTransitions(); | ||
147 | } | ||
148 | return super.eGet(featureID, resolve, coreType); | ||
149 | } | ||
150 | |||
151 | /** | ||
152 | * <!-- begin-user-doc --> | ||
153 | * <!-- end-user-doc --> | ||
154 | * @generated | ||
155 | */ | ||
156 | @SuppressWarnings("unchecked") | ||
157 | @Override | ||
158 | public void eSet(int featureID, Object newValue) { | ||
159 | switch (featureID) { | ||
160 | case YakinduPackage.VERTEX__INCOMING_TRANSITIONS: | ||
161 | getIncomingTransitions().clear(); | ||
162 | getIncomingTransitions().addAll((Collection<? extends Transition>)newValue); | ||
163 | return; | ||
164 | case YakinduPackage.VERTEX__OUTGOING_TRANSITIONS: | ||
165 | getOutgoingTransitions().clear(); | ||
166 | getOutgoingTransitions().addAll((Collection<? extends Transition>)newValue); | ||
167 | return; | ||
168 | } | ||
169 | super.eSet(featureID, newValue); | ||
170 | } | ||
171 | |||
172 | /** | ||
173 | * <!-- begin-user-doc --> | ||
174 | * <!-- end-user-doc --> | ||
175 | * @generated | ||
176 | */ | ||
177 | @Override | ||
178 | public void eUnset(int featureID) { | ||
179 | switch (featureID) { | ||
180 | case YakinduPackage.VERTEX__INCOMING_TRANSITIONS: | ||
181 | getIncomingTransitions().clear(); | ||
182 | return; | ||
183 | case YakinduPackage.VERTEX__OUTGOING_TRANSITIONS: | ||
184 | getOutgoingTransitions().clear(); | ||
185 | return; | ||
186 | } | ||
187 | super.eUnset(featureID); | ||
188 | } | ||
189 | |||
190 | /** | ||
191 | * <!-- begin-user-doc --> | ||
192 | * <!-- end-user-doc --> | ||
193 | * @generated | ||
194 | */ | ||
195 | @Override | ||
196 | public boolean eIsSet(int featureID) { | ||
197 | switch (featureID) { | ||
198 | case YakinduPackage.VERTEX__INCOMING_TRANSITIONS: | ||
199 | return incomingTransitions != null && !incomingTransitions.isEmpty(); | ||
200 | case YakinduPackage.VERTEX__OUTGOING_TRANSITIONS: | ||
201 | return outgoingTransitions != null && !outgoingTransitions.isEmpty(); | ||
202 | } | ||
203 | return super.eIsSet(featureID); | ||
204 | } | ||
205 | |||
206 | } //VertexImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/YakinduFactoryImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/YakinduFactoryImpl.java new file mode 100644 index 00000000..bd5ee1bd --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/YakinduFactoryImpl.java | |||
@@ -0,0 +1,183 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.*; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EClass; | ||
8 | import org.eclipse.emf.ecore.EObject; | ||
9 | import org.eclipse.emf.ecore.EPackage; | ||
10 | |||
11 | import org.eclipse.emf.ecore.impl.EFactoryImpl; | ||
12 | |||
13 | import org.eclipse.emf.ecore.plugin.EcorePlugin; | ||
14 | |||
15 | /** | ||
16 | * <!-- begin-user-doc --> | ||
17 | * An implementation of the model <b>Factory</b>. | ||
18 | * <!-- end-user-doc --> | ||
19 | * @generated | ||
20 | */ | ||
21 | public class YakinduFactoryImpl extends EFactoryImpl implements YakinduFactory { | ||
22 | /** | ||
23 | * Creates the default factory implementation. | ||
24 | * <!-- begin-user-doc --> | ||
25 | * <!-- end-user-doc --> | ||
26 | * @generated | ||
27 | */ | ||
28 | public static YakinduFactory init() { | ||
29 | try { | ||
30 | YakinduFactory theYakinduFactory = (YakinduFactory)EPackage.Registry.INSTANCE.getEFactory(YakinduPackage.eNS_URI); | ||
31 | if (theYakinduFactory != null) { | ||
32 | return theYakinduFactory; | ||
33 | } | ||
34 | } | ||
35 | catch (Exception exception) { | ||
36 | EcorePlugin.INSTANCE.log(exception); | ||
37 | } | ||
38 | return new YakinduFactoryImpl(); | ||
39 | } | ||
40 | |||
41 | /** | ||
42 | * Creates an instance of the factory. | ||
43 | * <!-- begin-user-doc --> | ||
44 | * <!-- end-user-doc --> | ||
45 | * @generated | ||
46 | */ | ||
47 | public YakinduFactoryImpl() { | ||
48 | super(); | ||
49 | } | ||
50 | |||
51 | /** | ||
52 | * <!-- begin-user-doc --> | ||
53 | * <!-- end-user-doc --> | ||
54 | * @generated | ||
55 | */ | ||
56 | @Override | ||
57 | public EObject create(EClass eClass) { | ||
58 | switch (eClass.getClassifierID()) { | ||
59 | case YakinduPackage.REGION: return createRegion(); | ||
60 | case YakinduPackage.TRANSITION: return createTransition(); | ||
61 | case YakinduPackage.STATECHART: return createStatechart(); | ||
62 | case YakinduPackage.ENTRY: return createEntry(); | ||
63 | case YakinduPackage.SYNCHRONIZATION: return createSynchronization(); | ||
64 | case YakinduPackage.STATE: return createState(); | ||
65 | case YakinduPackage.CHOICE: return createChoice(); | ||
66 | case YakinduPackage.EXIT: return createExit(); | ||
67 | case YakinduPackage.FINAL_STATE: return createFinalState(); | ||
68 | default: | ||
69 | throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); | ||
70 | } | ||
71 | } | ||
72 | |||
73 | /** | ||
74 | * <!-- begin-user-doc --> | ||
75 | * <!-- end-user-doc --> | ||
76 | * @generated | ||
77 | */ | ||
78 | public Region createRegion() { | ||
79 | RegionImpl region = new RegionImpl(); | ||
80 | return region; | ||
81 | } | ||
82 | |||
83 | /** | ||
84 | * <!-- begin-user-doc --> | ||
85 | * <!-- end-user-doc --> | ||
86 | * @generated | ||
87 | */ | ||
88 | public Transition createTransition() { | ||
89 | TransitionImpl transition = new TransitionImpl(); | ||
90 | return transition; | ||
91 | } | ||
92 | |||
93 | /** | ||
94 | * <!-- begin-user-doc --> | ||
95 | * <!-- end-user-doc --> | ||
96 | * @generated | ||
97 | */ | ||
98 | public Statechart createStatechart() { | ||
99 | StatechartImpl statechart = new StatechartImpl(); | ||
100 | return statechart; | ||
101 | } | ||
102 | |||
103 | /** | ||
104 | * <!-- begin-user-doc --> | ||
105 | * <!-- end-user-doc --> | ||
106 | * @generated | ||
107 | */ | ||
108 | public Entry createEntry() { | ||
109 | EntryImpl entry = new EntryImpl(); | ||
110 | return entry; | ||
111 | } | ||
112 | |||
113 | /** | ||
114 | * <!-- begin-user-doc --> | ||
115 | * <!-- end-user-doc --> | ||
116 | * @generated | ||
117 | */ | ||
118 | public Synchronization createSynchronization() { | ||
119 | SynchronizationImpl synchronization = new SynchronizationImpl(); | ||
120 | return synchronization; | ||
121 | } | ||
122 | |||
123 | /** | ||
124 | * <!-- begin-user-doc --> | ||
125 | * <!-- end-user-doc --> | ||
126 | * @generated | ||
127 | */ | ||
128 | public State createState() { | ||
129 | StateImpl state = new StateImpl(); | ||
130 | return state; | ||
131 | } | ||
132 | |||
133 | /** | ||
134 | * <!-- begin-user-doc --> | ||
135 | * <!-- end-user-doc --> | ||
136 | * @generated | ||
137 | */ | ||
138 | public Choice createChoice() { | ||
139 | ChoiceImpl choice = new ChoiceImpl(); | ||
140 | return choice; | ||
141 | } | ||
142 | |||
143 | /** | ||
144 | * <!-- begin-user-doc --> | ||
145 | * <!-- end-user-doc --> | ||
146 | * @generated | ||
147 | */ | ||
148 | public Exit createExit() { | ||
149 | ExitImpl exit = new ExitImpl(); | ||
150 | return exit; | ||
151 | } | ||
152 | |||
153 | /** | ||
154 | * <!-- begin-user-doc --> | ||
155 | * <!-- end-user-doc --> | ||
156 | * @generated | ||
157 | */ | ||
158 | public FinalState createFinalState() { | ||
159 | FinalStateImpl finalState = new FinalStateImpl(); | ||
160 | return finalState; | ||
161 | } | ||
162 | |||
163 | /** | ||
164 | * <!-- begin-user-doc --> | ||
165 | * <!-- end-user-doc --> | ||
166 | * @generated | ||
167 | */ | ||
168 | public YakinduPackage getYakinduPackage() { | ||
169 | return (YakinduPackage)getEPackage(); | ||
170 | } | ||
171 | |||
172 | /** | ||
173 | * <!-- begin-user-doc --> | ||
174 | * <!-- end-user-doc --> | ||
175 | * @deprecated | ||
176 | * @generated | ||
177 | */ | ||
178 | @Deprecated | ||
179 | public static YakinduPackage getPackage() { | ||
180 | return YakinduPackage.eINSTANCE; | ||
181 | } | ||
182 | |||
183 | } //YakinduFactoryImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/YakinduPackageImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/YakinduPackageImpl.java new file mode 100644 index 00000000..0796c5d8 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/YakinduPackageImpl.java | |||
@@ -0,0 +1,494 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice; | ||
6 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement; | ||
7 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry; | ||
8 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit; | ||
9 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState; | ||
10 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate; | ||
11 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region; | ||
12 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState; | ||
13 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State; | ||
14 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart; | ||
15 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization; | ||
16 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition; | ||
17 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex; | ||
18 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduFactory; | ||
19 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage; | ||
20 | |||
21 | import org.eclipse.emf.ecore.EClass; | ||
22 | import org.eclipse.emf.ecore.EPackage; | ||
23 | import org.eclipse.emf.ecore.EReference; | ||
24 | |||
25 | import org.eclipse.emf.ecore.impl.EPackageImpl; | ||
26 | |||
27 | /** | ||
28 | * <!-- begin-user-doc --> | ||
29 | * An implementation of the model <b>Package</b>. | ||
30 | * <!-- end-user-doc --> | ||
31 | * @generated | ||
32 | */ | ||
33 | public class YakinduPackageImpl extends EPackageImpl implements YakinduPackage { | ||
34 | /** | ||
35 | * <!-- begin-user-doc --> | ||
36 | * <!-- end-user-doc --> | ||
37 | * @generated | ||
38 | */ | ||
39 | private EClass pseudostateEClass = null; | ||
40 | |||
41 | /** | ||
42 | * <!-- begin-user-doc --> | ||
43 | * <!-- end-user-doc --> | ||
44 | * @generated | ||
45 | */ | ||
46 | private EClass vertexEClass = null; | ||
47 | |||
48 | /** | ||
49 | * <!-- begin-user-doc --> | ||
50 | * <!-- end-user-doc --> | ||
51 | * @generated | ||
52 | */ | ||
53 | private EClass regionEClass = null; | ||
54 | |||
55 | /** | ||
56 | * <!-- begin-user-doc --> | ||
57 | * <!-- end-user-doc --> | ||
58 | * @generated | ||
59 | */ | ||
60 | private EClass transitionEClass = null; | ||
61 | |||
62 | /** | ||
63 | * <!-- begin-user-doc --> | ||
64 | * <!-- end-user-doc --> | ||
65 | * @generated | ||
66 | */ | ||
67 | private EClass statechartEClass = null; | ||
68 | |||
69 | /** | ||
70 | * <!-- begin-user-doc --> | ||
71 | * <!-- end-user-doc --> | ||
72 | * @generated | ||
73 | */ | ||
74 | private EClass entryEClass = null; | ||
75 | |||
76 | /** | ||
77 | * <!-- begin-user-doc --> | ||
78 | * <!-- end-user-doc --> | ||
79 | * @generated | ||
80 | */ | ||
81 | private EClass synchronizationEClass = null; | ||
82 | |||
83 | /** | ||
84 | * <!-- begin-user-doc --> | ||
85 | * <!-- end-user-doc --> | ||
86 | * @generated | ||
87 | */ | ||
88 | private EClass stateEClass = null; | ||
89 | |||
90 | /** | ||
91 | * <!-- begin-user-doc --> | ||
92 | * <!-- end-user-doc --> | ||
93 | * @generated | ||
94 | */ | ||
95 | private EClass regularStateEClass = null; | ||
96 | |||
97 | /** | ||
98 | * <!-- begin-user-doc --> | ||
99 | * <!-- end-user-doc --> | ||
100 | * @generated | ||
101 | */ | ||
102 | private EClass compositeElementEClass = null; | ||
103 | |||
104 | /** | ||
105 | * <!-- begin-user-doc --> | ||
106 | * <!-- end-user-doc --> | ||
107 | * @generated | ||
108 | */ | ||
109 | private EClass choiceEClass = null; | ||
110 | |||
111 | /** | ||
112 | * <!-- begin-user-doc --> | ||
113 | * <!-- end-user-doc --> | ||
114 | * @generated | ||
115 | */ | ||
116 | private EClass exitEClass = null; | ||
117 | |||
118 | /** | ||
119 | * <!-- begin-user-doc --> | ||
120 | * <!-- end-user-doc --> | ||
121 | * @generated | ||
122 | */ | ||
123 | private EClass finalStateEClass = null; | ||
124 | |||
125 | /** | ||
126 | * Creates an instance of the model <b>Package</b>, registered with | ||
127 | * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package | ||
128 | * package URI value. | ||
129 | * <p>Note: the correct way to create the package is via the static | ||
130 | * factory method {@link #init init()}, which also performs | ||
131 | * initialization of the package, or returns the registered package, | ||
132 | * if one already exists. | ||
133 | * <!-- begin-user-doc --> | ||
134 | * <!-- end-user-doc --> | ||
135 | * @see org.eclipse.emf.ecore.EPackage.Registry | ||
136 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage#eNS_URI | ||
137 | * @see #init() | ||
138 | * @generated | ||
139 | */ | ||
140 | private YakinduPackageImpl() { | ||
141 | super(eNS_URI, YakinduFactory.eINSTANCE); | ||
142 | } | ||
143 | |||
144 | /** | ||
145 | * <!-- begin-user-doc --> | ||
146 | * <!-- end-user-doc --> | ||
147 | * @generated | ||
148 | */ | ||
149 | private static boolean isInited = false; | ||
150 | |||
151 | /** | ||
152 | * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. | ||
153 | * | ||
154 | * <p>This method is used to initialize {@link YakinduPackage#eINSTANCE} when that field is accessed. | ||
155 | * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. | ||
156 | * <!-- begin-user-doc --> | ||
157 | * <!-- end-user-doc --> | ||
158 | * @see #eNS_URI | ||
159 | * @see #createPackageContents() | ||
160 | * @see #initializePackageContents() | ||
161 | * @generated | ||
162 | */ | ||
163 | public static YakinduPackage init() { | ||
164 | if (isInited) return (YakinduPackage)EPackage.Registry.INSTANCE.getEPackage(YakinduPackage.eNS_URI); | ||
165 | |||
166 | // Obtain or create and register package | ||
167 | Object registeredYakinduPackage = EPackage.Registry.INSTANCE.get(eNS_URI); | ||
168 | YakinduPackageImpl theYakinduPackage = registeredYakinduPackage instanceof YakinduPackageImpl ? (YakinduPackageImpl)registeredYakinduPackage : new YakinduPackageImpl(); | ||
169 | |||
170 | isInited = true; | ||
171 | |||
172 | // Create package meta-data objects | ||
173 | theYakinduPackage.createPackageContents(); | ||
174 | |||
175 | // Initialize created meta-data | ||
176 | theYakinduPackage.initializePackageContents(); | ||
177 | |||
178 | // Mark meta-data to indicate it can't be changed | ||
179 | theYakinduPackage.freeze(); | ||
180 | |||
181 | // Update the registry and return the package | ||
182 | EPackage.Registry.INSTANCE.put(YakinduPackage.eNS_URI, theYakinduPackage); | ||
183 | return theYakinduPackage; | ||
184 | } | ||
185 | |||
186 | /** | ||
187 | * <!-- begin-user-doc --> | ||
188 | * <!-- end-user-doc --> | ||
189 | * @generated | ||
190 | */ | ||
191 | public EClass getPseudostate() { | ||
192 | return pseudostateEClass; | ||
193 | } | ||
194 | |||
195 | /** | ||
196 | * <!-- begin-user-doc --> | ||
197 | * <!-- end-user-doc --> | ||
198 | * @generated | ||
199 | */ | ||
200 | public EClass getVertex() { | ||
201 | return vertexEClass; | ||
202 | } | ||
203 | |||
204 | /** | ||
205 | * <!-- begin-user-doc --> | ||
206 | * <!-- end-user-doc --> | ||
207 | * @generated | ||
208 | */ | ||
209 | public EReference getVertex_IncomingTransitions() { | ||
210 | return (EReference)vertexEClass.getEStructuralFeatures().get(0); | ||
211 | } | ||
212 | |||
213 | /** | ||
214 | * <!-- begin-user-doc --> | ||
215 | * <!-- end-user-doc --> | ||
216 | * @generated | ||
217 | */ | ||
218 | public EReference getVertex_OutgoingTransitions() { | ||
219 | return (EReference)vertexEClass.getEStructuralFeatures().get(1); | ||
220 | } | ||
221 | |||
222 | /** | ||
223 | * <!-- begin-user-doc --> | ||
224 | * <!-- end-user-doc --> | ||
225 | * @generated | ||
226 | */ | ||
227 | public EClass getRegion() { | ||
228 | return regionEClass; | ||
229 | } | ||
230 | |||
231 | /** | ||
232 | * <!-- begin-user-doc --> | ||
233 | * <!-- end-user-doc --> | ||
234 | * @generated | ||
235 | */ | ||
236 | public EReference getRegion_Vertices() { | ||
237 | return (EReference)regionEClass.getEStructuralFeatures().get(0); | ||
238 | } | ||
239 | |||
240 | /** | ||
241 | * <!-- begin-user-doc --> | ||
242 | * <!-- end-user-doc --> | ||
243 | * @generated | ||
244 | */ | ||
245 | public EClass getTransition() { | ||
246 | return transitionEClass; | ||
247 | } | ||
248 | |||
249 | /** | ||
250 | * <!-- begin-user-doc --> | ||
251 | * <!-- end-user-doc --> | ||
252 | * @generated | ||
253 | */ | ||
254 | public EReference getTransition_Target() { | ||
255 | return (EReference)transitionEClass.getEStructuralFeatures().get(0); | ||
256 | } | ||
257 | |||
258 | /** | ||
259 | * <!-- begin-user-doc --> | ||
260 | * <!-- end-user-doc --> | ||
261 | * @generated | ||
262 | */ | ||
263 | public EReference getTransition_Source() { | ||
264 | return (EReference)transitionEClass.getEStructuralFeatures().get(1); | ||
265 | } | ||
266 | |||
267 | /** | ||
268 | * <!-- begin-user-doc --> | ||
269 | * <!-- end-user-doc --> | ||
270 | * @generated | ||
271 | */ | ||
272 | public EClass getStatechart() { | ||
273 | return statechartEClass; | ||
274 | } | ||
275 | |||
276 | /** | ||
277 | * <!-- begin-user-doc --> | ||
278 | * <!-- end-user-doc --> | ||
279 | * @generated | ||
280 | */ | ||
281 | public EClass getEntry() { | ||
282 | return entryEClass; | ||
283 | } | ||
284 | |||
285 | /** | ||
286 | * <!-- begin-user-doc --> | ||
287 | * <!-- end-user-doc --> | ||
288 | * @generated | ||
289 | */ | ||
290 | public EClass getSynchronization() { | ||
291 | return synchronizationEClass; | ||
292 | } | ||
293 | |||
294 | /** | ||
295 | * <!-- begin-user-doc --> | ||
296 | * <!-- end-user-doc --> | ||
297 | * @generated | ||
298 | */ | ||
299 | public EClass getState() { | ||
300 | return stateEClass; | ||
301 | } | ||
302 | |||
303 | /** | ||
304 | * <!-- begin-user-doc --> | ||
305 | * <!-- end-user-doc --> | ||
306 | * @generated | ||
307 | */ | ||
308 | public EClass getRegularState() { | ||
309 | return regularStateEClass; | ||
310 | } | ||
311 | |||
312 | /** | ||
313 | * <!-- begin-user-doc --> | ||
314 | * <!-- end-user-doc --> | ||
315 | * @generated | ||
316 | */ | ||
317 | public EClass getCompositeElement() { | ||
318 | return compositeElementEClass; | ||
319 | } | ||
320 | |||
321 | /** | ||
322 | * <!-- begin-user-doc --> | ||
323 | * <!-- end-user-doc --> | ||
324 | * @generated | ||
325 | */ | ||
326 | public EReference getCompositeElement_Regions() { | ||
327 | return (EReference)compositeElementEClass.getEStructuralFeatures().get(0); | ||
328 | } | ||
329 | |||
330 | /** | ||
331 | * <!-- begin-user-doc --> | ||
332 | * <!-- end-user-doc --> | ||
333 | * @generated | ||
334 | */ | ||
335 | public EClass getChoice() { | ||
336 | return choiceEClass; | ||
337 | } | ||
338 | |||
339 | /** | ||
340 | * <!-- begin-user-doc --> | ||
341 | * <!-- end-user-doc --> | ||
342 | * @generated | ||
343 | */ | ||
344 | public EClass getExit() { | ||
345 | return exitEClass; | ||
346 | } | ||
347 | |||
348 | /** | ||
349 | * <!-- begin-user-doc --> | ||
350 | * <!-- end-user-doc --> | ||
351 | * @generated | ||
352 | */ | ||
353 | public EClass getFinalState() { | ||
354 | return finalStateEClass; | ||
355 | } | ||
356 | |||
357 | /** | ||
358 | * <!-- begin-user-doc --> | ||
359 | * <!-- end-user-doc --> | ||
360 | * @generated | ||
361 | */ | ||
362 | public YakinduFactory getYakinduFactory() { | ||
363 | return (YakinduFactory)getEFactoryInstance(); | ||
364 | } | ||
365 | |||
366 | /** | ||
367 | * <!-- begin-user-doc --> | ||
368 | * <!-- end-user-doc --> | ||
369 | * @generated | ||
370 | */ | ||
371 | private boolean isCreated = false; | ||
372 | |||
373 | /** | ||
374 | * Creates the meta-model objects for the package. This method is | ||
375 | * guarded to have no affect on any invocation but its first. | ||
376 | * <!-- begin-user-doc --> | ||
377 | * <!-- end-user-doc --> | ||
378 | * @generated | ||
379 | */ | ||
380 | public void createPackageContents() { | ||
381 | if (isCreated) return; | ||
382 | isCreated = true; | ||
383 | |||
384 | // Create classes and their features | ||
385 | pseudostateEClass = createEClass(PSEUDOSTATE); | ||
386 | |||
387 | vertexEClass = createEClass(VERTEX); | ||
388 | createEReference(vertexEClass, VERTEX__INCOMING_TRANSITIONS); | ||
389 | createEReference(vertexEClass, VERTEX__OUTGOING_TRANSITIONS); | ||
390 | |||
391 | regionEClass = createEClass(REGION); | ||
392 | createEReference(regionEClass, REGION__VERTICES); | ||
393 | |||
394 | transitionEClass = createEClass(TRANSITION); | ||
395 | createEReference(transitionEClass, TRANSITION__TARGET); | ||
396 | createEReference(transitionEClass, TRANSITION__SOURCE); | ||
397 | |||
398 | statechartEClass = createEClass(STATECHART); | ||
399 | |||
400 | entryEClass = createEClass(ENTRY); | ||
401 | |||
402 | synchronizationEClass = createEClass(SYNCHRONIZATION); | ||
403 | |||
404 | stateEClass = createEClass(STATE); | ||
405 | |||
406 | regularStateEClass = createEClass(REGULAR_STATE); | ||
407 | |||
408 | compositeElementEClass = createEClass(COMPOSITE_ELEMENT); | ||
409 | createEReference(compositeElementEClass, COMPOSITE_ELEMENT__REGIONS); | ||
410 | |||
411 | choiceEClass = createEClass(CHOICE); | ||
412 | |||
413 | exitEClass = createEClass(EXIT); | ||
414 | |||
415 | finalStateEClass = createEClass(FINAL_STATE); | ||
416 | } | ||
417 | |||
418 | /** | ||
419 | * <!-- begin-user-doc --> | ||
420 | * <!-- end-user-doc --> | ||
421 | * @generated | ||
422 | */ | ||
423 | private boolean isInitialized = false; | ||
424 | |||
425 | /** | ||
426 | * Complete the initialization of the package and its meta-model. This | ||
427 | * method is guarded to have no affect on any invocation but its first. | ||
428 | * <!-- begin-user-doc --> | ||
429 | * <!-- end-user-doc --> | ||
430 | * @generated | ||
431 | */ | ||
432 | public void initializePackageContents() { | ||
433 | if (isInitialized) return; | ||
434 | isInitialized = true; | ||
435 | |||
436 | // Initialize package | ||
437 | setName(eNAME); | ||
438 | setNsPrefix(eNS_PREFIX); | ||
439 | setNsURI(eNS_URI); | ||
440 | |||
441 | // Create type parameters | ||
442 | |||
443 | // Set bounds for type parameters | ||
444 | |||
445 | // Add supertypes to classes | ||
446 | pseudostateEClass.getESuperTypes().add(this.getVertex()); | ||
447 | statechartEClass.getESuperTypes().add(this.getCompositeElement()); | ||
448 | entryEClass.getESuperTypes().add(this.getPseudostate()); | ||
449 | synchronizationEClass.getESuperTypes().add(this.getPseudostate()); | ||
450 | stateEClass.getESuperTypes().add(this.getRegularState()); | ||
451 | stateEClass.getESuperTypes().add(this.getCompositeElement()); | ||
452 | regularStateEClass.getESuperTypes().add(this.getVertex()); | ||
453 | choiceEClass.getESuperTypes().add(this.getPseudostate()); | ||
454 | exitEClass.getESuperTypes().add(this.getPseudostate()); | ||
455 | finalStateEClass.getESuperTypes().add(this.getRegularState()); | ||
456 | |||
457 | // Initialize classes, features, and operations; add parameters | ||
458 | initEClass(pseudostateEClass, Pseudostate.class, "Pseudostate", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
459 | |||
460 | initEClass(vertexEClass, Vertex.class, "Vertex", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
461 | initEReference(getVertex_IncomingTransitions(), this.getTransition(), this.getTransition_Target(), "incomingTransitions", null, 0, -1, Vertex.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); | ||
462 | initEReference(getVertex_OutgoingTransitions(), this.getTransition(), this.getTransition_Source(), "outgoingTransitions", null, 0, -1, Vertex.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); | ||
463 | |||
464 | initEClass(regionEClass, Region.class, "Region", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
465 | initEReference(getRegion_Vertices(), this.getVertex(), null, "vertices", null, 0, -1, Region.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); | ||
466 | |||
467 | initEClass(transitionEClass, Transition.class, "Transition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
468 | initEReference(getTransition_Target(), this.getVertex(), this.getVertex_IncomingTransitions(), "target", null, 1, 1, Transition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); | ||
469 | initEReference(getTransition_Source(), this.getVertex(), this.getVertex_OutgoingTransitions(), "source", null, 0, 1, Transition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); | ||
470 | |||
471 | initEClass(statechartEClass, Statechart.class, "Statechart", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
472 | |||
473 | initEClass(entryEClass, Entry.class, "Entry", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
474 | |||
475 | initEClass(synchronizationEClass, Synchronization.class, "Synchronization", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
476 | |||
477 | initEClass(stateEClass, State.class, "State", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
478 | |||
479 | initEClass(regularStateEClass, RegularState.class, "RegularState", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
480 | |||
481 | initEClass(compositeElementEClass, CompositeElement.class, "CompositeElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
482 | initEReference(getCompositeElement_Regions(), this.getRegion(), null, "regions", null, 0, -1, CompositeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
483 | |||
484 | initEClass(choiceEClass, Choice.class, "Choice", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
485 | |||
486 | initEClass(exitEClass, Exit.class, "Exit", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
487 | |||
488 | initEClass(finalStateEClass, FinalState.class, "FinalState", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
489 | |||
490 | // Create resource | ||
491 | createResource(eNS_URI); | ||
492 | } | ||
493 | |||
494 | } //YakinduPackageImpl | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/YakinduAdapterFactory.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/YakinduAdapterFactory.java new file mode 100644 index 00000000..566f01e5 --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/YakinduAdapterFactory.java | |||
@@ -0,0 +1,336 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.util; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.*; | ||
6 | |||
7 | import org.eclipse.emf.common.notify.Adapter; | ||
8 | import org.eclipse.emf.common.notify.Notifier; | ||
9 | |||
10 | import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; | ||
11 | |||
12 | import org.eclipse.emf.ecore.EObject; | ||
13 | |||
14 | /** | ||
15 | * <!-- begin-user-doc --> | ||
16 | * The <b>Adapter Factory</b> for the model. | ||
17 | * It provides an adapter <code>createXXX</code> method for each class of the model. | ||
18 | * <!-- end-user-doc --> | ||
19 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage | ||
20 | * @generated | ||
21 | */ | ||
22 | public class YakinduAdapterFactory extends AdapterFactoryImpl { | ||
23 | /** | ||
24 | * The cached model package. | ||
25 | * <!-- begin-user-doc --> | ||
26 | * <!-- end-user-doc --> | ||
27 | * @generated | ||
28 | */ | ||
29 | protected static YakinduPackage modelPackage; | ||
30 | |||
31 | /** | ||
32 | * Creates an instance of the adapter factory. | ||
33 | * <!-- begin-user-doc --> | ||
34 | * <!-- end-user-doc --> | ||
35 | * @generated | ||
36 | */ | ||
37 | public YakinduAdapterFactory() { | ||
38 | if (modelPackage == null) { | ||
39 | modelPackage = YakinduPackage.eINSTANCE; | ||
40 | } | ||
41 | } | ||
42 | |||
43 | /** | ||
44 | * Returns whether this factory is applicable for the type of the object. | ||
45 | * <!-- begin-user-doc --> | ||
46 | * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. | ||
47 | * <!-- end-user-doc --> | ||
48 | * @return whether this factory is applicable for the type of the object. | ||
49 | * @generated | ||
50 | */ | ||
51 | @Override | ||
52 | public boolean isFactoryForType(Object object) { | ||
53 | if (object == modelPackage) { | ||
54 | return true; | ||
55 | } | ||
56 | if (object instanceof EObject) { | ||
57 | return ((EObject)object).eClass().getEPackage() == modelPackage; | ||
58 | } | ||
59 | return false; | ||
60 | } | ||
61 | |||
62 | /** | ||
63 | * The switch that delegates to the <code>createXXX</code> methods. | ||
64 | * <!-- begin-user-doc --> | ||
65 | * <!-- end-user-doc --> | ||
66 | * @generated | ||
67 | */ | ||
68 | protected YakinduSwitch<Adapter> modelSwitch = | ||
69 | new YakinduSwitch<Adapter>() { | ||
70 | @Override | ||
71 | public Adapter casePseudostate(Pseudostate object) { | ||
72 | return createPseudostateAdapter(); | ||
73 | } | ||
74 | @Override | ||
75 | public Adapter caseVertex(Vertex object) { | ||
76 | return createVertexAdapter(); | ||
77 | } | ||
78 | @Override | ||
79 | public Adapter caseRegion(Region object) { | ||
80 | return createRegionAdapter(); | ||
81 | } | ||
82 | @Override | ||
83 | public Adapter caseTransition(Transition object) { | ||
84 | return createTransitionAdapter(); | ||
85 | } | ||
86 | @Override | ||
87 | public Adapter caseStatechart(Statechart object) { | ||
88 | return createStatechartAdapter(); | ||
89 | } | ||
90 | @Override | ||
91 | public Adapter caseEntry(Entry object) { | ||
92 | return createEntryAdapter(); | ||
93 | } | ||
94 | @Override | ||
95 | public Adapter caseSynchronization(Synchronization object) { | ||
96 | return createSynchronizationAdapter(); | ||
97 | } | ||
98 | @Override | ||
99 | public Adapter caseState(State object) { | ||
100 | return createStateAdapter(); | ||
101 | } | ||
102 | @Override | ||
103 | public Adapter caseRegularState(RegularState object) { | ||
104 | return createRegularStateAdapter(); | ||
105 | } | ||
106 | @Override | ||
107 | public Adapter caseCompositeElement(CompositeElement object) { | ||
108 | return createCompositeElementAdapter(); | ||
109 | } | ||
110 | @Override | ||
111 | public Adapter caseChoice(Choice object) { | ||
112 | return createChoiceAdapter(); | ||
113 | } | ||
114 | @Override | ||
115 | public Adapter caseExit(Exit object) { | ||
116 | return createExitAdapter(); | ||
117 | } | ||
118 | @Override | ||
119 | public Adapter caseFinalState(FinalState object) { | ||
120 | return createFinalStateAdapter(); | ||
121 | } | ||
122 | @Override | ||
123 | public Adapter defaultCase(EObject object) { | ||
124 | return createEObjectAdapter(); | ||
125 | } | ||
126 | }; | ||
127 | |||
128 | /** | ||
129 | * Creates an adapter for the <code>target</code>. | ||
130 | * <!-- begin-user-doc --> | ||
131 | * <!-- end-user-doc --> | ||
132 | * @param target the object to adapt. | ||
133 | * @return the adapter for the <code>target</code>. | ||
134 | * @generated | ||
135 | */ | ||
136 | @Override | ||
137 | public Adapter createAdapter(Notifier target) { | ||
138 | return modelSwitch.doSwitch((EObject)target); | ||
139 | } | ||
140 | |||
141 | |||
142 | /** | ||
143 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate <em>Pseudostate</em>}'. | ||
144 | * <!-- begin-user-doc --> | ||
145 | * This default implementation returns null so that we can easily ignore cases; | ||
146 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
147 | * <!-- end-user-doc --> | ||
148 | * @return the new adapter. | ||
149 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate | ||
150 | * @generated | ||
151 | */ | ||
152 | public Adapter createPseudostateAdapter() { | ||
153 | return null; | ||
154 | } | ||
155 | |||
156 | /** | ||
157 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex <em>Vertex</em>}'. | ||
158 | * <!-- begin-user-doc --> | ||
159 | * This default implementation returns null so that we can easily ignore cases; | ||
160 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
161 | * <!-- end-user-doc --> | ||
162 | * @return the new adapter. | ||
163 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex | ||
164 | * @generated | ||
165 | */ | ||
166 | public Adapter createVertexAdapter() { | ||
167 | return null; | ||
168 | } | ||
169 | |||
170 | /** | ||
171 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region <em>Region</em>}'. | ||
172 | * <!-- begin-user-doc --> | ||
173 | * This default implementation returns null so that we can easily ignore cases; | ||
174 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
175 | * <!-- end-user-doc --> | ||
176 | * @return the new adapter. | ||
177 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region | ||
178 | * @generated | ||
179 | */ | ||
180 | public Adapter createRegionAdapter() { | ||
181 | return null; | ||
182 | } | ||
183 | |||
184 | /** | ||
185 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition <em>Transition</em>}'. | ||
186 | * <!-- begin-user-doc --> | ||
187 | * This default implementation returns null so that we can easily ignore cases; | ||
188 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
189 | * <!-- end-user-doc --> | ||
190 | * @return the new adapter. | ||
191 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition | ||
192 | * @generated | ||
193 | */ | ||
194 | public Adapter createTransitionAdapter() { | ||
195 | return null; | ||
196 | } | ||
197 | |||
198 | /** | ||
199 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart <em>Statechart</em>}'. | ||
200 | * <!-- begin-user-doc --> | ||
201 | * This default implementation returns null so that we can easily ignore cases; | ||
202 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
203 | * <!-- end-user-doc --> | ||
204 | * @return the new adapter. | ||
205 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart | ||
206 | * @generated | ||
207 | */ | ||
208 | public Adapter createStatechartAdapter() { | ||
209 | return null; | ||
210 | } | ||
211 | |||
212 | /** | ||
213 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry <em>Entry</em>}'. | ||
214 | * <!-- begin-user-doc --> | ||
215 | * This default implementation returns null so that we can easily ignore cases; | ||
216 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
217 | * <!-- end-user-doc --> | ||
218 | * @return the new adapter. | ||
219 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry | ||
220 | * @generated | ||
221 | */ | ||
222 | public Adapter createEntryAdapter() { | ||
223 | return null; | ||
224 | } | ||
225 | |||
226 | /** | ||
227 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization <em>Synchronization</em>}'. | ||
228 | * <!-- begin-user-doc --> | ||
229 | * This default implementation returns null so that we can easily ignore cases; | ||
230 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
231 | * <!-- end-user-doc --> | ||
232 | * @return the new adapter. | ||
233 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization | ||
234 | * @generated | ||
235 | */ | ||
236 | public Adapter createSynchronizationAdapter() { | ||
237 | return null; | ||
238 | } | ||
239 | |||
240 | /** | ||
241 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State <em>State</em>}'. | ||
242 | * <!-- begin-user-doc --> | ||
243 | * This default implementation returns null so that we can easily ignore cases; | ||
244 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
245 | * <!-- end-user-doc --> | ||
246 | * @return the new adapter. | ||
247 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State | ||
248 | * @generated | ||
249 | */ | ||
250 | public Adapter createStateAdapter() { | ||
251 | return null; | ||
252 | } | ||
253 | |||
254 | /** | ||
255 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState <em>Regular State</em>}'. | ||
256 | * <!-- begin-user-doc --> | ||
257 | * This default implementation returns null so that we can easily ignore cases; | ||
258 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
259 | * <!-- end-user-doc --> | ||
260 | * @return the new adapter. | ||
261 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState | ||
262 | * @generated | ||
263 | */ | ||
264 | public Adapter createRegularStateAdapter() { | ||
265 | return null; | ||
266 | } | ||
267 | |||
268 | /** | ||
269 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement <em>Composite Element</em>}'. | ||
270 | * <!-- begin-user-doc --> | ||
271 | * This default implementation returns null so that we can easily ignore cases; | ||
272 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
273 | * <!-- end-user-doc --> | ||
274 | * @return the new adapter. | ||
275 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement | ||
276 | * @generated | ||
277 | */ | ||
278 | public Adapter createCompositeElementAdapter() { | ||
279 | return null; | ||
280 | } | ||
281 | |||
282 | /** | ||
283 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice <em>Choice</em>}'. | ||
284 | * <!-- begin-user-doc --> | ||
285 | * This default implementation returns null so that we can easily ignore cases; | ||
286 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
287 | * <!-- end-user-doc --> | ||
288 | * @return the new adapter. | ||
289 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice | ||
290 | * @generated | ||
291 | */ | ||
292 | public Adapter createChoiceAdapter() { | ||
293 | return null; | ||
294 | } | ||
295 | |||
296 | /** | ||
297 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit <em>Exit</em>}'. | ||
298 | * <!-- begin-user-doc --> | ||
299 | * This default implementation returns null so that we can easily ignore cases; | ||
300 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
301 | * <!-- end-user-doc --> | ||
302 | * @return the new adapter. | ||
303 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit | ||
304 | * @generated | ||
305 | */ | ||
306 | public Adapter createExitAdapter() { | ||
307 | return null; | ||
308 | } | ||
309 | |||
310 | /** | ||
311 | * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState <em>Final State</em>}'. | ||
312 | * <!-- begin-user-doc --> | ||
313 | * This default implementation returns null so that we can easily ignore cases; | ||
314 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
315 | * <!-- end-user-doc --> | ||
316 | * @return the new adapter. | ||
317 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState | ||
318 | * @generated | ||
319 | */ | ||
320 | public Adapter createFinalStateAdapter() { | ||
321 | return null; | ||
322 | } | ||
323 | |||
324 | /** | ||
325 | * Creates a new adapter for the default case. | ||
326 | * <!-- begin-user-doc --> | ||
327 | * This default implementation returns null. | ||
328 | * <!-- end-user-doc --> | ||
329 | * @return the new adapter. | ||
330 | * @generated | ||
331 | */ | ||
332 | public Adapter createEObjectAdapter() { | ||
333 | return null; | ||
334 | } | ||
335 | |||
336 | } //YakinduAdapterFactory | ||
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/YakinduSwitch.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/YakinduSwitch.java new file mode 100644 index 00000000..fdaff54d --- /dev/null +++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/YakinduSwitch.java | |||
@@ -0,0 +1,378 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.util; | ||
4 | |||
5 | import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.*; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | import org.eclipse.emf.ecore.EPackage; | ||
9 | |||
10 | import org.eclipse.emf.ecore.util.Switch; | ||
11 | |||
12 | /** | ||
13 | * <!-- begin-user-doc --> | ||
14 | * The <b>Switch</b> for the model's inheritance hierarchy. | ||
15 | * It supports the call {@link #doSwitch(EObject) doSwitch(object)} | ||
16 | * to invoke the <code>caseXXX</code> method for each class of the model, | ||
17 | * starting with the actual class of the object | ||
18 | * and proceeding up the inheritance hierarchy | ||
19 | * until a non-null result is returned, | ||
20 | * which is the result of the switch. | ||
21 | * <!-- end-user-doc --> | ||
22 | * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.YakinduPackage | ||
23 | * @generated | ||
24 | */ | ||
25 | public class YakinduSwitch<T> extends Switch<T> { | ||
26 | /** | ||
27 | * The cached model package | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | protected static YakinduPackage modelPackage; | ||
33 | |||
34 | /** | ||
35 | * Creates an instance of the switch. | ||
36 | * <!-- begin-user-doc --> | ||
37 | * <!-- end-user-doc --> | ||
38 | * @generated | ||
39 | */ | ||
40 | public YakinduSwitch() { | ||
41 | if (modelPackage == null) { | ||
42 | modelPackage = YakinduPackage.eINSTANCE; | ||
43 | } | ||
44 | } | ||
45 | |||
46 | /** | ||
47 | * Checks whether this is a switch for the given package. | ||
48 | * <!-- begin-user-doc --> | ||
49 | * <!-- end-user-doc --> | ||
50 | * @param ePackage the package in question. | ||
51 | * @return whether this is a switch for the given package. | ||
52 | * @generated | ||
53 | */ | ||
54 | @Override | ||
55 | protected boolean isSwitchFor(EPackage ePackage) { | ||
56 | return ePackage == modelPackage; | ||
57 | } | ||
58 | |||
59 | /** | ||
60 | * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. | ||
61 | * <!-- begin-user-doc --> | ||
62 | * <!-- end-user-doc --> | ||
63 | * @return the first non-null result returned by a <code>caseXXX</code> call. | ||
64 | * @generated | ||
65 | */ | ||
66 | @Override | ||
67 | protected T doSwitch(int classifierID, EObject theEObject) { | ||
68 | switch (classifierID) { | ||
69 | case YakinduPackage.PSEUDOSTATE: { | ||
70 | Pseudostate pseudostate = (Pseudostate)theEObject; | ||
71 | T result = casePseudostate(pseudostate); | ||
72 | if (result == null) result = caseVertex(pseudostate); | ||
73 | if (result == null) result = defaultCase(theEObject); | ||
74 | return result; | ||
75 | } | ||
76 | case YakinduPackage.VERTEX: { | ||
77 | Vertex vertex = (Vertex)theEObject; | ||
78 | T result = caseVertex(vertex); | ||
79 | if (result == null) result = defaultCase(theEObject); | ||
80 | return result; | ||
81 | } | ||
82 | case YakinduPackage.REGION: { | ||
83 | Region region = (Region)theEObject; | ||
84 | T result = caseRegion(region); | ||
85 | if (result == null) result = defaultCase(theEObject); | ||
86 | return result; | ||
87 | } | ||
88 | case YakinduPackage.TRANSITION: { | ||
89 | Transition transition = (Transition)theEObject; | ||
90 | T result = caseTransition(transition); | ||
91 | if (result == null) result = defaultCase(theEObject); | ||
92 | return result; | ||
93 | } | ||
94 | case YakinduPackage.STATECHART: { | ||
95 | Statechart statechart = (Statechart)theEObject; | ||
96 | T result = caseStatechart(statechart); | ||
97 | if (result == null) result = caseCompositeElement(statechart); | ||
98 | if (result == null) result = defaultCase(theEObject); | ||
99 | return result; | ||
100 | } | ||
101 | case YakinduPackage.ENTRY: { | ||
102 | Entry entry = (Entry)theEObject; | ||
103 | T result = caseEntry(entry); | ||
104 | if (result == null) result = casePseudostate(entry); | ||
105 | if (result == null) result = caseVertex(entry); | ||
106 | if (result == null) result = defaultCase(theEObject); | ||
107 | return result; | ||
108 | } | ||
109 | case YakinduPackage.SYNCHRONIZATION: { | ||
110 | Synchronization synchronization = (Synchronization)theEObject; | ||
111 | T result = caseSynchronization(synchronization); | ||
112 | if (result == null) result = casePseudostate(synchronization); | ||
113 | if (result == null) result = caseVertex(synchronization); | ||
114 | if (result == null) result = defaultCase(theEObject); | ||
115 | return result; | ||
116 | } | ||
117 | case YakinduPackage.STATE: { | ||
118 | State state = (State)theEObject; | ||
119 | T result = caseState(state); | ||
120 | if (result == null) result = caseRegularState(state); | ||
121 | if (result == null) result = caseCompositeElement(state); | ||
122 | if (result == null) result = caseVertex(state); | ||
123 | if (result == null) result = defaultCase(theEObject); | ||
124 | return result; | ||
125 | } | ||
126 | case YakinduPackage.REGULAR_STATE: { | ||
127 | RegularState regularState = (RegularState)theEObject; | ||
128 | T result = caseRegularState(regularState); | ||
129 | if (result == null) result = caseVertex(regularState); | ||
130 | if (result == null) result = defaultCase(theEObject); | ||
131 | return result; | ||
132 | } | ||
133 | case YakinduPackage.COMPOSITE_ELEMENT: { | ||
134 | CompositeElement compositeElement = (CompositeElement)theEObject; | ||
135 | T result = caseCompositeElement(compositeElement); | ||
136 | if (result == null) result = defaultCase(theEObject); | ||
137 | return result; | ||
138 | } | ||
139 | case YakinduPackage.CHOICE: { | ||
140 | Choice choice = (Choice)theEObject; | ||
141 | T result = caseChoice(choice); | ||
142 | if (result == null) result = casePseudostate(choice); | ||
143 | if (result == null) result = caseVertex(choice); | ||
144 | if (result == null) result = defaultCase(theEObject); | ||
145 | return result; | ||
146 | } | ||
147 | case YakinduPackage.EXIT: { | ||
148 | Exit exit = (Exit)theEObject; | ||
149 | T result = caseExit(exit); | ||
150 | if (result == null) result = casePseudostate(exit); | ||
151 | if (result == null) result = caseVertex(exit); | ||
152 | if (result == null) result = defaultCase(theEObject); | ||
153 | return result; | ||
154 | } | ||
155 | case YakinduPackage.FINAL_STATE: { | ||
156 | FinalState finalState = (FinalState)theEObject; | ||
157 | T result = caseFinalState(finalState); | ||
158 | if (result == null) result = caseRegularState(finalState); | ||
159 | if (result == null) result = caseVertex(finalState); | ||
160 | if (result == null) result = defaultCase(theEObject); | ||
161 | return result; | ||
162 | } | ||
163 | default: return defaultCase(theEObject); | ||
164 | } | ||
165 | } | ||
166 | |||
167 | /** | ||
168 | * Returns the result of interpreting the object as an instance of '<em>Pseudostate</em>'. | ||
169 | * <!-- begin-user-doc --> | ||
170 | * This implementation returns null; | ||
171 | * returning a non-null result will terminate the switch. | ||
172 | * <!-- end-user-doc --> | ||
173 | * @param object the target of the switch. | ||
174 | * @return the result of interpreting the object as an instance of '<em>Pseudostate</em>'. | ||
175 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
176 | * @generated | ||
177 | */ | ||
178 | public T casePseudostate(Pseudostate object) { | ||
179 | return null; | ||
180 | } | ||
181 | |||
182 | /** | ||
183 | * Returns the result of interpreting the object as an instance of '<em>Vertex</em>'. | ||
184 | * <!-- begin-user-doc --> | ||
185 | * This implementation returns null; | ||
186 | * returning a non-null result will terminate the switch. | ||
187 | * <!-- end-user-doc --> | ||
188 | * @param object the target of the switch. | ||
189 | * @return the result of interpreting the object as an instance of '<em>Vertex</em>'. | ||
190 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
191 | * @generated | ||
192 | */ | ||
193 | public T caseVertex(Vertex object) { | ||
194 | return null; | ||
195 | } | ||
196 | |||
197 | /** | ||
198 | * Returns the result of interpreting the object as an instance of '<em>Region</em>'. | ||
199 | * <!-- begin-user-doc --> | ||
200 | * This implementation returns null; | ||
201 | * returning a non-null result will terminate the switch. | ||
202 | * <!-- end-user-doc --> | ||
203 | * @param object the target of the switch. | ||
204 | * @return the result of interpreting the object as an instance of '<em>Region</em>'. | ||
205 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
206 | * @generated | ||
207 | */ | ||
208 | public T caseRegion(Region object) { | ||
209 | return null; | ||
210 | } | ||
211 | |||
212 | /** | ||
213 | * Returns the result of interpreting the object as an instance of '<em>Transition</em>'. | ||
214 | * <!-- begin-user-doc --> | ||
215 | * This implementation returns null; | ||
216 | * returning a non-null result will terminate the switch. | ||
217 | * <!-- end-user-doc --> | ||
218 | * @param object the target of the switch. | ||
219 | * @return the result of interpreting the object as an instance of '<em>Transition</em>'. | ||
220 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
221 | * @generated | ||
222 | */ | ||
223 | public T caseTransition(Transition object) { | ||
224 | return null; | ||
225 | } | ||
226 | |||
227 | /** | ||
228 | * Returns the result of interpreting the object as an instance of '<em>Statechart</em>'. | ||
229 | * <!-- begin-user-doc --> | ||
230 | * This implementation returns null; | ||
231 | * returning a non-null result will terminate the switch. | ||
232 | * <!-- end-user-doc --> | ||
233 | * @param object the target of the switch. | ||
234 | * @return the result of interpreting the object as an instance of '<em>Statechart</em>'. | ||
235 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
236 | * @generated | ||
237 | */ | ||
238 | public T caseStatechart(Statechart object) { | ||
239 | return null; | ||
240 | } | ||
241 | |||
242 | /** | ||
243 | * Returns the result of interpreting the object as an instance of '<em>Entry</em>'. | ||
244 | * <!-- begin-user-doc --> | ||
245 | * This implementation returns null; | ||
246 | * returning a non-null result will terminate the switch. | ||
247 | * <!-- end-user-doc --> | ||
248 | * @param object the target of the switch. | ||
249 | * @return the result of interpreting the object as an instance of '<em>Entry</em>'. | ||
250 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
251 | * @generated | ||
252 | */ | ||
253 | public T caseEntry(Entry object) { | ||
254 | return null; | ||
255 | } | ||
256 | |||
257 | /** | ||
258 | * Returns the result of interpreting the object as an instance of '<em>Synchronization</em>'. | ||
259 | * <!-- begin-user-doc --> | ||
260 | * This implementation returns null; | ||
261 | * returning a non-null result will terminate the switch. | ||
262 | * <!-- end-user-doc --> | ||
263 | * @param object the target of the switch. | ||
264 | * @return the result of interpreting the object as an instance of '<em>Synchronization</em>'. | ||
265 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
266 | * @generated | ||
267 | */ | ||
268 | public T caseSynchronization(Synchronization object) { | ||
269 | return null; | ||
270 | } | ||
271 | |||
272 | /** | ||
273 | * Returns the result of interpreting the object as an instance of '<em>State</em>'. | ||
274 | * <!-- begin-user-doc --> | ||
275 | * This implementation returns null; | ||
276 | * returning a non-null result will terminate the switch. | ||
277 | * <!-- end-user-doc --> | ||
278 | * @param object the target of the switch. | ||
279 | * @return the result of interpreting the object as an instance of '<em>State</em>'. | ||
280 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
281 | * @generated | ||
282 | */ | ||
283 | public T caseState(State object) { | ||
284 | return null; | ||
285 | } | ||
286 | |||
287 | /** | ||
288 | * Returns the result of interpreting the object as an instance of '<em>Regular State</em>'. | ||
289 | * <!-- begin-user-doc --> | ||
290 | * This implementation returns null; | ||
291 | * returning a non-null result will terminate the switch. | ||
292 | * <!-- end-user-doc --> | ||
293 | * @param object the target of the switch. | ||
294 | * @return the result of interpreting the object as an instance of '<em>Regular State</em>'. | ||
295 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
296 | * @generated | ||
297 | */ | ||
298 | public T caseRegularState(RegularState object) { | ||
299 | return null; | ||
300 | } | ||
301 | |||
302 | /** | ||
303 | * Returns the result of interpreting the object as an instance of '<em>Composite Element</em>'. | ||
304 | * <!-- begin-user-doc --> | ||
305 | * This implementation returns null; | ||
306 | * returning a non-null result will terminate the switch. | ||
307 | * <!-- end-user-doc --> | ||
308 | * @param object the target of the switch. | ||
309 | * @return the result of interpreting the object as an instance of '<em>Composite Element</em>'. | ||
310 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
311 | * @generated | ||
312 | */ | ||
313 | public T caseCompositeElement(CompositeElement object) { | ||
314 | return null; | ||
315 | } | ||
316 | |||
317 | /** | ||
318 | * Returns the result of interpreting the object as an instance of '<em>Choice</em>'. | ||
319 | * <!-- begin-user-doc --> | ||
320 | * This implementation returns null; | ||
321 | * returning a non-null result will terminate the switch. | ||
322 | * <!-- end-user-doc --> | ||
323 | * @param object the target of the switch. | ||
324 | * @return the result of interpreting the object as an instance of '<em>Choice</em>'. | ||
325 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
326 | * @generated | ||
327 | */ | ||
328 | public T caseChoice(Choice object) { | ||
329 | return null; | ||
330 | } | ||
331 | |||
332 | /** | ||
333 | * Returns the result of interpreting the object as an instance of '<em>Exit</em>'. | ||
334 | * <!-- begin-user-doc --> | ||
335 | * This implementation returns null; | ||
336 | * returning a non-null result will terminate the switch. | ||
337 | * <!-- end-user-doc --> | ||
338 | * @param object the target of the switch. | ||
339 | * @return the result of interpreting the object as an instance of '<em>Exit</em>'. | ||
340 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
341 | * @generated | ||
342 | */ | ||
343 | public T caseExit(Exit object) { | ||
344 | return null; | ||
345 | } | ||
346 | |||
347 | /** | ||
348 | * Returns the result of interpreting the object as an instance of '<em>Final State</em>'. | ||
349 | * <!-- begin-user-doc --> | ||
350 | * This implementation returns null; | ||
351 | * returning a non-null result will terminate the switch. | ||
352 | * <!-- end-user-doc --> | ||
353 | * @param object the target of the switch. | ||
354 | * @return the result of interpreting the object as an instance of '<em>Final State</em>'. | ||
355 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
356 | * @generated | ||
357 | */ | ||
358 | public T caseFinalState(FinalState object) { | ||
359 | return null; | ||
360 | } | ||
361 | |||
362 | /** | ||
363 | * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. | ||
364 | * <!-- begin-user-doc --> | ||
365 | * This implementation returns null; | ||
366 | * returning a non-null result will terminate the switch, but this is the last case anyway. | ||
367 | * <!-- end-user-doc --> | ||
368 | * @param object the target of the switch. | ||
369 | * @return the result of interpreting the object as an instance of '<em>EObject</em>'. | ||
370 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) | ||
371 | * @generated | ||
372 | */ | ||
373 | @Override | ||
374 | public T defaultCase(EObject object) { | ||
375 | return null; | ||
376 | } | ||
377 | |||
378 | } //YakinduSwitch | ||