1 | /** |
2 | * <copyright> |
3 | * </copyright> |
4 | * |
5 | * $Id$ |
6 | */ |
7 | package de.uka.ipd.sdq.pcm.resultdecorator.impl; |
8 | |
9 | import de.uka.ipd.sdq.identifier.IdentifierPackage; |
10 | |
11 | import de.uka.ipd.sdq.pcm.allocation.AllocationPackage; |
12 | |
13 | import de.uka.ipd.sdq.pcm.core.CorePackage; |
14 | |
15 | import de.uka.ipd.sdq.pcm.parameter.ParameterPackage; |
16 | |
17 | import de.uka.ipd.sdq.pcm.protocol.ProtocolPackage; |
18 | |
19 | import de.uka.ipd.sdq.pcm.qosannotations.QosannotationsPackage; |
20 | |
21 | import de.uka.ipd.sdq.pcm.repository.RepositoryPackage; |
22 | |
23 | import de.uka.ipd.sdq.pcm.resourceenvironment.ResourceenvironmentPackage; |
24 | |
25 | import de.uka.ipd.sdq.pcm.resourcetype.ResourcetypePackage; |
26 | |
27 | import de.uka.ipd.sdq.pcm.resultdecorator.ResultDecoratorRepository; |
28 | import de.uka.ipd.sdq.pcm.resultdecorator.ResultdecoratorFactory; |
29 | import de.uka.ipd.sdq.pcm.resultdecorator.ResultdecoratorPackage; |
30 | |
31 | import de.uka.ipd.sdq.pcm.resultdecorator.repository.impl.repositorydecoratorPackageImpl; |
32 | |
33 | import de.uka.ipd.sdq.pcm.resultdecorator.repository.repositorydecoratorPackage; |
34 | |
35 | import de.uka.ipd.sdq.pcm.resultdecorator.resourceenvironment.impl.resourceenvironmentdecoratorPackageImpl; |
36 | |
37 | import de.uka.ipd.sdq.pcm.resultdecorator.resourceenvironment.resourceenvironmentdecoratorPackage; |
38 | |
39 | import de.uka.ipd.sdq.pcm.seff.SeffPackage; |
40 | |
41 | import de.uka.ipd.sdq.pcm.system.SystemPackage; |
42 | |
43 | import de.uka.ipd.sdq.pcm.usagemodel.UsagemodelPackage; |
44 | |
45 | import de.uka.ipd.sdq.probfunction.ProbfunctionPackage; |
46 | |
47 | import de.uka.ipd.sdq.stoex.StoexPackage; |
48 | |
49 | import de.uka.ipd.sdq.units.UnitsPackage; |
50 | |
51 | import org.eclipse.emf.ecore.EClass; |
52 | import org.eclipse.emf.ecore.EPackage; |
53 | import org.eclipse.emf.ecore.EReference; |
54 | |
55 | import org.eclipse.emf.ecore.impl.EPackageImpl; |
56 | |
57 | /** |
58 | * <!-- begin-user-doc --> |
59 | * An implementation of the model <b>Package</b>. |
60 | * <!-- end-user-doc --> |
61 | * @generated |
62 | */ |
63 | public class ResultdecoratorPackageImpl extends EPackageImpl implements ResultdecoratorPackage { |
64 | /** |
65 | * <!-- begin-user-doc --> |
66 | * <!-- end-user-doc --> |
67 | * @generated |
68 | */ |
69 | private EClass resultDecoratorRepositoryEClass = null; |
70 | |
71 | /** |
72 | * Creates an instance of the model <b>Package</b>, registered with |
73 | * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package |
74 | * package URI value. |
75 | * <p>Note: the correct way to create the package is via the static |
76 | * factory method {@link #init init()}, which also performs |
77 | * initialization of the package, or returns the registered package, |
78 | * if one already exists. |
79 | * <!-- begin-user-doc --> |
80 | * <!-- end-user-doc --> |
81 | * @see org.eclipse.emf.ecore.EPackage.Registry |
82 | * @see de.uka.ipd.sdq.pcm.resultdecorator.ResultdecoratorPackage#eNS_URI |
83 | * @see #init() |
84 | * @generated |
85 | */ |
86 | private ResultdecoratorPackageImpl() { |
87 | super(eNS_URI, ResultdecoratorFactory.eINSTANCE); |
88 | } |
89 | |
90 | /** |
91 | * <!-- begin-user-doc --> |
92 | * <!-- end-user-doc --> |
93 | * @generated |
94 | */ |
95 | private static boolean isInited = false; |
96 | |
97 | /** |
98 | * Creates, registers, and initializes the <b>Package</b> for this |
99 | * model, and for any others upon which it depends. Simple |
100 | * dependencies are satisfied by calling this method on all |
101 | * dependent packages before doing anything else. This method drives |
102 | * initialization for interdependent packages directly, in parallel |
103 | * with this package, itself. |
104 | * <p>Of this package and its interdependencies, all packages which |
105 | * have not yet been registered by their URI values are first created |
106 | * and registered. The packages are then initialized in two steps: |
107 | * meta-model objects for all of the packages are created before any |
108 | * are initialized, since one package's meta-model objects may refer to |
109 | * those of another. |
110 | * <p>Invocation of this method will not affect any packages that have |
111 | * already been initialized. |
112 | * <!-- begin-user-doc --> |
113 | * <!-- end-user-doc --> |
114 | * @see #eNS_URI |
115 | * @see #createPackageContents() |
116 | * @see #initializePackageContents() |
117 | * @generated |
118 | */ |
119 | public static ResultdecoratorPackage init() { |
120 | if (isInited) return (ResultdecoratorPackage)EPackage.Registry.INSTANCE.getEPackage(ResultdecoratorPackage.eNS_URI); |
121 | |
122 | // Obtain or create and register package |
123 | ResultdecoratorPackageImpl theResultdecoratorPackage = (ResultdecoratorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof ResultdecoratorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new ResultdecoratorPackageImpl()); |
124 | |
125 | isInited = true; |
126 | |
127 | // Initialize simple dependencies |
128 | IdentifierPackage.eINSTANCE.eClass(); |
129 | CorePackage.eINSTANCE.eClass(); |
130 | RepositoryPackage.eINSTANCE.eClass(); |
131 | ProtocolPackage.eINSTANCE.eClass(); |
132 | ParameterPackage.eINSTANCE.eClass(); |
133 | SeffPackage.eINSTANCE.eClass(); |
134 | ResourcetypePackage.eINSTANCE.eClass(); |
135 | AllocationPackage.eINSTANCE.eClass(); |
136 | ResourceenvironmentPackage.eINSTANCE.eClass(); |
137 | SystemPackage.eINSTANCE.eClass(); |
138 | QosannotationsPackage.eINSTANCE.eClass(); |
139 | UsagemodelPackage.eINSTANCE.eClass(); |
140 | ProbfunctionPackage.eINSTANCE.eClass(); |
141 | StoexPackage.eINSTANCE.eClass(); |
142 | UnitsPackage.eINSTANCE.eClass(); |
143 | |
144 | // Obtain or create and register interdependencies |
145 | repositorydecoratorPackageImpl therepositorydecoratorPackage = (repositorydecoratorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(repositorydecoratorPackage.eNS_URI) instanceof repositorydecoratorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(repositorydecoratorPackage.eNS_URI) : repositorydecoratorPackage.eINSTANCE); |
146 | resourceenvironmentdecoratorPackageImpl theresourceenvironmentdecoratorPackage = (resourceenvironmentdecoratorPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(resourceenvironmentdecoratorPackage.eNS_URI) instanceof resourceenvironmentdecoratorPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(resourceenvironmentdecoratorPackage.eNS_URI) : resourceenvironmentdecoratorPackage.eINSTANCE); |
147 | |
148 | // Create package meta-data objects |
149 | theResultdecoratorPackage.createPackageContents(); |
150 | therepositorydecoratorPackage.createPackageContents(); |
151 | theresourceenvironmentdecoratorPackage.createPackageContents(); |
152 | |
153 | // Initialize created meta-data |
154 | theResultdecoratorPackage.initializePackageContents(); |
155 | therepositorydecoratorPackage.initializePackageContents(); |
156 | theresourceenvironmentdecoratorPackage.initializePackageContents(); |
157 | |
158 | // Mark meta-data to indicate it can't be changed |
159 | theResultdecoratorPackage.freeze(); |
160 | |
161 | return theResultdecoratorPackage; |
162 | } |
163 | |
164 | /** |
165 | * <!-- begin-user-doc --> |
166 | * <!-- end-user-doc --> |
167 | * @generated |
168 | */ |
169 | public EClass getResultDecoratorRepository() { |
170 | return resultDecoratorRepositoryEClass; |
171 | } |
172 | |
173 | /** |
174 | * <!-- begin-user-doc --> |
175 | * <!-- end-user-doc --> |
176 | * @generated |
177 | */ |
178 | public EReference getResultDecoratorRepository_Interfaceprovidingrequiringentityresults() { |
179 | return (EReference)resultDecoratorRepositoryEClass.getEStructuralFeatures().get(0); |
180 | } |
181 | |
182 | /** |
183 | * <!-- begin-user-doc --> |
184 | * <!-- end-user-doc --> |
185 | * @generated |
186 | */ |
187 | public EReference getResultDecoratorRepository_Utilisationresult() { |
188 | return (EReference)resultDecoratorRepositoryEClass.getEStructuralFeatures().get(1); |
189 | } |
190 | |
191 | /** |
192 | * <!-- begin-user-doc --> |
193 | * <!-- end-user-doc --> |
194 | * @generated |
195 | */ |
196 | public ResultdecoratorFactory getResultdecoratorFactory() { |
197 | return (ResultdecoratorFactory)getEFactoryInstance(); |
198 | } |
199 | |
200 | /** |
201 | * <!-- begin-user-doc --> |
202 | * <!-- end-user-doc --> |
203 | * @generated |
204 | */ |
205 | private boolean isCreated = false; |
206 | |
207 | /** |
208 | * Creates the meta-model objects for the package. This method is |
209 | * guarded to have no affect on any invocation but its first. |
210 | * <!-- begin-user-doc --> |
211 | * <!-- end-user-doc --> |
212 | * @generated |
213 | */ |
214 | public void createPackageContents() { |
215 | if (isCreated) return; |
216 | isCreated = true; |
217 | |
218 | // Create classes and their features |
219 | resultDecoratorRepositoryEClass = createEClass(RESULT_DECORATOR_REPOSITORY); |
220 | createEReference(resultDecoratorRepositoryEClass, RESULT_DECORATOR_REPOSITORY__INTERFACEPROVIDINGREQUIRINGENTITYRESULTS); |
221 | createEReference(resultDecoratorRepositoryEClass, RESULT_DECORATOR_REPOSITORY__UTILISATIONRESULT); |
222 | } |
223 | |
224 | /** |
225 | * <!-- begin-user-doc --> |
226 | * <!-- end-user-doc --> |
227 | * @generated |
228 | */ |
229 | private boolean isInitialized = false; |
230 | |
231 | /** |
232 | * Complete the initialization of the package and its meta-model. This |
233 | * method is guarded to have no affect on any invocation but its first. |
234 | * <!-- begin-user-doc --> |
235 | * <!-- end-user-doc --> |
236 | * @generated |
237 | */ |
238 | public void initializePackageContents() { |
239 | if (isInitialized) return; |
240 | isInitialized = true; |
241 | |
242 | // Initialize package |
243 | setName(eNAME); |
244 | setNsPrefix(eNS_PREFIX); |
245 | setNsURI(eNS_URI); |
246 | |
247 | // Obtain other dependent packages |
248 | repositorydecoratorPackage therepositorydecoratorPackage = (repositorydecoratorPackage)EPackage.Registry.INSTANCE.getEPackage(repositorydecoratorPackage.eNS_URI); |
249 | resourceenvironmentdecoratorPackage theresourceenvironmentdecoratorPackage = (resourceenvironmentdecoratorPackage)EPackage.Registry.INSTANCE.getEPackage(resourceenvironmentdecoratorPackage.eNS_URI); |
250 | |
251 | // Add subpackages |
252 | getESubpackages().add(therepositorydecoratorPackage); |
253 | getESubpackages().add(theresourceenvironmentdecoratorPackage); |
254 | |
255 | // Create type parameters |
256 | |
257 | // Set bounds for type parameters |
258 | |
259 | // Add supertypes to classes |
260 | |
261 | // Initialize classes and features; add operations and parameters |
262 | initEClass(resultDecoratorRepositoryEClass, ResultDecoratorRepository.class, "ResultDecoratorRepository", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
263 | initEReference(getResultDecoratorRepository_Interfaceprovidingrequiringentityresults(), therepositorydecoratorPackage.getInterfaceProvidingRequiringEntityResults(), null, "interfaceprovidingrequiringentityresults", null, 0, -1, ResultDecoratorRepository.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
264 | initEReference(getResultDecoratorRepository_Utilisationresult(), theresourceenvironmentdecoratorPackage.getUtilisationResult(), null, "utilisationresult", null, 0, -1, ResultDecoratorRepository.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); |
265 | |
266 | // Create resource |
267 | createResource(eNS_URI); |
268 | } |
269 | |
270 | } //ResultdecoratorPackageImpl |