1 | /** |
2 | * <copyright> |
3 | * </copyright> |
4 | * |
5 | * $Id$ |
6 | */ |
7 | package de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.impl; |
8 | |
9 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.AspectRequirement; |
10 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.Constraint; |
11 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.Criterion; |
12 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.DeterministicEvaluationAspect; |
13 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.EnumLiteral; |
14 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.EnumOperator; |
15 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.EnumRangeValueType; |
16 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.EvaluationAspect; |
17 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.Frequency; |
18 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.GenericQMLContract; |
19 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.Goal; |
20 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.Mean; |
21 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.NumericLiteral; |
22 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.Objective; |
23 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.Percentile; |
24 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.PointEstimator; |
25 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.QMLContractFactory; |
26 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.QMLContractPackage; |
27 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.RangeValue; |
28 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.RefinedQMLContract; |
29 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.Restriction; |
30 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.SetLiteral; |
31 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.SimpleQMLContract; |
32 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.StochasticEvaluationAspect; |
33 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.Value; |
34 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.ValueLiteral; |
35 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.Variance; |
36 | |
37 | import de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.util.QMLContractValidator; |
38 | |
39 | import de.uka.ipd.sdq.dsexplore.qml.contracttype.QMLContractType.QMLContractTypePackage; |
40 | |
41 | import de.uka.ipd.sdq.dsexplore.qml.contracttype.QMLContractType.impl.QMLContractTypePackageImpl; |
42 | |
43 | import de.uka.ipd.sdq.dsexplore.qml.declarations.QMLDeclarations.QMLDeclarationsPackage; |
44 | |
45 | import de.uka.ipd.sdq.dsexplore.qml.declarations.QMLDeclarations.impl.QMLDeclarationsPackageImpl; |
46 | |
47 | import de.uka.ipd.sdq.dsexplore.qml.profile.QMLProfile.QMLProfilePackage; |
48 | |
49 | import de.uka.ipd.sdq.dsexplore.qml.profile.QMLProfile.impl.QMLProfilePackageImpl; |
50 | |
51 | import de.uka.ipd.sdq.identifier.IdentifierPackage; |
52 | |
53 | import de.uka.ipd.sdq.pcm.allocation.AllocationPackage; |
54 | |
55 | import de.uka.ipd.sdq.pcm.core.CorePackage; |
56 | |
57 | import de.uka.ipd.sdq.pcm.parameter.ParameterPackage; |
58 | |
59 | import de.uka.ipd.sdq.pcm.protocol.ProtocolPackage; |
60 | |
61 | import de.uka.ipd.sdq.pcm.qosannotations.QosannotationsPackage; |
62 | |
63 | import de.uka.ipd.sdq.pcm.repository.RepositoryPackage; |
64 | |
65 | import de.uka.ipd.sdq.pcm.resourceenvironment.ResourceenvironmentPackage; |
66 | |
67 | import de.uka.ipd.sdq.pcm.resourcetype.ResourcetypePackage; |
68 | |
69 | import de.uka.ipd.sdq.pcm.seff.SeffPackage; |
70 | |
71 | import de.uka.ipd.sdq.pcm.subsystem.SubsystemPackage; |
72 | |
73 | import de.uka.ipd.sdq.pcm.system.SystemPackage; |
74 | |
75 | import de.uka.ipd.sdq.pcm.usagemodel.UsagemodelPackage; |
76 | |
77 | import org.eclipse.emf.ecore.EAttribute; |
78 | import org.eclipse.emf.ecore.EClass; |
79 | import org.eclipse.emf.ecore.EEnum; |
80 | import org.eclipse.emf.ecore.EGenericType; |
81 | import org.eclipse.emf.ecore.EOperation; |
82 | import org.eclipse.emf.ecore.EPackage; |
83 | import org.eclipse.emf.ecore.EReference; |
84 | import org.eclipse.emf.ecore.EValidator; |
85 | |
86 | import org.eclipse.emf.ecore.impl.EPackageImpl; |
87 | |
88 | /** |
89 | * <!-- begin-user-doc --> |
90 | * An implementation of the model <b>Package</b>. |
91 | * <!-- end-user-doc --> |
92 | * @generated |
93 | */ |
94 | public class QMLContractPackageImpl extends EPackageImpl implements QMLContractPackage { |
95 | /** |
96 | * <!-- begin-user-doc --> |
97 | * <!-- end-user-doc --> |
98 | * @generated |
99 | */ |
100 | private EClass simpleQMLContractEClass = null; |
101 | |
102 | /** |
103 | * <!-- begin-user-doc --> |
104 | * <!-- end-user-doc --> |
105 | * @generated |
106 | */ |
107 | private EClass criterionEClass = null; |
108 | |
109 | /** |
110 | * <!-- begin-user-doc --> |
111 | * <!-- end-user-doc --> |
112 | * @generated |
113 | */ |
114 | private EClass evaluationAspectEClass = null; |
115 | |
116 | /** |
117 | * <!-- begin-user-doc --> |
118 | * <!-- end-user-doc --> |
119 | * @generated |
120 | */ |
121 | private EClass aspectRequirementEClass = null; |
122 | |
123 | /** |
124 | * <!-- begin-user-doc --> |
125 | * <!-- end-user-doc --> |
126 | * @generated |
127 | */ |
128 | private EClass valueLiteralEClass = null; |
129 | |
130 | /** |
131 | * <!-- begin-user-doc --> |
132 | * <!-- end-user-doc --> |
133 | * @generated |
134 | */ |
135 | private EClass percentileEClass = null; |
136 | |
137 | /** |
138 | * <!-- begin-user-doc --> |
139 | * <!-- end-user-doc --> |
140 | * @generated |
141 | */ |
142 | private EClass pointEstimatorEClass = null; |
143 | |
144 | /** |
145 | * <!-- begin-user-doc --> |
146 | * <!-- end-user-doc --> |
147 | * @generated |
148 | */ |
149 | private EClass stochasticEvaluationAspectEClass = null; |
150 | |
151 | /** |
152 | * <!-- begin-user-doc --> |
153 | * <!-- end-user-doc --> |
154 | * @generated |
155 | */ |
156 | private EClass frequencyEClass = null; |
157 | |
158 | /** |
159 | * <!-- begin-user-doc --> |
160 | * <!-- end-user-doc --> |
161 | * @generated |
162 | */ |
163 | private EClass rangeValueEClass = null; |
164 | |
165 | /** |
166 | * <!-- begin-user-doc --> |
167 | * <!-- end-user-doc --> |
168 | * @generated |
169 | */ |
170 | private EClass meanEClass = null; |
171 | |
172 | /** |
173 | * <!-- begin-user-doc --> |
174 | * <!-- end-user-doc --> |
175 | * @generated |
176 | */ |
177 | private EClass varianceEClass = null; |
178 | |
179 | /** |
180 | * <!-- begin-user-doc --> |
181 | * <!-- end-user-doc --> |
182 | * @generated |
183 | */ |
184 | private EClass numericLiteralEClass = null; |
185 | |
186 | /** |
187 | * <!-- begin-user-doc --> |
188 | * <!-- end-user-doc --> |
189 | * @generated |
190 | */ |
191 | private EClass enumLiteralEClass = null; |
192 | |
193 | /** |
194 | * <!-- begin-user-doc --> |
195 | * <!-- end-user-doc --> |
196 | * @generated |
197 | */ |
198 | private EClass setLiteralEClass = null; |
199 | |
200 | /** |
201 | * <!-- begin-user-doc --> |
202 | * <!-- end-user-doc --> |
203 | * @generated |
204 | */ |
205 | private EClass refinedQMLContractEClass = null; |
206 | |
207 | /** |
208 | * <!-- begin-user-doc --> |
209 | * <!-- end-user-doc --> |
210 | * @generated |
211 | */ |
212 | private EClass valueEClass = null; |
213 | |
214 | /** |
215 | * <!-- begin-user-doc --> |
216 | * <!-- end-user-doc --> |
217 | * @generated |
218 | */ |
219 | private EClass deterministicEvaluationAspectEClass = null; |
220 | |
221 | /** |
222 | * <!-- begin-user-doc --> |
223 | * <!-- end-user-doc --> |
224 | * @generated |
225 | */ |
226 | private EClass objectiveEClass = null; |
227 | |
228 | /** |
229 | * <!-- begin-user-doc --> |
230 | * <!-- end-user-doc --> |
231 | * @generated |
232 | */ |
233 | private EClass constraintEClass = null; |
234 | |
235 | /** |
236 | * <!-- begin-user-doc --> |
237 | * <!-- end-user-doc --> |
238 | * @generated |
239 | */ |
240 | private EClass restrictionEClass = null; |
241 | |
242 | /** |
243 | * <!-- begin-user-doc --> |
244 | * <!-- end-user-doc --> |
245 | * @generated |
246 | */ |
247 | private EClass goalEClass = null; |
248 | |
249 | /** |
250 | * <!-- begin-user-doc --> |
251 | * <!-- end-user-doc --> |
252 | * @generated |
253 | */ |
254 | private EClass genericQMLContractEClass = null; |
255 | |
256 | /** |
257 | * <!-- begin-user-doc --> |
258 | * <!-- end-user-doc --> |
259 | * @generated |
260 | */ |
261 | private EEnum enumOperatorEEnum = null; |
262 | |
263 | /** |
264 | * <!-- begin-user-doc --> |
265 | * <!-- end-user-doc --> |
266 | * @generated |
267 | */ |
268 | private EEnum enumRangeValueTypeEEnum = null; |
269 | |
270 | /** |
271 | * Creates an instance of the model <b>Package</b>, registered with |
272 | * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package |
273 | * package URI value. |
274 | * <p>Note: the correct way to create the package is via the static |
275 | * factory method {@link #init init()}, which also performs |
276 | * initialization of the package, or returns the registered package, |
277 | * if one already exists. |
278 | * <!-- begin-user-doc --> |
279 | * <!-- end-user-doc --> |
280 | * @see org.eclipse.emf.ecore.EPackage.Registry |
281 | * @see de.uka.ipd.sdq.dsexplore.qml.contract.QMLContract.QMLContractPackage#eNS_URI |
282 | * @see #init() |
283 | * @generated |
284 | */ |
285 | private QMLContractPackageImpl() { |
286 | super(eNS_URI, QMLContractFactory.eINSTANCE); |
287 | } |
288 | |
289 | /** |
290 | * <!-- begin-user-doc --> |
291 | * <!-- end-user-doc --> |
292 | * @generated |
293 | */ |
294 | private static boolean isInited = false; |
295 | |
296 | /** |
297 | * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. |
298 | * |
299 | * <p>This method is used to initialize {@link QMLContractPackage#eINSTANCE} when that field is accessed. |
300 | * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. |
301 | * <!-- begin-user-doc --> |
302 | * <!-- end-user-doc --> |
303 | * @see #eNS_URI |
304 | * @see #createPackageContents() |
305 | * @see #initializePackageContents() |
306 | * @generated |
307 | */ |
308 | public static QMLContractPackage init() { |
309 | if (isInited) return (QMLContractPackage)EPackage.Registry.INSTANCE.getEPackage(QMLContractPackage.eNS_URI); |
310 | |
311 | // Obtain or create and register package |
312 | QMLContractPackageImpl theQMLContractPackage = (QMLContractPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof QMLContractPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new QMLContractPackageImpl()); |
313 | |
314 | isInited = true; |
315 | |
316 | // Initialize simple dependencies |
317 | CorePackage.eINSTANCE.eClass(); |
318 | UsagemodelPackage.eINSTANCE.eClass(); |
319 | RepositoryPackage.eINSTANCE.eClass(); |
320 | ProtocolPackage.eINSTANCE.eClass(); |
321 | ParameterPackage.eINSTANCE.eClass(); |
322 | SeffPackage.eINSTANCE.eClass(); |
323 | ResourcetypePackage.eINSTANCE.eClass(); |
324 | QosannotationsPackage.eINSTANCE.eClass(); |
325 | SystemPackage.eINSTANCE.eClass(); |
326 | ResourceenvironmentPackage.eINSTANCE.eClass(); |
327 | AllocationPackage.eINSTANCE.eClass(); |
328 | SubsystemPackage.eINSTANCE.eClass(); |
329 | |
330 | // Obtain or create and register interdependencies |
331 | QMLProfilePackageImpl theQMLProfilePackage = (QMLProfilePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(QMLProfilePackage.eNS_URI) instanceof QMLProfilePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(QMLProfilePackage.eNS_URI) : QMLProfilePackage.eINSTANCE); |
332 | QMLDeclarationsPackageImpl theQMLDeclarationsPackage = (QMLDeclarationsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(QMLDeclarationsPackage.eNS_URI) instanceof QMLDeclarationsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(QMLDeclarationsPackage.eNS_URI) : QMLDeclarationsPackage.eINSTANCE); |
333 | QMLContractTypePackageImpl theQMLContractTypePackage = (QMLContractTypePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(QMLContractTypePackage.eNS_URI) instanceof QMLContractTypePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(QMLContractTypePackage.eNS_URI) : QMLContractTypePackage.eINSTANCE); |
334 | |
335 | // Create package meta-data objects |
336 | theQMLContractPackage.createPackageContents(); |
337 | theQMLProfilePackage.createPackageContents(); |
338 | theQMLDeclarationsPackage.createPackageContents(); |
339 | theQMLContractTypePackage.createPackageContents(); |
340 | |
341 | // Initialize created meta-data |
342 | theQMLContractPackage.initializePackageContents(); |
343 | theQMLProfilePackage.initializePackageContents(); |
344 | theQMLDeclarationsPackage.initializePackageContents(); |
345 | theQMLContractTypePackage.initializePackageContents(); |
346 | |
347 | // Register package validator |
348 | EValidator.Registry.INSTANCE.put |
349 | (theQMLContractPackage, |
350 | new EValidator.Descriptor() { |
351 | public EValidator getEValidator() { |
352 | return QMLContractValidator.INSTANCE; |
353 | } |
354 | }); |
355 | |
356 | // Mark meta-data to indicate it can't be changed |
357 | theQMLContractPackage.freeze(); |
358 | |
359 | |
360 | // Update the registry and return the package |
361 | EPackage.Registry.INSTANCE.put(QMLContractPackage.eNS_URI, theQMLContractPackage); |
362 | return theQMLContractPackage; |
363 | } |
364 | |
365 | /** |
366 | * <!-- begin-user-doc --> |
367 | * <!-- end-user-doc --> |
368 | * @generated |
369 | */ |
370 | public EClass getSimpleQMLContract() { |
371 | return simpleQMLContractEClass; |
372 | } |
373 | |
374 | /** |
375 | * <!-- begin-user-doc --> |
376 | * <!-- end-user-doc --> |
377 | * @generated |
378 | */ |
379 | public EReference getSimpleQMLContract_Criteria() { |
380 | return (EReference)simpleQMLContractEClass.getEStructuralFeatures().get(0); |
381 | } |
382 | |
383 | /** |
384 | * <!-- begin-user-doc --> |
385 | * <!-- end-user-doc --> |
386 | * @generated |
387 | */ |
388 | public EReference getSimpleQMLContract_ContractType() { |
389 | return (EReference)simpleQMLContractEClass.getEStructuralFeatures().get(1); |
390 | } |
391 | |
392 | /** |
393 | * <!-- begin-user-doc --> |
394 | * <!-- end-user-doc --> |
395 | * @generated |
396 | */ |
397 | public EClass getCriterion() { |
398 | return criterionEClass; |
399 | } |
400 | |
401 | /** |
402 | * <!-- begin-user-doc --> |
403 | * <!-- end-user-doc --> |
404 | * @generated |
405 | */ |
406 | public EReference getCriterion_Dimension() { |
407 | return (EReference)criterionEClass.getEStructuralFeatures().get(0); |
408 | } |
409 | |
410 | /** |
411 | * <!-- begin-user-doc --> |
412 | * <!-- end-user-doc --> |
413 | * @generated |
414 | */ |
415 | public EReference getCriterion_Aspects() { |
416 | return (EReference)criterionEClass.getEStructuralFeatures().get(1); |
417 | } |
418 | |
419 | /** |
420 | * <!-- begin-user-doc --> |
421 | * <!-- end-user-doc --> |
422 | * @generated |
423 | */ |
424 | public EClass getEvaluationAspect() { |
425 | return evaluationAspectEClass; |
426 | } |
427 | |
428 | /** |
429 | * <!-- begin-user-doc --> |
430 | * <!-- end-user-doc --> |
431 | * @generated |
432 | */ |
433 | public EReference getEvaluationAspect_AspectRequirement() { |
434 | return (EReference)evaluationAspectEClass.getEStructuralFeatures().get(0); |
435 | } |
436 | |
437 | /** |
438 | * <!-- begin-user-doc --> |
439 | * <!-- end-user-doc --> |
440 | * @generated |
441 | */ |
442 | public EClass getAspectRequirement() { |
443 | return aspectRequirementEClass; |
444 | } |
445 | |
446 | /** |
447 | * <!-- begin-user-doc --> |
448 | * <!-- end-user-doc --> |
449 | * @generated |
450 | */ |
451 | public EReference getAspectRequirement_AspectRequirementLiteral() { |
452 | return (EReference)aspectRequirementEClass.getEStructuralFeatures().get(0); |
453 | } |
454 | |
455 | /** |
456 | * <!-- begin-user-doc --> |
457 | * <!-- end-user-doc --> |
458 | * @generated |
459 | */ |
460 | public EClass getValueLiteral() { |
461 | return valueLiteralEClass; |
462 | } |
463 | |
464 | /** |
465 | * <!-- begin-user-doc --> |
466 | * <!-- end-user-doc --> |
467 | * @generated |
468 | */ |
469 | public EClass getPercentile() { |
470 | return percentileEClass; |
471 | } |
472 | |
473 | /** |
474 | * <!-- begin-user-doc --> |
475 | * <!-- end-user-doc --> |
476 | * @generated |
477 | */ |
478 | public EAttribute getPercentile_Percentile() { |
479 | return (EAttribute)percentileEClass.getEStructuralFeatures().get(0); |
480 | } |
481 | |
482 | /** |
483 | * <!-- begin-user-doc --> |
484 | * <!-- end-user-doc --> |
485 | * @generated |
486 | */ |
487 | public EClass getPointEstimator() { |
488 | return pointEstimatorEClass; |
489 | } |
490 | |
491 | /** |
492 | * <!-- begin-user-doc --> |
493 | * <!-- end-user-doc --> |
494 | * @generated |
495 | */ |
496 | public EClass getStochasticEvaluationAspect() { |
497 | return stochasticEvaluationAspectEClass; |
498 | } |
499 | |
500 | /** |
501 | * <!-- begin-user-doc --> |
502 | * <!-- end-user-doc --> |
503 | * @generated |
504 | */ |
505 | public EClass getFrequency() { |
506 | return frequencyEClass; |
507 | } |
508 | |
509 | /** |
510 | * <!-- begin-user-doc --> |
511 | * <!-- end-user-doc --> |
512 | * @generated |
513 | */ |
514 | public EReference getFrequency_UpperLimit() { |
515 | return (EReference)frequencyEClass.getEStructuralFeatures().get(0); |
516 | } |
517 | |
518 | /** |
519 | * <!-- begin-user-doc --> |
520 | * <!-- end-user-doc --> |
521 | * @generated |
522 | */ |
523 | public EReference getFrequency_LowerLimit() { |
524 | return (EReference)frequencyEClass.getEStructuralFeatures().get(1); |
525 | } |
526 | |
527 | /** |
528 | * <!-- begin-user-doc --> |
529 | * <!-- end-user-doc --> |
530 | * @generated |
531 | */ |
532 | public EClass getRangeValue() { |
533 | return rangeValueEClass; |
534 | } |
535 | |
536 | /** |
537 | * <!-- begin-user-doc --> |
538 | * <!-- end-user-doc --> |
539 | * @generated |
540 | */ |
541 | public EReference getRangeValue_RangeLimitLiteral() { |
542 | return (EReference)rangeValueEClass.getEStructuralFeatures().get(0); |
543 | } |
544 | |
545 | /** |
546 | * <!-- begin-user-doc --> |
547 | * <!-- end-user-doc --> |
548 | * @generated |
549 | */ |
550 | public EAttribute getRangeValue_Type() { |
551 | return (EAttribute)rangeValueEClass.getEStructuralFeatures().get(1); |
552 | } |
553 | |
554 | /** |
555 | * <!-- begin-user-doc --> |
556 | * <!-- end-user-doc --> |
557 | * @generated |
558 | */ |
559 | public EClass getMean() { |
560 | return meanEClass; |
561 | } |
562 | |
563 | /** |
564 | * <!-- begin-user-doc --> |
565 | * <!-- end-user-doc --> |
566 | * @generated |
567 | */ |
568 | public EClass getVariance() { |
569 | return varianceEClass; |
570 | } |
571 | |
572 | /** |
573 | * <!-- begin-user-doc --> |
574 | * <!-- end-user-doc --> |
575 | * @generated |
576 | */ |
577 | public EClass getNumericLiteral() { |
578 | return numericLiteralEClass; |
579 | } |
580 | |
581 | /** |
582 | * <!-- begin-user-doc --> |
583 | * <!-- end-user-doc --> |
584 | * @generated |
585 | */ |
586 | public EAttribute getNumericLiteral_Value() { |
587 | return (EAttribute)numericLiteralEClass.getEStructuralFeatures().get(0); |
588 | } |
589 | |
590 | /** |
591 | * <!-- begin-user-doc --> |
592 | * <!-- end-user-doc --> |
593 | * @generated |
594 | */ |
595 | public EClass getEnumLiteral() { |
596 | return enumLiteralEClass; |
597 | } |
598 | |
599 | /** |
600 | * <!-- begin-user-doc --> |
601 | * <!-- end-user-doc --> |
602 | * @generated |
603 | */ |
604 | public EReference getEnumLiteral_Value() { |
605 | return (EReference)enumLiteralEClass.getEStructuralFeatures().get(0); |
606 | } |
607 | |
608 | /** |
609 | * <!-- begin-user-doc --> |
610 | * <!-- end-user-doc --> |
611 | * @generated |
612 | */ |
613 | public EClass getSetLiteral() { |
614 | return setLiteralEClass; |
615 | } |
616 | |
617 | /** |
618 | * <!-- begin-user-doc --> |
619 | * <!-- end-user-doc --> |
620 | * @generated |
621 | */ |
622 | public EReference getSetLiteral_Values() { |
623 | return (EReference)setLiteralEClass.getEStructuralFeatures().get(0); |
624 | } |
625 | |
626 | /** |
627 | * <!-- begin-user-doc --> |
628 | * <!-- end-user-doc --> |
629 | * @generated |
630 | */ |
631 | public EClass getRefinedQMLContract() { |
632 | return refinedQMLContractEClass; |
633 | } |
634 | |
635 | /** |
636 | * <!-- begin-user-doc --> |
637 | * <!-- end-user-doc --> |
638 | * @generated |
639 | */ |
640 | public EReference getRefinedQMLContract_RefinedBy() { |
641 | return (EReference)refinedQMLContractEClass.getEStructuralFeatures().get(0); |
642 | } |
643 | |
644 | /** |
645 | * <!-- begin-user-doc --> |
646 | * <!-- end-user-doc --> |
647 | * @generated |
648 | */ |
649 | public EReference getRefinedQMLContract_BaseContract() { |
650 | return (EReference)refinedQMLContractEClass.getEStructuralFeatures().get(1); |
651 | } |
652 | |
653 | /** |
654 | * <!-- begin-user-doc --> |
655 | * <!-- end-user-doc --> |
656 | * @generated |
657 | */ |
658 | public EClass getValue() { |
659 | return valueEClass; |
660 | } |
661 | |
662 | /** |
663 | * <!-- begin-user-doc --> |
664 | * <!-- end-user-doc --> |
665 | * @generated |
666 | */ |
667 | public EClass getDeterministicEvaluationAspect() { |
668 | return deterministicEvaluationAspectEClass; |
669 | } |
670 | |
671 | /** |
672 | * <!-- begin-user-doc --> |
673 | * <!-- end-user-doc --> |
674 | * @generated |
675 | */ |
676 | public EClass getObjective() { |
677 | return objectiveEClass; |
678 | } |
679 | |
680 | /** |
681 | * <!-- begin-user-doc --> |
682 | * <!-- end-user-doc --> |
683 | * @generated |
684 | */ |
685 | public EClass getConstraint() { |
686 | return constraintEClass; |
687 | } |
688 | |
689 | /** |
690 | * <!-- begin-user-doc --> |
691 | * <!-- end-user-doc --> |
692 | * @generated |
693 | */ |
694 | public EClass getRestriction() { |
695 | return restrictionEClass; |
696 | } |
697 | |
698 | /** |
699 | * <!-- begin-user-doc --> |
700 | * <!-- end-user-doc --> |
701 | * @generated |
702 | */ |
703 | public EAttribute getRestriction_Operator() { |
704 | return (EAttribute)restrictionEClass.getEStructuralFeatures().get(0); |
705 | } |
706 | |
707 | /** |
708 | * <!-- begin-user-doc --> |
709 | * <!-- end-user-doc --> |
710 | * @generated |
711 | */ |
712 | public EClass getGoal() { |
713 | return goalEClass; |
714 | } |
715 | |
716 | /** |
717 | * <!-- begin-user-doc --> |
718 | * <!-- end-user-doc --> |
719 | * @generated |
720 | */ |
721 | public EClass getGenericQMLContract() { |
722 | return genericQMLContractEClass; |
723 | } |
724 | |
725 | /** |
726 | * <!-- begin-user-doc --> |
727 | * <!-- end-user-doc --> |
728 | * @generated |
729 | */ |
730 | public EEnum getEnumOperator() { |
731 | return enumOperatorEEnum; |
732 | } |
733 | |
734 | /** |
735 | * <!-- begin-user-doc --> |
736 | * <!-- end-user-doc --> |
737 | * @generated |
738 | */ |
739 | public EEnum getEnumRangeValueType() { |
740 | return enumRangeValueTypeEEnum; |
741 | } |
742 | |
743 | /** |
744 | * <!-- begin-user-doc --> |
745 | * <!-- end-user-doc --> |
746 | * @generated |
747 | */ |
748 | public QMLContractFactory getQMLContractFactory() { |
749 | return (QMLContractFactory)getEFactoryInstance(); |
750 | } |
751 | |
752 | /** |
753 | * <!-- begin-user-doc --> |
754 | * <!-- end-user-doc --> |
755 | * @generated |
756 | */ |
757 | private boolean isCreated = false; |
758 | |
759 | /** |
760 | * Creates the meta-model objects for the package. This method is |
761 | * guarded to have no affect on any invocation but its first. |
762 | * <!-- begin-user-doc --> |
763 | * <!-- end-user-doc --> |
764 | * @generated |
765 | */ |
766 | public void createPackageContents() { |
767 | if (isCreated) return; |
768 | isCreated = true; |
769 | |
770 | // Create classes and their features |
771 | simpleQMLContractEClass = createEClass(SIMPLE_QML_CONTRACT); |
772 | createEReference(simpleQMLContractEClass, SIMPLE_QML_CONTRACT__CRITERIA); |
773 | createEReference(simpleQMLContractEClass, SIMPLE_QML_CONTRACT__CONTRACT_TYPE); |
774 | |
775 | criterionEClass = createEClass(CRITERION); |
776 | createEReference(criterionEClass, CRITERION__DIMENSION); |
777 | createEReference(criterionEClass, CRITERION__ASPECTS); |
778 | |
779 | evaluationAspectEClass = createEClass(EVALUATION_ASPECT); |
780 | createEReference(evaluationAspectEClass, EVALUATION_ASPECT__ASPECT_REQUIREMENT); |
781 | |
782 | aspectRequirementEClass = createEClass(ASPECT_REQUIREMENT); |
783 | createEReference(aspectRequirementEClass, ASPECT_REQUIREMENT__ASPECT_REQUIREMENT_LITERAL); |
784 | |
785 | valueLiteralEClass = createEClass(VALUE_LITERAL); |
786 | |
787 | percentileEClass = createEClass(PERCENTILE); |
788 | createEAttribute(percentileEClass, PERCENTILE__PERCENTILE); |
789 | |
790 | pointEstimatorEClass = createEClass(POINT_ESTIMATOR); |
791 | |
792 | stochasticEvaluationAspectEClass = createEClass(STOCHASTIC_EVALUATION_ASPECT); |
793 | |
794 | frequencyEClass = createEClass(FREQUENCY); |
795 | createEReference(frequencyEClass, FREQUENCY__UPPER_LIMIT); |
796 | createEReference(frequencyEClass, FREQUENCY__LOWER_LIMIT); |
797 | |
798 | rangeValueEClass = createEClass(RANGE_VALUE); |
799 | createEReference(rangeValueEClass, RANGE_VALUE__RANGE_LIMIT_LITERAL); |
800 | createEAttribute(rangeValueEClass, RANGE_VALUE__TYPE); |
801 | |
802 | meanEClass = createEClass(MEAN); |
803 | |
804 | varianceEClass = createEClass(VARIANCE); |
805 | |
806 | numericLiteralEClass = createEClass(NUMERIC_LITERAL); |
807 | createEAttribute(numericLiteralEClass, NUMERIC_LITERAL__VALUE); |
808 | |
809 | enumLiteralEClass = createEClass(ENUM_LITERAL); |
810 | createEReference(enumLiteralEClass, ENUM_LITERAL__VALUE); |
811 | |
812 | setLiteralEClass = createEClass(SET_LITERAL); |
813 | createEReference(setLiteralEClass, SET_LITERAL__VALUES); |
814 | |
815 | refinedQMLContractEClass = createEClass(REFINED_QML_CONTRACT); |
816 | createEReference(refinedQMLContractEClass, REFINED_QML_CONTRACT__REFINED_BY); |
817 | createEReference(refinedQMLContractEClass, REFINED_QML_CONTRACT__BASE_CONTRACT); |
818 | |
819 | valueEClass = createEClass(VALUE); |
820 | |
821 | deterministicEvaluationAspectEClass = createEClass(DETERMINISTIC_EVALUATION_ASPECT); |
822 | |
823 | objectiveEClass = createEClass(OBJECTIVE); |
824 | |
825 | constraintEClass = createEClass(CONSTRAINT); |
826 | |
827 | restrictionEClass = createEClass(RESTRICTION); |
828 | createEAttribute(restrictionEClass, RESTRICTION__OPERATOR); |
829 | |
830 | goalEClass = createEClass(GOAL); |
831 | |
832 | genericQMLContractEClass = createEClass(GENERIC_QML_CONTRACT); |
833 | |
834 | // Create enums |
835 | enumOperatorEEnum = createEEnum(ENUM_OPERATOR); |
836 | enumRangeValueTypeEEnum = createEEnum(ENUM_RANGE_VALUE_TYPE); |
837 | } |
838 | |
839 | /** |
840 | * <!-- begin-user-doc --> |
841 | * <!-- end-user-doc --> |
842 | * @generated |
843 | */ |
844 | private boolean isInitialized = false; |
845 | |
846 | /** |
847 | * Complete the initialization of the package and its meta-model. This |
848 | * method is guarded to have no affect on any invocation but its first. |
849 | * <!-- begin-user-doc --> |
850 | * <!-- end-user-doc --> |
851 | * @generated |
852 | */ |
853 | public void initializePackageContents() { |
854 | if (isInitialized) return; |
855 | isInitialized = true; |
856 | |
857 | // Initialize package |
858 | setName(eNAME); |
859 | setNsPrefix(eNS_PREFIX); |
860 | setNsURI(eNS_URI); |
861 | |
862 | // Obtain other dependent packages |
863 | QMLContractTypePackage theQMLContractTypePackage = (QMLContractTypePackage)EPackage.Registry.INSTANCE.getEPackage(QMLContractTypePackage.eNS_URI); |
864 | IdentifierPackage theIdentifierPackage = (IdentifierPackage)EPackage.Registry.INSTANCE.getEPackage(IdentifierPackage.eNS_URI); |
865 | QMLDeclarationsPackage theQMLDeclarationsPackage = (QMLDeclarationsPackage)EPackage.Registry.INSTANCE.getEPackage(QMLDeclarationsPackage.eNS_URI); |
866 | |
867 | // Create type parameters |
868 | |
869 | // Set bounds for type parameters |
870 | |
871 | // Add supertypes to classes |
872 | simpleQMLContractEClass.getESuperTypes().add(this.getGenericQMLContract()); |
873 | criterionEClass.getESuperTypes().add(theIdentifierPackage.getIdentifier()); |
874 | evaluationAspectEClass.getESuperTypes().add(theIdentifierPackage.getIdentifier()); |
875 | aspectRequirementEClass.getESuperTypes().add(theIdentifierPackage.getIdentifier()); |
876 | valueLiteralEClass.getESuperTypes().add(theIdentifierPackage.getIdentifier()); |
877 | percentileEClass.getESuperTypes().add(this.getPointEstimator()); |
878 | pointEstimatorEClass.getESuperTypes().add(this.getStochasticEvaluationAspect()); |
879 | stochasticEvaluationAspectEClass.getESuperTypes().add(this.getEvaluationAspect()); |
880 | frequencyEClass.getESuperTypes().add(this.getStochasticEvaluationAspect()); |
881 | rangeValueEClass.getESuperTypes().add(theIdentifierPackage.getIdentifier()); |
882 | meanEClass.getESuperTypes().add(this.getPointEstimator()); |
883 | varianceEClass.getESuperTypes().add(this.getPointEstimator()); |
884 | numericLiteralEClass.getESuperTypes().add(this.getValueLiteral()); |
885 | enumLiteralEClass.getESuperTypes().add(this.getValueLiteral()); |
886 | setLiteralEClass.getESuperTypes().add(this.getValueLiteral()); |
887 | refinedQMLContractEClass.getESuperTypes().add(this.getGenericQMLContract()); |
888 | valueEClass.getESuperTypes().add(this.getDeterministicEvaluationAspect()); |
889 | deterministicEvaluationAspectEClass.getESuperTypes().add(this.getEvaluationAspect()); |
890 | objectiveEClass.getESuperTypes().add(this.getCriterion()); |
891 | constraintEClass.getESuperTypes().add(this.getCriterion()); |
892 | restrictionEClass.getESuperTypes().add(this.getAspectRequirement()); |
893 | goalEClass.getESuperTypes().add(this.getAspectRequirement()); |
894 | genericQMLContractEClass.getESuperTypes().add(theQMLDeclarationsPackage.getQMLDeclaration()); |
895 | |
896 | // Initialize classes and features; add operations and parameters |
897 | initEClass(simpleQMLContractEClass, SimpleQMLContract.class, "SimpleQMLContract", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
898 | initEReference(getSimpleQMLContract_Criteria(), this.getCriterion(), null, "criteria", null, 0, -1, SimpleQMLContract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
899 | initEReference(getSimpleQMLContract_ContractType(), theQMLContractTypePackage.getQMLContractType(), null, "contractType", null, 1, 1, SimpleQMLContract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
900 | |
901 | EOperation op = addEOperation(simpleQMLContractEClass, ecorePackage.getEBoolean(), "all_DIMENSIONs_must_be_from_same_CONTRACTTYPE", 0, 1, IS_UNIQUE, IS_ORDERED); |
902 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
903 | EGenericType g1 = createEGenericType(ecorePackage.getEMap()); |
904 | EGenericType g2 = createEGenericType(ecorePackage.getEJavaObject()); |
905 | g1.getETypeArguments().add(g2); |
906 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
907 | g1.getETypeArguments().add(g2); |
908 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
909 | |
910 | initEClass(criterionEClass, Criterion.class, "Criterion", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
911 | initEReference(getCriterion_Dimension(), theQMLContractTypePackage.getDimension(), null, "dimension", null, 1, 1, Criterion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
912 | initEReference(getCriterion_Aspects(), this.getEvaluationAspect(), null, "aspects", null, 1, -1, Criterion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
913 | |
914 | op = addEOperation(criterionEClass, ecorePackage.getEBoolean(), "Only_CONSTRAINTS_have_RESTRICTIONS", 0, 1, IS_UNIQUE, IS_ORDERED); |
915 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
916 | g1 = createEGenericType(ecorePackage.getEMap()); |
917 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
918 | g1.getETypeArguments().add(g2); |
919 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
920 | g1.getETypeArguments().add(g2); |
921 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
922 | |
923 | op = addEOperation(criterionEClass, ecorePackage.getEBoolean(), "FREQUENCY_only_possible_if_DIMENSION_is_ordered", 0, 1, IS_UNIQUE, IS_ORDERED); |
924 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
925 | g1 = createEGenericType(ecorePackage.getEMap()); |
926 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
927 | g1.getETypeArguments().add(g2); |
928 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
929 | g1.getETypeArguments().add(g2); |
930 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
931 | |
932 | op = addEOperation(criterionEClass, ecorePackage.getEBoolean(), "POINTESTIMATOR_only_for_numeric_dimensions", 0, 1, IS_UNIQUE, IS_ORDERED); |
933 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
934 | g1 = createEGenericType(ecorePackage.getEMap()); |
935 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
936 | g1.getETypeArguments().add(g2); |
937 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
938 | g1.getETypeArguments().add(g2); |
939 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
940 | |
941 | op = addEOperation(criterionEClass, ecorePackage.getEBoolean(), "Only_OBJECTIVES_have_GOALS", 0, 1, IS_UNIQUE, IS_ORDERED); |
942 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
943 | g1 = createEGenericType(ecorePackage.getEMap()); |
944 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
945 | g1.getETypeArguments().add(g2); |
946 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
947 | g1.getETypeArguments().add(g2); |
948 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
949 | |
950 | initEClass(evaluationAspectEClass, EvaluationAspect.class, "EvaluationAspect", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
951 | initEReference(getEvaluationAspect_AspectRequirement(), this.getAspectRequirement(), null, "aspectRequirement", null, 0, 1, EvaluationAspect.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
952 | |
953 | op = addEOperation(evaluationAspectEClass, ecorePackage.getEBoolean(), "FREQUENCY_LIMIT_must_be_NUMERIC", 0, 1, IS_UNIQUE, IS_ORDERED); |
954 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
955 | g1 = createEGenericType(ecorePackage.getEMap()); |
956 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
957 | g1.getETypeArguments().add(g2); |
958 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
959 | g1.getETypeArguments().add(g2); |
960 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
961 | |
962 | op = addEOperation(evaluationAspectEClass, ecorePackage.getEBoolean(), "FREQUENCY_LIMIT_must_be_between_0_and_100", 0, 1, IS_UNIQUE, IS_ORDERED); |
963 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
964 | g1 = createEGenericType(ecorePackage.getEMap()); |
965 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
966 | g1.getETypeArguments().add(g2); |
967 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
968 | g1.getETypeArguments().add(g2); |
969 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
970 | |
971 | initEClass(aspectRequirementEClass, AspectRequirement.class, "AspectRequirement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
972 | initEReference(getAspectRequirement_AspectRequirementLiteral(), this.getValueLiteral(), null, "aspectRequirementLiteral", null, 1, 1, AspectRequirement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
973 | |
974 | initEClass(valueLiteralEClass, ValueLiteral.class, "ValueLiteral", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
975 | |
976 | initEClass(percentileEClass, Percentile.class, "Percentile", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
977 | initEAttribute(getPercentile_Percentile(), ecorePackage.getEDouble(), "percentile", null, 1, 1, Percentile.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
978 | |
979 | op = addEOperation(percentileEClass, ecorePackage.getEBoolean(), "PERCENTILE_between_0_and_100", 0, 1, IS_UNIQUE, IS_ORDERED); |
980 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
981 | g1 = createEGenericType(ecorePackage.getEMap()); |
982 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
983 | g1.getETypeArguments().add(g2); |
984 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
985 | g1.getETypeArguments().add(g2); |
986 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
987 | |
988 | initEClass(pointEstimatorEClass, PointEstimator.class, "PointEstimator", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
989 | |
990 | initEClass(stochasticEvaluationAspectEClass, StochasticEvaluationAspect.class, "StochasticEvaluationAspect", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
991 | |
992 | initEClass(frequencyEClass, Frequency.class, "Frequency", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
993 | initEReference(getFrequency_UpperLimit(), this.getRangeValue(), null, "upperLimit", null, 0, 1, Frequency.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
994 | initEReference(getFrequency_LowerLimit(), this.getRangeValue(), null, "lowerLimit", null, 0, 1, Frequency.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
995 | |
996 | op = addEOperation(frequencyEClass, ecorePackage.getEBoolean(), "range_of_FREQUENCY_must_have_UPPERLIMIT_or_LOWERLIMIT", 0, 1, IS_UNIQUE, IS_ORDERED); |
997 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
998 | g1 = createEGenericType(ecorePackage.getEMap()); |
999 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
1000 | g1.getETypeArguments().add(g2); |
1001 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
1002 | g1.getETypeArguments().add(g2); |
1003 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
1004 | |
1005 | initEClass(rangeValueEClass, RangeValue.class, "RangeValue", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1006 | initEReference(getRangeValue_RangeLimitLiteral(), this.getValueLiteral(), null, "rangeLimitLiteral", null, 1, 1, RangeValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
1007 | initEAttribute(getRangeValue_Type(), this.getEnumRangeValueType(), "type", null, 1, 1, RangeValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
1008 | |
1009 | initEClass(meanEClass, Mean.class, "Mean", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1010 | |
1011 | initEClass(varianceEClass, Variance.class, "Variance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1012 | |
1013 | initEClass(numericLiteralEClass, NumericLiteral.class, "NumericLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1014 | initEAttribute(getNumericLiteral_Value(), ecorePackage.getEDouble(), "value", null, 1, 1, NumericLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
1015 | |
1016 | initEClass(enumLiteralEClass, EnumLiteral.class, "EnumLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1017 | initEReference(getEnumLiteral_Value(), theQMLContractTypePackage.getElement(), null, "value", null, 1, 1, EnumLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
1018 | |
1019 | initEClass(setLiteralEClass, SetLiteral.class, "SetLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1020 | initEReference(getSetLiteral_Values(), theQMLContractTypePackage.getElement(), null, "values", null, 1, -1, SetLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
1021 | |
1022 | initEClass(refinedQMLContractEClass, RefinedQMLContract.class, "RefinedQMLContract", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1023 | initEReference(getRefinedQMLContract_RefinedBy(), this.getCriterion(), null, "refinedBy", null, 0, -1, RefinedQMLContract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
1024 | initEReference(getRefinedQMLContract_BaseContract(), this.getGenericQMLContract(), null, "baseContract", null, 1, 1, RefinedQMLContract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
1025 | |
1026 | op = addEOperation(refinedQMLContractEClass, ecorePackage.getEBoolean(), "contract_cannot_refine_itself", 0, 1, IS_UNIQUE, IS_ORDERED); |
1027 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
1028 | g1 = createEGenericType(ecorePackage.getEMap()); |
1029 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
1030 | g1.getETypeArguments().add(g2); |
1031 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
1032 | g1.getETypeArguments().add(g2); |
1033 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
1034 | |
1035 | initEClass(valueEClass, Value.class, "Value", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1036 | |
1037 | initEClass(deterministicEvaluationAspectEClass, DeterministicEvaluationAspect.class, "DeterministicEvaluationAspect", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1038 | |
1039 | initEClass(objectiveEClass, Objective.class, "Objective", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1040 | |
1041 | initEClass(constraintEClass, Constraint.class, "Constraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1042 | |
1043 | op = addEOperation(constraintEClass, ecorePackage.getEBoolean(), "All_ASPECTS_of_CONSTRAINTS_have_RESTRICTIONS", 0, 1, IS_UNIQUE, IS_ORDERED); |
1044 | addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED); |
1045 | g1 = createEGenericType(ecorePackage.getEMap()); |
1046 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
1047 | g1.getETypeArguments().add(g2); |
1048 | g2 = createEGenericType(ecorePackage.getEJavaObject()); |
1049 | g1.getETypeArguments().add(g2); |
1050 | addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED); |
1051 | |
1052 | initEClass(restrictionEClass, Restriction.class, "Restriction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1053 | initEAttribute(getRestriction_Operator(), this.getEnumOperator(), "operator", null, 1, 1, Restriction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
1054 | |
1055 | initEClass(goalEClass, Goal.class, "Goal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1056 | |
1057 | initEClass(genericQMLContractEClass, GenericQMLContract.class, "GenericQMLContract", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
1058 | |
1059 | // Initialize enums and add enum literals |
1060 | initEEnum(enumOperatorEEnum, EnumOperator.class, "EnumOperator"); |
1061 | addEEnumLiteral(enumOperatorEEnum, EnumOperator.LESS); |
1062 | addEEnumLiteral(enumOperatorEEnum, EnumOperator.GREATER); |
1063 | addEEnumLiteral(enumOperatorEEnum, EnumOperator.EQUAL); |
1064 | addEEnumLiteral(enumOperatorEEnum, EnumOperator.LESS_OR_EQUAL); |
1065 | addEEnumLiteral(enumOperatorEEnum, EnumOperator.GREATER_OR_EQUAL); |
1066 | |
1067 | initEEnum(enumRangeValueTypeEEnum, EnumRangeValueType.class, "EnumRangeValueType"); |
1068 | addEEnumLiteral(enumRangeValueTypeEEnum, EnumRangeValueType.INCLUSIVE); |
1069 | addEEnumLiteral(enumRangeValueTypeEEnum, EnumRangeValueType.EXCLUSIVE); |
1070 | |
1071 | // Create resource |
1072 | createResource(eNS_URI); |
1073 | } |
1074 | |
1075 | } //QMLContractPackageImpl |