1 | /** |
2 | * <copyright> |
3 | * </copyright> |
4 | * |
5 | * $Id$ |
6 | */ |
7 | package de.uka.ipd.sdq.pcm.designdecision.QualityProperties.impl; |
8 | |
9 | import de.uka.ipd.sdq.featuremodel.featuremodelPackage; |
10 | |
11 | import de.uka.ipd.sdq.pcm.cost.costPackage; |
12 | |
13 | import de.uka.ipd.sdq.pcm.designdecision.GDoF.GDoFPackage; |
14 | |
15 | import de.uka.ipd.sdq.pcm.designdecision.GDoF.impl.GDoFPackageImpl; |
16 | |
17 | import de.uka.ipd.sdq.pcm.designdecision.QualityProperties.ConfidenceInterval; |
18 | import de.uka.ipd.sdq.pcm.designdecision.QualityProperties.DoubleQualityProperty; |
19 | import de.uka.ipd.sdq.pcm.designdecision.QualityProperties.ElementQualityProperty; |
20 | import de.uka.ipd.sdq.pcm.designdecision.QualityProperties.IntegerQualityProperty; |
21 | import de.uka.ipd.sdq.pcm.designdecision.QualityProperties.NumericQualityProperty; |
22 | import de.uka.ipd.sdq.pcm.designdecision.QualityProperties.QualityPrediction; |
23 | import de.uka.ipd.sdq.pcm.designdecision.QualityProperties.QualityPropertiesFactory; |
24 | import de.uka.ipd.sdq.pcm.designdecision.QualityProperties.QualityPropertiesPackage; |
25 | import de.uka.ipd.sdq.pcm.designdecision.QualityProperties.QualityProperty; |
26 | |
27 | import de.uka.ipd.sdq.pcm.designdecision.designdecisionPackage; |
28 | |
29 | import de.uka.ipd.sdq.pcm.designdecision.impl.designdecisionPackageImpl; |
30 | |
31 | import de.uka.ipd.sdq.pcm.resourcerepository.impl.resourcerepositoryPackageImpl; |
32 | |
33 | import de.uka.ipd.sdq.pcm.resourcerepository.resourcerepositoryPackage; |
34 | |
35 | import de.uka.ipd.sdq.pcm.resultdecorator.ResultdecoratorPackage; |
36 | |
37 | import org.eclipse.emf.ecore.EAttribute; |
38 | import org.eclipse.emf.ecore.EClass; |
39 | import org.eclipse.emf.ecore.EOperation; |
40 | import org.eclipse.emf.ecore.EPackage; |
41 | import org.eclipse.emf.ecore.EReference; |
42 | import org.eclipse.emf.ecore.EcorePackage; |
43 | |
44 | import org.eclipse.emf.ecore.impl.EPackageImpl; |
45 | |
46 | /** |
47 | * <!-- begin-user-doc --> |
48 | * An implementation of the model <b>Package</b>. |
49 | * <!-- end-user-doc --> |
50 | * @generated |
51 | */ |
52 | public class QualityPropertiesPackageImpl extends EPackageImpl implements QualityPropertiesPackage { |
53 | /** |
54 | * <!-- begin-user-doc --> |
55 | * <!-- end-user-doc --> |
56 | * @generated |
57 | */ |
58 | private EClass numericQualityPropertyEClass = null; |
59 | |
60 | /** |
61 | * <!-- begin-user-doc --> |
62 | * <!-- end-user-doc --> |
63 | * @generated |
64 | */ |
65 | private EClass confidenceIntervalEClass = null; |
66 | |
67 | /** |
68 | * <!-- begin-user-doc --> |
69 | * <!-- end-user-doc --> |
70 | * @generated |
71 | */ |
72 | private EClass elementQualityPropertyEClass = null; |
73 | |
74 | /** |
75 | * <!-- begin-user-doc --> |
76 | * <!-- end-user-doc --> |
77 | * @generated |
78 | */ |
79 | private EClass integerQualityPropertyEClass = null; |
80 | |
81 | /** |
82 | * <!-- begin-user-doc --> |
83 | * <!-- end-user-doc --> |
84 | * @generated |
85 | */ |
86 | private EClass doubleQualityPropertyEClass = null; |
87 | |
88 | /** |
89 | * <!-- begin-user-doc --> |
90 | * <!-- end-user-doc --> |
91 | * @generated |
92 | */ |
93 | private EClass qualityPredictionEClass = null; |
94 | |
95 | /** |
96 | * <!-- begin-user-doc --> |
97 | * <!-- end-user-doc --> |
98 | * @generated |
99 | */ |
100 | private EClass qualityPropertyEClass = null; |
101 | |
102 | /** |
103 | * Creates an instance of the model <b>Package</b>, registered with |
104 | * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package |
105 | * package URI value. |
106 | * <p>Note: the correct way to create the package is via the static |
107 | * factory method {@link #init init()}, which also performs |
108 | * initialization of the package, or returns the registered package, |
109 | * if one already exists. |
110 | * <!-- begin-user-doc --> |
111 | * <!-- end-user-doc --> |
112 | * @see org.eclipse.emf.ecore.EPackage.Registry |
113 | * @see de.uka.ipd.sdq.pcm.designdecision.QualityProperties.QualityPropertiesPackage#eNS_URI |
114 | * @see #init() |
115 | * @generated |
116 | */ |
117 | private QualityPropertiesPackageImpl() { |
118 | super(eNS_URI, QualityPropertiesFactory.eINSTANCE); |
119 | } |
120 | |
121 | /** |
122 | * <!-- begin-user-doc --> |
123 | * <!-- end-user-doc --> |
124 | * @generated |
125 | */ |
126 | private static boolean isInited = false; |
127 | |
128 | /** |
129 | * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. |
130 | * |
131 | * <p>This method is used to initialize {@link QualityPropertiesPackage#eINSTANCE} when that field is accessed. |
132 | * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. |
133 | * <!-- begin-user-doc --> |
134 | * <!-- end-user-doc --> |
135 | * @see #eNS_URI |
136 | * @see #createPackageContents() |
137 | * @see #initializePackageContents() |
138 | * @generated |
139 | */ |
140 | public static QualityPropertiesPackage init() { |
141 | if (isInited) return (QualityPropertiesPackage)EPackage.Registry.INSTANCE.getEPackage(QualityPropertiesPackage.eNS_URI); |
142 | |
143 | // Obtain or create and register package |
144 | QualityPropertiesPackageImpl theQualityPropertiesPackage = (QualityPropertiesPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof QualityPropertiesPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new QualityPropertiesPackageImpl()); |
145 | |
146 | isInited = true; |
147 | |
148 | // Initialize simple dependencies |
149 | costPackage.eINSTANCE.eClass(); |
150 | featuremodelPackage.eINSTANCE.eClass(); |
151 | ResultdecoratorPackage.eINSTANCE.eClass(); |
152 | |
153 | // Obtain or create and register interdependencies |
154 | designdecisionPackageImpl thedesigndecisionPackage = (designdecisionPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(designdecisionPackage.eNS_URI) instanceof designdecisionPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(designdecisionPackage.eNS_URI) : designdecisionPackage.eINSTANCE); |
155 | GDoFPackageImpl theGDoFPackage = (GDoFPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(GDoFPackage.eNS_URI) instanceof GDoFPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(GDoFPackage.eNS_URI) : GDoFPackage.eINSTANCE); |
156 | resourcerepositoryPackageImpl theresourcerepositoryPackage = (resourcerepositoryPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(resourcerepositoryPackage.eNS_URI) instanceof resourcerepositoryPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(resourcerepositoryPackage.eNS_URI) : resourcerepositoryPackage.eINSTANCE); |
157 | |
158 | // Create package meta-data objects |
159 | theQualityPropertiesPackage.createPackageContents(); |
160 | thedesigndecisionPackage.createPackageContents(); |
161 | theGDoFPackage.createPackageContents(); |
162 | theresourcerepositoryPackage.createPackageContents(); |
163 | |
164 | // Initialize created meta-data |
165 | theQualityPropertiesPackage.initializePackageContents(); |
166 | thedesigndecisionPackage.initializePackageContents(); |
167 | theGDoFPackage.initializePackageContents(); |
168 | theresourcerepositoryPackage.initializePackageContents(); |
169 | |
170 | // Mark meta-data to indicate it can't be changed |
171 | theQualityPropertiesPackage.freeze(); |
172 | |
173 | |
174 | // Update the registry and return the package |
175 | EPackage.Registry.INSTANCE.put(QualityPropertiesPackage.eNS_URI, theQualityPropertiesPackage); |
176 | return theQualityPropertiesPackage; |
177 | } |
178 | |
179 | /** |
180 | * <!-- begin-user-doc --> |
181 | * <!-- end-user-doc --> |
182 | * @generated |
183 | */ |
184 | public EClass getNumericQualityProperty() { |
185 | return numericQualityPropertyEClass; |
186 | } |
187 | |
188 | /** |
189 | * <!-- begin-user-doc --> |
190 | * <!-- end-user-doc --> |
191 | * @generated |
192 | */ |
193 | public EReference getNumericQualityProperty_ResultDecoratorRepository() { |
194 | return (EReference)numericQualityPropertyEClass.getEStructuralFeatures().get(0); |
195 | } |
196 | |
197 | /** |
198 | * <!-- begin-user-doc --> |
199 | * <!-- end-user-doc --> |
200 | * @generated |
201 | */ |
202 | public EReference getNumericQualityProperty_ConfidenceInterval() { |
203 | return (EReference)numericQualityPropertyEClass.getEStructuralFeatures().get(1); |
204 | } |
205 | |
206 | /** |
207 | * <!-- begin-user-doc --> |
208 | * <!-- end-user-doc --> |
209 | * @generated |
210 | */ |
211 | public EClass getConfidenceInterval() { |
212 | return confidenceIntervalEClass; |
213 | } |
214 | |
215 | /** |
216 | * <!-- begin-user-doc --> |
217 | * <!-- end-user-doc --> |
218 | * @generated |
219 | */ |
220 | public EAttribute getConfidenceInterval_ConfidenceLevel() { |
221 | return (EAttribute)confidenceIntervalEClass.getEStructuralFeatures().get(0); |
222 | } |
223 | |
224 | /** |
225 | * <!-- begin-user-doc --> |
226 | * <!-- end-user-doc --> |
227 | * @generated |
228 | */ |
229 | public EAttribute getConfidenceInterval_Mean() { |
230 | return (EAttribute)confidenceIntervalEClass.getEStructuralFeatures().get(1); |
231 | } |
232 | |
233 | /** |
234 | * <!-- begin-user-doc --> |
235 | * <!-- end-user-doc --> |
236 | * @generated |
237 | */ |
238 | public EAttribute getConfidenceInterval_UpperBound() { |
239 | return (EAttribute)confidenceIntervalEClass.getEStructuralFeatures().get(2); |
240 | } |
241 | |
242 | /** |
243 | * <!-- begin-user-doc --> |
244 | * <!-- end-user-doc --> |
245 | * @generated |
246 | */ |
247 | public EAttribute getConfidenceInterval_LowerBound() { |
248 | return (EAttribute)confidenceIntervalEClass.getEStructuralFeatures().get(3); |
249 | } |
250 | |
251 | /** |
252 | * <!-- begin-user-doc --> |
253 | * <!-- end-user-doc --> |
254 | * @generated |
255 | */ |
256 | public EClass getElementQualityProperty() { |
257 | return elementQualityPropertyEClass; |
258 | } |
259 | |
260 | /** |
261 | * <!-- begin-user-doc --> |
262 | * <!-- end-user-doc --> |
263 | * @generated |
264 | */ |
265 | public EClass getIntegerQualityProperty() { |
266 | return integerQualityPropertyEClass; |
267 | } |
268 | |
269 | /** |
270 | * <!-- begin-user-doc --> |
271 | * <!-- end-user-doc --> |
272 | * @generated |
273 | */ |
274 | public EAttribute getIntegerQualityProperty_Value() { |
275 | return (EAttribute)integerQualityPropertyEClass.getEStructuralFeatures().get(0); |
276 | } |
277 | |
278 | /** |
279 | * <!-- begin-user-doc --> |
280 | * <!-- end-user-doc --> |
281 | * @generated |
282 | */ |
283 | public EClass getDoubleQualityProperty() { |
284 | return doubleQualityPropertyEClass; |
285 | } |
286 | |
287 | /** |
288 | * <!-- begin-user-doc --> |
289 | * <!-- end-user-doc --> |
290 | * @generated |
291 | */ |
292 | public EAttribute getDoubleQualityProperty_Value() { |
293 | return (EAttribute)doubleQualityPropertyEClass.getEStructuralFeatures().get(0); |
294 | } |
295 | |
296 | /** |
297 | * <!-- begin-user-doc --> |
298 | * <!-- end-user-doc --> |
299 | * @generated |
300 | */ |
301 | public EClass getQualityPrediction() { |
302 | return qualityPredictionEClass; |
303 | } |
304 | |
305 | /** |
306 | * <!-- begin-user-doc --> |
307 | * <!-- end-user-doc --> |
308 | * @generated |
309 | */ |
310 | public EClass getQualityProperty() { |
311 | return qualityPropertyEClass; |
312 | } |
313 | |
314 | /** |
315 | * <!-- begin-user-doc --> |
316 | * <!-- end-user-doc --> |
317 | * @generated |
318 | */ |
319 | public EAttribute getQualityProperty_QualityValue() { |
320 | return (EAttribute)qualityPropertyEClass.getEStructuralFeatures().get(0); |
321 | } |
322 | |
323 | /** |
324 | * <!-- begin-user-doc --> |
325 | * <!-- end-user-doc --> |
326 | * @generated |
327 | */ |
328 | public QualityPropertiesFactory getQualityPropertiesFactory() { |
329 | return (QualityPropertiesFactory)getEFactoryInstance(); |
330 | } |
331 | |
332 | /** |
333 | * <!-- begin-user-doc --> |
334 | * <!-- end-user-doc --> |
335 | * @generated |
336 | */ |
337 | private boolean isCreated = false; |
338 | |
339 | /** |
340 | * Creates the meta-model objects for the package. This method is |
341 | * guarded to have no affect on any invocation but its first. |
342 | * <!-- begin-user-doc --> |
343 | * <!-- end-user-doc --> |
344 | * @generated |
345 | */ |
346 | public void createPackageContents() { |
347 | if (isCreated) return; |
348 | isCreated = true; |
349 | |
350 | // Create classes and their features |
351 | numericQualityPropertyEClass = createEClass(NUMERIC_QUALITY_PROPERTY); |
352 | createEReference(numericQualityPropertyEClass, NUMERIC_QUALITY_PROPERTY__RESULT_DECORATOR_REPOSITORY); |
353 | createEReference(numericQualityPropertyEClass, NUMERIC_QUALITY_PROPERTY__CONFIDENCE_INTERVAL); |
354 | |
355 | confidenceIntervalEClass = createEClass(CONFIDENCE_INTERVAL); |
356 | createEAttribute(confidenceIntervalEClass, CONFIDENCE_INTERVAL__CONFIDENCE_LEVEL); |
357 | createEAttribute(confidenceIntervalEClass, CONFIDENCE_INTERVAL__MEAN); |
358 | createEAttribute(confidenceIntervalEClass, CONFIDENCE_INTERVAL__UPPER_BOUND); |
359 | createEAttribute(confidenceIntervalEClass, CONFIDENCE_INTERVAL__LOWER_BOUND); |
360 | |
361 | elementQualityPropertyEClass = createEClass(ELEMENT_QUALITY_PROPERTY); |
362 | |
363 | integerQualityPropertyEClass = createEClass(INTEGER_QUALITY_PROPERTY); |
364 | createEAttribute(integerQualityPropertyEClass, INTEGER_QUALITY_PROPERTY__VALUE); |
365 | |
366 | doubleQualityPropertyEClass = createEClass(DOUBLE_QUALITY_PROPERTY); |
367 | createEAttribute(doubleQualityPropertyEClass, DOUBLE_QUALITY_PROPERTY__VALUE); |
368 | |
369 | qualityPredictionEClass = createEClass(QUALITY_PREDICTION); |
370 | |
371 | qualityPropertyEClass = createEClass(QUALITY_PROPERTY); |
372 | createEAttribute(qualityPropertyEClass, QUALITY_PROPERTY__QUALITY_VALUE); |
373 | } |
374 | |
375 | /** |
376 | * <!-- begin-user-doc --> |
377 | * <!-- end-user-doc --> |
378 | * @generated |
379 | */ |
380 | private boolean isInitialized = false; |
381 | |
382 | /** |
383 | * Complete the initialization of the package and its meta-model. This |
384 | * method is guarded to have no affect on any invocation but its first. |
385 | * <!-- begin-user-doc --> |
386 | * <!-- end-user-doc --> |
387 | * @generated |
388 | */ |
389 | public void initializePackageContents() { |
390 | if (isInitialized) return; |
391 | isInitialized = true; |
392 | |
393 | // Initialize package |
394 | setName(eNAME); |
395 | setNsPrefix(eNS_PREFIX); |
396 | setNsURI(eNS_URI); |
397 | |
398 | // Obtain other dependent packages |
399 | ResultdecoratorPackage theResultdecoratorPackage = (ResultdecoratorPackage)EPackage.Registry.INSTANCE.getEPackage(ResultdecoratorPackage.eNS_URI); |
400 | EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI); |
401 | |
402 | // Create type parameters |
403 | |
404 | // Set bounds for type parameters |
405 | |
406 | // Add supertypes to classes |
407 | numericQualityPropertyEClass.getESuperTypes().add(this.getQualityProperty()); |
408 | elementQualityPropertyEClass.getESuperTypes().add(this.getQualityProperty()); |
409 | integerQualityPropertyEClass.getESuperTypes().add(this.getNumericQualityProperty()); |
410 | doubleQualityPropertyEClass.getESuperTypes().add(this.getNumericQualityProperty()); |
411 | |
412 | // Initialize classes and features; add operations and parameters |
413 | initEClass(numericQualityPropertyEClass, NumericQualityProperty.class, "NumericQualityProperty", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
414 | initEReference(getNumericQualityProperty_ResultDecoratorRepository(), theResultdecoratorPackage.getResultDecoratorRepository(), null, "resultDecoratorRepository", null, 0, 1, NumericQualityProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
415 | initEReference(getNumericQualityProperty_ConfidenceInterval(), this.getConfidenceInterval(), null, "confidenceInterval", null, 0, 1, NumericQualityProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
416 | |
417 | initEClass(confidenceIntervalEClass, ConfidenceInterval.class, "ConfidenceInterval", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
418 | initEAttribute(getConfidenceInterval_ConfidenceLevel(), theEcorePackage.getEDouble(), "confidenceLevel", null, 1, 1, ConfidenceInterval.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
419 | initEAttribute(getConfidenceInterval_Mean(), theEcorePackage.getEDouble(), "mean", null, 1, 1, ConfidenceInterval.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
420 | initEAttribute(getConfidenceInterval_UpperBound(), theEcorePackage.getEDouble(), "upperBound", null, 1, 1, ConfidenceInterval.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
421 | initEAttribute(getConfidenceInterval_LowerBound(), theEcorePackage.getEDouble(), "lowerBound", null, 1, 1, ConfidenceInterval.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
422 | |
423 | initEClass(elementQualityPropertyEClass, ElementQualityProperty.class, "ElementQualityProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
424 | |
425 | initEClass(integerQualityPropertyEClass, IntegerQualityProperty.class, "IntegerQualityProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
426 | initEAttribute(getIntegerQualityProperty_Value(), theEcorePackage.getEIntegerObject(), "value", null, 1, 1, IntegerQualityProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
427 | |
428 | initEClass(doubleQualityPropertyEClass, DoubleQualityProperty.class, "DoubleQualityProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
429 | initEAttribute(getDoubleQualityProperty_Value(), theEcorePackage.getEDouble(), "value", null, 1, 1, DoubleQualityProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
430 | |
431 | initEClass(qualityPredictionEClass, QualityPrediction.class, "QualityPrediction", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
432 | |
433 | EOperation op = addEOperation(qualityPredictionEClass, this.getQualityProperty(), "evaluate", 1, 1, IS_UNIQUE, !IS_ORDERED); |
434 | addEParameter(op, theEcorePackage.getEObject(), "model", 1, -1, IS_UNIQUE, !IS_ORDERED); |
435 | |
436 | initEClass(qualityPropertyEClass, QualityProperty.class, "QualityProperty", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
437 | initEAttribute(getQualityProperty_QualityValue(), theEcorePackage.getEJavaObject(), "qualityValue", null, 1, 1, QualityProperty.class, !IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); |
438 | } |
439 | |
440 | } //QualityPropertiesPackageImpl |