1 | /** |
2 | * Copyright 2005-2009 by SDQ, IPD, University of Karlsruhe, Germany |
3 | * |
4 | * $Id$ |
5 | */ |
6 | package de.uka.ipd.sdq.pcm.subsystem.impl; |
7 | |
8 | import org.eclipse.emf.ecore.EClass; |
9 | import org.eclipse.emf.ecore.EPackage; |
10 | import org.eclipse.emf.ecore.impl.EPackageImpl; |
11 | |
12 | import de.uka.ipd.sdq.identifier.IdentifierPackage; |
13 | import de.uka.ipd.sdq.pcm.PcmPackage; |
14 | import de.uka.ipd.sdq.pcm.allocation.AllocationPackage; |
15 | import de.uka.ipd.sdq.pcm.allocation.impl.AllocationPackageImpl; |
16 | import de.uka.ipd.sdq.pcm.core.CorePackage; |
17 | import de.uka.ipd.sdq.pcm.core.composition.CompositionPackage; |
18 | import de.uka.ipd.sdq.pcm.core.composition.impl.CompositionPackageImpl; |
19 | import de.uka.ipd.sdq.pcm.core.entity.EntityPackage; |
20 | import de.uka.ipd.sdq.pcm.core.entity.impl.EntityPackageImpl; |
21 | import de.uka.ipd.sdq.pcm.core.impl.CorePackageImpl; |
22 | import de.uka.ipd.sdq.pcm.impl.PcmPackageImpl; |
23 | import de.uka.ipd.sdq.pcm.parameter.ParameterPackage; |
24 | import de.uka.ipd.sdq.pcm.parameter.impl.ParameterPackageImpl; |
25 | import de.uka.ipd.sdq.pcm.protocol.ProtocolPackage; |
26 | import de.uka.ipd.sdq.pcm.protocol.impl.ProtocolPackageImpl; |
27 | import de.uka.ipd.sdq.pcm.qosannotations.QosannotationsPackage; |
28 | import de.uka.ipd.sdq.pcm.qosannotations.impl.QosannotationsPackageImpl; |
29 | import de.uka.ipd.sdq.pcm.qosannotations.qos_performance.Qos_performancePackage; |
30 | import de.uka.ipd.sdq.pcm.qosannotations.qos_performance.impl.Qos_performancePackageImpl; |
31 | import de.uka.ipd.sdq.pcm.qosannotations.qos_reliability.Qos_reliabilityPackage; |
32 | import de.uka.ipd.sdq.pcm.qosannotations.qos_reliability.impl.Qos_reliabilityPackageImpl; |
33 | import de.uka.ipd.sdq.pcm.reliability.ReliabilityPackage; |
34 | import de.uka.ipd.sdq.pcm.reliability.impl.ReliabilityPackageImpl; |
35 | import de.uka.ipd.sdq.pcm.repository.RepositoryPackage; |
36 | import de.uka.ipd.sdq.pcm.repository.impl.RepositoryPackageImpl; |
37 | import de.uka.ipd.sdq.pcm.resourceenvironment.ResourceenvironmentPackage; |
38 | import de.uka.ipd.sdq.pcm.resourceenvironment.impl.ResourceenvironmentPackageImpl; |
39 | import de.uka.ipd.sdq.pcm.resourcetype.ResourcetypePackage; |
40 | import de.uka.ipd.sdq.pcm.resourcetype.impl.ResourcetypePackageImpl; |
41 | import de.uka.ipd.sdq.pcm.seff.SeffPackage; |
42 | import de.uka.ipd.sdq.pcm.seff.impl.SeffPackageImpl; |
43 | import de.uka.ipd.sdq.pcm.seff.seff_performance.Seff_performancePackage; |
44 | import de.uka.ipd.sdq.pcm.seff.seff_performance.impl.Seff_performancePackageImpl; |
45 | import de.uka.ipd.sdq.pcm.seff.seff_reliability.Seff_reliabilityPackage; |
46 | import de.uka.ipd.sdq.pcm.seff.seff_reliability.impl.Seff_reliabilityPackageImpl; |
47 | import de.uka.ipd.sdq.pcm.subsystem.SubSystem; |
48 | import de.uka.ipd.sdq.pcm.subsystem.SubsystemFactory; |
49 | import de.uka.ipd.sdq.pcm.subsystem.SubsystemPackage; |
50 | import de.uka.ipd.sdq.pcm.system.SystemPackage; |
51 | import de.uka.ipd.sdq.pcm.system.impl.SystemPackageImpl; |
52 | import de.uka.ipd.sdq.pcm.usagemodel.UsagemodelPackage; |
53 | import de.uka.ipd.sdq.pcm.usagemodel.impl.UsagemodelPackageImpl; |
54 | import de.uka.ipd.sdq.stoex.StoexPackage; |
55 | |
56 | /** |
57 | * <!-- begin-user-doc --> |
58 | * An implementation of the model <b>Package</b>. |
59 | * <!-- end-user-doc --> |
60 | * @generated |
61 | */ |
62 | public class SubsystemPackageImpl extends EPackageImpl implements SubsystemPackage { |
63 | /** |
64 | * <!-- begin-user-doc --> |
65 | * <!-- end-user-doc --> |
66 | * @generated |
67 | */ |
68 | public static final String copyright = "Copyright 2005-2009 by SDQ, IPD, University of Karlsruhe, Germany"; |
69 | |
70 | /** |
71 | * <!-- begin-user-doc --> |
72 | * <!-- end-user-doc --> |
73 | * @generated |
74 | */ |
75 | private EClass subSystemEClass = null; |
76 | |
77 | /** |
78 | * Creates an instance of the model <b>Package</b>, registered with |
79 | * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package |
80 | * package URI value. |
81 | * <p>Note: the correct way to create the package is via the static |
82 | * factory method {@link #init init()}, which also performs |
83 | * initialization of the package, or returns the registered package, |
84 | * if one already exists. |
85 | * <!-- begin-user-doc --> |
86 | * <!-- end-user-doc --> |
87 | * @see org.eclipse.emf.ecore.EPackage.Registry |
88 | * @see de.uka.ipd.sdq.pcm.subsystem.SubsystemPackage#eNS_URI |
89 | * @see #init() |
90 | * @generated |
91 | */ |
92 | private SubsystemPackageImpl() { |
93 | super(eNS_URI, SubsystemFactory.eINSTANCE); |
94 | } |
95 | |
96 | /** |
97 | * <!-- begin-user-doc --> |
98 | * <!-- end-user-doc --> |
99 | * @generated |
100 | */ |
101 | private static boolean isInited = false; |
102 | |
103 | /** |
104 | * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. |
105 | * |
106 | * <p>This method is used to initialize {@link SubsystemPackage#eINSTANCE} when that field is accessed. |
107 | * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. |
108 | * <!-- begin-user-doc --> |
109 | * <!-- end-user-doc --> |
110 | * @see #eNS_URI |
111 | * @see #createPackageContents() |
112 | * @see #initializePackageContents() |
113 | * @generated |
114 | */ |
115 | public static SubsystemPackage init() { |
116 | if (isInited) return (SubsystemPackage)EPackage.Registry.INSTANCE.getEPackage(SubsystemPackage.eNS_URI); |
117 | |
118 | // Obtain or create and register package |
119 | SubsystemPackageImpl theSubsystemPackage = (SubsystemPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof SubsystemPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new SubsystemPackageImpl()); |
120 | |
121 | isInited = true; |
122 | |
123 | // Initialize simple dependencies |
124 | IdentifierPackage.eINSTANCE.eClass(); |
125 | StoexPackage.eINSTANCE.eClass(); |
126 | |
127 | // Obtain or create and register interdependencies |
128 | PcmPackageImpl thePcmPackage = (PcmPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(PcmPackage.eNS_URI) instanceof PcmPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(PcmPackage.eNS_URI) : PcmPackage.eINSTANCE); |
129 | CorePackageImpl theCorePackage = (CorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) instanceof CorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI) : CorePackage.eINSTANCE); |
130 | EntityPackageImpl theEntityPackage = (EntityPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(EntityPackage.eNS_URI) instanceof EntityPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(EntityPackage.eNS_URI) : EntityPackage.eINSTANCE); |
131 | CompositionPackageImpl theCompositionPackage = (CompositionPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CompositionPackage.eNS_URI) instanceof CompositionPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CompositionPackage.eNS_URI) : CompositionPackage.eINSTANCE); |
132 | UsagemodelPackageImpl theUsagemodelPackage = (UsagemodelPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(UsagemodelPackage.eNS_URI) instanceof UsagemodelPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(UsagemodelPackage.eNS_URI) : UsagemodelPackage.eINSTANCE); |
133 | RepositoryPackageImpl theRepositoryPackage = (RepositoryPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RepositoryPackage.eNS_URI) instanceof RepositoryPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RepositoryPackage.eNS_URI) : RepositoryPackage.eINSTANCE); |
134 | ResourcetypePackageImpl theResourcetypePackage = (ResourcetypePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourcetypePackage.eNS_URI) instanceof ResourcetypePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourcetypePackage.eNS_URI) : ResourcetypePackage.eINSTANCE); |
135 | ProtocolPackageImpl theProtocolPackage = (ProtocolPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) instanceof ProtocolPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ProtocolPackage.eNS_URI) : ProtocolPackage.eINSTANCE); |
136 | ParameterPackageImpl theParameterPackage = (ParameterPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ParameterPackage.eNS_URI) instanceof ParameterPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ParameterPackage.eNS_URI) : ParameterPackage.eINSTANCE); |
137 | ReliabilityPackageImpl theReliabilityPackage = (ReliabilityPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ReliabilityPackage.eNS_URI) instanceof ReliabilityPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ReliabilityPackage.eNS_URI) : ReliabilityPackage.eINSTANCE); |
138 | SeffPackageImpl theSeffPackage = (SeffPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SeffPackage.eNS_URI) instanceof SeffPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SeffPackage.eNS_URI) : SeffPackage.eINSTANCE); |
139 | Seff_performancePackageImpl theSeff_performancePackage = (Seff_performancePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(Seff_performancePackage.eNS_URI) instanceof Seff_performancePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(Seff_performancePackage.eNS_URI) : Seff_performancePackage.eINSTANCE); |
140 | Seff_reliabilityPackageImpl theSeff_reliabilityPackage = (Seff_reliabilityPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(Seff_reliabilityPackage.eNS_URI) instanceof Seff_reliabilityPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(Seff_reliabilityPackage.eNS_URI) : Seff_reliabilityPackage.eINSTANCE); |
141 | QosannotationsPackageImpl theQosannotationsPackage = (QosannotationsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(QosannotationsPackage.eNS_URI) instanceof QosannotationsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(QosannotationsPackage.eNS_URI) : QosannotationsPackage.eINSTANCE); |
142 | Qos_performancePackageImpl theQos_performancePackage = (Qos_performancePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(Qos_performancePackage.eNS_URI) instanceof Qos_performancePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(Qos_performancePackage.eNS_URI) : Qos_performancePackage.eINSTANCE); |
143 | Qos_reliabilityPackageImpl theQos_reliabilityPackage = (Qos_reliabilityPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(Qos_reliabilityPackage.eNS_URI) instanceof Qos_reliabilityPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(Qos_reliabilityPackage.eNS_URI) : Qos_reliabilityPackage.eINSTANCE); |
144 | SystemPackageImpl theSystemPackage = (SystemPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SystemPackage.eNS_URI) instanceof SystemPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SystemPackage.eNS_URI) : SystemPackage.eINSTANCE); |
145 | ResourceenvironmentPackageImpl theResourceenvironmentPackage = (ResourceenvironmentPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ResourceenvironmentPackage.eNS_URI) instanceof ResourceenvironmentPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ResourceenvironmentPackage.eNS_URI) : ResourceenvironmentPackage.eINSTANCE); |
146 | AllocationPackageImpl theAllocationPackage = (AllocationPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AllocationPackage.eNS_URI) instanceof AllocationPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AllocationPackage.eNS_URI) : AllocationPackage.eINSTANCE); |
147 | |
148 | // Create package meta-data objects |
149 | theSubsystemPackage.createPackageContents(); |
150 | thePcmPackage.createPackageContents(); |
151 | theCorePackage.createPackageContents(); |
152 | theEntityPackage.createPackageContents(); |
153 | theCompositionPackage.createPackageContents(); |
154 | theUsagemodelPackage.createPackageContents(); |
155 | theRepositoryPackage.createPackageContents(); |
156 | theResourcetypePackage.createPackageContents(); |
157 | theProtocolPackage.createPackageContents(); |
158 | theParameterPackage.createPackageContents(); |
159 | theReliabilityPackage.createPackageContents(); |
160 | theSeffPackage.createPackageContents(); |
161 | theSeff_performancePackage.createPackageContents(); |
162 | theSeff_reliabilityPackage.createPackageContents(); |
163 | theQosannotationsPackage.createPackageContents(); |
164 | theQos_performancePackage.createPackageContents(); |
165 | theQos_reliabilityPackage.createPackageContents(); |
166 | theSystemPackage.createPackageContents(); |
167 | theResourceenvironmentPackage.createPackageContents(); |
168 | theAllocationPackage.createPackageContents(); |
169 | |
170 | // Initialize created meta-data |
171 | theSubsystemPackage.initializePackageContents(); |
172 | thePcmPackage.initializePackageContents(); |
173 | theCorePackage.initializePackageContents(); |
174 | theEntityPackage.initializePackageContents(); |
175 | theCompositionPackage.initializePackageContents(); |
176 | theUsagemodelPackage.initializePackageContents(); |
177 | theRepositoryPackage.initializePackageContents(); |
178 | theResourcetypePackage.initializePackageContents(); |
179 | theProtocolPackage.initializePackageContents(); |
180 | theParameterPackage.initializePackageContents(); |
181 | theReliabilityPackage.initializePackageContents(); |
182 | theSeffPackage.initializePackageContents(); |
183 | theSeff_performancePackage.initializePackageContents(); |
184 | theSeff_reliabilityPackage.initializePackageContents(); |
185 | theQosannotationsPackage.initializePackageContents(); |
186 | theQos_performancePackage.initializePackageContents(); |
187 | theQos_reliabilityPackage.initializePackageContents(); |
188 | theSystemPackage.initializePackageContents(); |
189 | theResourceenvironmentPackage.initializePackageContents(); |
190 | theAllocationPackage.initializePackageContents(); |
191 | |
192 | // Mark meta-data to indicate it can't be changed |
193 | theSubsystemPackage.freeze(); |
194 | |
195 | |
196 | // Update the registry and return the package |
197 | EPackage.Registry.INSTANCE.put(SubsystemPackage.eNS_URI, theSubsystemPackage); |
198 | return theSubsystemPackage; |
199 | } |
200 | |
201 | /** |
202 | * <!-- begin-user-doc --> |
203 | * <!-- end-user-doc --> |
204 | * @generated |
205 | */ |
206 | public EClass getSubSystem() { |
207 | return subSystemEClass; |
208 | } |
209 | |
210 | /** |
211 | * <!-- begin-user-doc --> |
212 | * <!-- end-user-doc --> |
213 | * @generated |
214 | */ |
215 | public SubsystemFactory getSubsystemFactory() { |
216 | return (SubsystemFactory)getEFactoryInstance(); |
217 | } |
218 | |
219 | /** |
220 | * <!-- begin-user-doc --> |
221 | * <!-- end-user-doc --> |
222 | * @generated |
223 | */ |
224 | private boolean isCreated = false; |
225 | |
226 | /** |
227 | * Creates the meta-model objects for the package. This method is |
228 | * guarded to have no affect on any invocation but its first. |
229 | * <!-- begin-user-doc --> |
230 | * <!-- end-user-doc --> |
231 | * @generated |
232 | */ |
233 | public void createPackageContents() { |
234 | if (isCreated) return; |
235 | isCreated = true; |
236 | |
237 | // Create classes and their features |
238 | subSystemEClass = createEClass(SUB_SYSTEM); |
239 | } |
240 | |
241 | /** |
242 | * <!-- begin-user-doc --> |
243 | * <!-- end-user-doc --> |
244 | * @generated |
245 | */ |
246 | private boolean isInitialized = false; |
247 | |
248 | /** |
249 | * Complete the initialization of the package and its meta-model. This |
250 | * method is guarded to have no affect on any invocation but its first. |
251 | * <!-- begin-user-doc --> |
252 | * <!-- end-user-doc --> |
253 | * @generated |
254 | */ |
255 | public void initializePackageContents() { |
256 | if (isInitialized) return; |
257 | isInitialized = true; |
258 | |
259 | // Initialize package |
260 | setName(eNAME); |
261 | setNsPrefix(eNS_PREFIX); |
262 | setNsURI(eNS_URI); |
263 | |
264 | // Obtain other dependent packages |
265 | EntityPackage theEntityPackage = (EntityPackage)EPackage.Registry.INSTANCE.getEPackage(EntityPackage.eNS_URI); |
266 | RepositoryPackage theRepositoryPackage = (RepositoryPackage)EPackage.Registry.INSTANCE.getEPackage(RepositoryPackage.eNS_URI); |
267 | |
268 | // Create type parameters |
269 | |
270 | // Set bounds for type parameters |
271 | |
272 | // Add supertypes to classes |
273 | subSystemEClass.getESuperTypes().add(theEntityPackage.getComposedProvidingRequiringEntity()); |
274 | subSystemEClass.getESuperTypes().add(theRepositoryPackage.getRepositoryComponent()); |
275 | |
276 | // Initialize classes and features; add operations and parameters |
277 | initEClass(subSystemEClass, SubSystem.class, "SubSystem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
278 | } |
279 | |
280 | } //SubsystemPackageImpl |