1 | /** |
2 | * Copyright 2005-2009 by SDQ, IPD, University of Karlsruhe, Germany |
3 | * |
4 | * $Id$ |
5 | */ |
6 | package de.uka.ipd.sdq.pcm.seff.seff_performance.impl; |
7 | |
8 | import java.util.Map; |
9 | |
10 | import org.eclipse.emf.common.notify.Notification; |
11 | import org.eclipse.emf.common.notify.NotificationChain; |
12 | import org.eclipse.emf.common.util.BasicDiagnostic; |
13 | import org.eclipse.emf.common.util.Diagnostic; |
14 | import org.eclipse.emf.common.util.DiagnosticChain; |
15 | import org.eclipse.emf.ecore.EClass; |
16 | import org.eclipse.emf.ecore.InternalEObject; |
17 | import org.eclipse.emf.ecore.impl.ENotificationImpl; |
18 | import org.eclipse.emf.ecore.plugin.EcorePlugin; |
19 | import org.eclipse.emf.ecore.util.EObjectValidator; |
20 | import org.eclipse.emf.ecore.util.EcoreUtil; |
21 | import org.eclipse.ocl.ParserException; |
22 | import org.eclipse.ocl.ecore.Constraint; |
23 | import org.eclipse.ocl.ecore.OCL; |
24 | |
25 | import de.uka.ipd.sdq.pcm.core.CorePackage; |
26 | import de.uka.ipd.sdq.pcm.core.PCMRandomVariable; |
27 | import de.uka.ipd.sdq.pcm.repository.InfrastructureRequiredRole; |
28 | import de.uka.ipd.sdq.pcm.repository.InfrastructureSignature; |
29 | import de.uka.ipd.sdq.pcm.seff.AbstractInternalControlFlowAction; |
30 | import de.uka.ipd.sdq.pcm.seff.SeffPackage; |
31 | import de.uka.ipd.sdq.pcm.seff.impl.CallActionImpl; |
32 | import de.uka.ipd.sdq.pcm.seff.seff_performance.InfrastructureCall; |
33 | import de.uka.ipd.sdq.pcm.seff.seff_performance.Seff_performancePackage; |
34 | import de.uka.ipd.sdq.pcm.seff.seff_performance.util.Seff_performanceValidator; |
35 | |
36 | /** |
37 | * <!-- begin-user-doc --> |
38 | * An implementation of the model object '<em><b>Infrastructure Call</b></em>'. |
39 | * <!-- end-user-doc --> |
40 | * <p> |
41 | * The following features are implemented: |
42 | * <ul> |
43 | * <li>{@link de.uka.ipd.sdq.pcm.seff.seff_performance.impl.InfrastructureCallImpl#getSignature__InfrastructureCall <em>Signature Infrastructure Call</em>}</li> |
44 | * <li>{@link de.uka.ipd.sdq.pcm.seff.seff_performance.impl.InfrastructureCallImpl#getNumberOfCalls__InfrastructureCall <em>Number Of Calls Infrastructure Call</em>}</li> |
45 | * <li>{@link de.uka.ipd.sdq.pcm.seff.seff_performance.impl.InfrastructureCallImpl#getAction__InfrastructureCall <em>Action Infrastructure Call</em>}</li> |
46 | * <li>{@link de.uka.ipd.sdq.pcm.seff.seff_performance.impl.InfrastructureCallImpl#getRequiredRole__InfrastructureCall <em>Required Role Infrastructure Call</em>}</li> |
47 | * </ul> |
48 | * </p> |
49 | * |
50 | * @generated |
51 | */ |
52 | public class InfrastructureCallImpl extends CallActionImpl implements InfrastructureCall { |
53 | /** |
54 | * <!-- begin-user-doc --> |
55 | * <!-- end-user-doc --> |
56 | * @generated |
57 | */ |
58 | public static final String copyright = "Copyright 2005-2009 by SDQ, IPD, University of Karlsruhe, Germany"; |
59 | |
60 | /** |
61 | * The cached value of the '{@link #getSignature__InfrastructureCall() <em>Signature Infrastructure Call</em>}' reference. |
62 | * <!-- begin-user-doc --> |
63 | * <!-- end-user-doc --> |
64 | * @see #getSignature__InfrastructureCall() |
65 | * @generated |
66 | * @ordered |
67 | */ |
68 | protected InfrastructureSignature signature__InfrastructureCall; |
69 | |
70 | /** |
71 | * The cached value of the '{@link #getNumberOfCalls__InfrastructureCall() <em>Number Of Calls Infrastructure Call</em>}' containment reference. |
72 | * <!-- begin-user-doc --> |
73 | * <!-- end-user-doc --> |
74 | * @see #getNumberOfCalls__InfrastructureCall() |
75 | * @generated |
76 | * @ordered |
77 | */ |
78 | protected PCMRandomVariable numberOfCalls__InfrastructureCall; |
79 | |
80 | /** |
81 | * The cached value of the '{@link #getRequiredRole__InfrastructureCall() <em>Required Role Infrastructure Call</em>}' reference. |
82 | * <!-- begin-user-doc --> |
83 | * <!-- end-user-doc --> |
84 | * @see #getRequiredRole__InfrastructureCall() |
85 | * @generated |
86 | * @ordered |
87 | */ |
88 | protected InfrastructureRequiredRole requiredRole__InfrastructureCall; |
89 | |
90 | /** |
91 | * <!-- begin-user-doc --> |
92 | * <!-- end-user-doc --> |
93 | * @generated |
94 | */ |
95 | protected InfrastructureCallImpl() { |
96 | super(); |
97 | } |
98 | |
99 | /** |
100 | * <!-- begin-user-doc --> |
101 | * <!-- end-user-doc --> |
102 | * @generated |
103 | */ |
104 | @Override |
105 | protected EClass eStaticClass() { |
106 | return Seff_performancePackage.Literals.INFRASTRUCTURE_CALL; |
107 | } |
108 | |
109 | /** |
110 | * <!-- begin-user-doc --> |
111 | * <!-- end-user-doc --> |
112 | * @generated |
113 | */ |
114 | public InfrastructureSignature getSignature__InfrastructureCall() { |
115 | if (signature__InfrastructureCall != null && signature__InfrastructureCall.eIsProxy()) { |
116 | InternalEObject oldSignature__InfrastructureCall = (InternalEObject)signature__InfrastructureCall; |
117 | signature__InfrastructureCall = (InfrastructureSignature)eResolveProxy(oldSignature__InfrastructureCall); |
118 | if (signature__InfrastructureCall != oldSignature__InfrastructureCall) { |
119 | if (eNotificationRequired()) |
120 | eNotify(new ENotificationImpl(this, Notification.RESOLVE, Seff_performancePackage.INFRASTRUCTURE_CALL__SIGNATURE_INFRASTRUCTURE_CALL, oldSignature__InfrastructureCall, signature__InfrastructureCall)); |
121 | } |
122 | } |
123 | return signature__InfrastructureCall; |
124 | } |
125 | |
126 | /** |
127 | * <!-- begin-user-doc --> |
128 | * <!-- end-user-doc --> |
129 | * @generated |
130 | */ |
131 | public InfrastructureSignature basicGetSignature__InfrastructureCall() { |
132 | return signature__InfrastructureCall; |
133 | } |
134 | |
135 | /** |
136 | * <!-- begin-user-doc --> |
137 | * <!-- end-user-doc --> |
138 | * @generated |
139 | */ |
140 | public void setSignature__InfrastructureCall(InfrastructureSignature newSignature__InfrastructureCall) { |
141 | InfrastructureSignature oldSignature__InfrastructureCall = signature__InfrastructureCall; |
142 | signature__InfrastructureCall = newSignature__InfrastructureCall; |
143 | if (eNotificationRequired()) |
144 | eNotify(new ENotificationImpl(this, Notification.SET, Seff_performancePackage.INFRASTRUCTURE_CALL__SIGNATURE_INFRASTRUCTURE_CALL, oldSignature__InfrastructureCall, signature__InfrastructureCall)); |
145 | } |
146 | |
147 | /** |
148 | * <!-- begin-user-doc --> |
149 | * <!-- end-user-doc --> |
150 | * @generated |
151 | */ |
152 | public PCMRandomVariable getNumberOfCalls__InfrastructureCall() { |
153 | return numberOfCalls__InfrastructureCall; |
154 | } |
155 | |
156 | /** |
157 | * <!-- begin-user-doc --> |
158 | * <!-- end-user-doc --> |
159 | * @generated |
160 | */ |
161 | public NotificationChain basicSetNumberOfCalls__InfrastructureCall(PCMRandomVariable newNumberOfCalls__InfrastructureCall, NotificationChain msgs) { |
162 | PCMRandomVariable oldNumberOfCalls__InfrastructureCall = numberOfCalls__InfrastructureCall; |
163 | numberOfCalls__InfrastructureCall = newNumberOfCalls__InfrastructureCall; |
164 | if (eNotificationRequired()) { |
165 | ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, Seff_performancePackage.INFRASTRUCTURE_CALL__NUMBER_OF_CALLS_INFRASTRUCTURE_CALL, oldNumberOfCalls__InfrastructureCall, newNumberOfCalls__InfrastructureCall); |
166 | if (msgs == null) msgs = notification; else msgs.add(notification); |
167 | } |
168 | return msgs; |
169 | } |
170 | |
171 | /** |
172 | * <!-- begin-user-doc --> |
173 | * <!-- end-user-doc --> |
174 | * @generated |
175 | */ |
176 | public void setNumberOfCalls__InfrastructureCall(PCMRandomVariable newNumberOfCalls__InfrastructureCall) { |
177 | if (newNumberOfCalls__InfrastructureCall != numberOfCalls__InfrastructureCall) { |
178 | NotificationChain msgs = null; |
179 | if (numberOfCalls__InfrastructureCall != null) |
180 | msgs = ((InternalEObject)numberOfCalls__InfrastructureCall).eInverseRemove(this, CorePackage.PCM_RANDOM_VARIABLE__INFRASTRUCTURE_CALL_PCM_RANDOM_VARIABLE, PCMRandomVariable.class, msgs); |
181 | if (newNumberOfCalls__InfrastructureCall != null) |
182 | msgs = ((InternalEObject)newNumberOfCalls__InfrastructureCall).eInverseAdd(this, CorePackage.PCM_RANDOM_VARIABLE__INFRASTRUCTURE_CALL_PCM_RANDOM_VARIABLE, PCMRandomVariable.class, msgs); |
183 | msgs = basicSetNumberOfCalls__InfrastructureCall(newNumberOfCalls__InfrastructureCall, msgs); |
184 | if (msgs != null) msgs.dispatch(); |
185 | } |
186 | else if (eNotificationRequired()) |
187 | eNotify(new ENotificationImpl(this, Notification.SET, Seff_performancePackage.INFRASTRUCTURE_CALL__NUMBER_OF_CALLS_INFRASTRUCTURE_CALL, newNumberOfCalls__InfrastructureCall, newNumberOfCalls__InfrastructureCall)); |
188 | } |
189 | |
190 | /** |
191 | * <!-- begin-user-doc --> |
192 | * <!-- end-user-doc --> |
193 | * @generated |
194 | */ |
195 | public AbstractInternalControlFlowAction getAction__InfrastructureCall() { |
196 | if (eContainerFeatureID() != Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL) return null; |
197 | return (AbstractInternalControlFlowAction)eContainer(); |
198 | } |
199 | |
200 | /** |
201 | * <!-- begin-user-doc --> |
202 | * <!-- end-user-doc --> |
203 | * @generated |
204 | */ |
205 | public NotificationChain basicSetAction__InfrastructureCall(AbstractInternalControlFlowAction newAction__InfrastructureCall, NotificationChain msgs) { |
206 | msgs = eBasicSetContainer((InternalEObject)newAction__InfrastructureCall, Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL, msgs); |
207 | return msgs; |
208 | } |
209 | |
210 | /** |
211 | * <!-- begin-user-doc --> |
212 | * <!-- end-user-doc --> |
213 | * @generated |
214 | */ |
215 | public void setAction__InfrastructureCall(AbstractInternalControlFlowAction newAction__InfrastructureCall) { |
216 | if (newAction__InfrastructureCall != eInternalContainer() || (eContainerFeatureID() != Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL && newAction__InfrastructureCall != null)) { |
217 | if (EcoreUtil.isAncestor(this, newAction__InfrastructureCall)) |
218 | throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); |
219 | NotificationChain msgs = null; |
220 | if (eInternalContainer() != null) |
221 | msgs = eBasicRemoveFromContainer(msgs); |
222 | if (newAction__InfrastructureCall != null) |
223 | msgs = ((InternalEObject)newAction__InfrastructureCall).eInverseAdd(this, SeffPackage.ABSTRACT_INTERNAL_CONTROL_FLOW_ACTION__INFRASTRUCTURE_CALL_ACTION, AbstractInternalControlFlowAction.class, msgs); |
224 | msgs = basicSetAction__InfrastructureCall(newAction__InfrastructureCall, msgs); |
225 | if (msgs != null) msgs.dispatch(); |
226 | } |
227 | else if (eNotificationRequired()) |
228 | eNotify(new ENotificationImpl(this, Notification.SET, Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL, newAction__InfrastructureCall, newAction__InfrastructureCall)); |
229 | } |
230 | |
231 | /** |
232 | * <!-- begin-user-doc --> |
233 | * <!-- end-user-doc --> |
234 | * @generated |
235 | */ |
236 | public InfrastructureRequiredRole getRequiredRole__InfrastructureCall() { |
237 | if (requiredRole__InfrastructureCall != null && requiredRole__InfrastructureCall.eIsProxy()) { |
238 | InternalEObject oldRequiredRole__InfrastructureCall = (InternalEObject)requiredRole__InfrastructureCall; |
239 | requiredRole__InfrastructureCall = (InfrastructureRequiredRole)eResolveProxy(oldRequiredRole__InfrastructureCall); |
240 | if (requiredRole__InfrastructureCall != oldRequiredRole__InfrastructureCall) { |
241 | if (eNotificationRequired()) |
242 | eNotify(new ENotificationImpl(this, Notification.RESOLVE, Seff_performancePackage.INFRASTRUCTURE_CALL__REQUIRED_ROLE_INFRASTRUCTURE_CALL, oldRequiredRole__InfrastructureCall, requiredRole__InfrastructureCall)); |
243 | } |
244 | } |
245 | return requiredRole__InfrastructureCall; |
246 | } |
247 | |
248 | /** |
249 | * <!-- begin-user-doc --> |
250 | * <!-- end-user-doc --> |
251 | * @generated |
252 | */ |
253 | public InfrastructureRequiredRole basicGetRequiredRole__InfrastructureCall() { |
254 | return requiredRole__InfrastructureCall; |
255 | } |
256 | |
257 | /** |
258 | * <!-- begin-user-doc --> |
259 | * <!-- end-user-doc --> |
260 | * @generated |
261 | */ |
262 | public void setRequiredRole__InfrastructureCall(InfrastructureRequiredRole newRequiredRole__InfrastructureCall) { |
263 | InfrastructureRequiredRole oldRequiredRole__InfrastructureCall = requiredRole__InfrastructureCall; |
264 | requiredRole__InfrastructureCall = newRequiredRole__InfrastructureCall; |
265 | if (eNotificationRequired()) |
266 | eNotify(new ENotificationImpl(this, Notification.SET, Seff_performancePackage.INFRASTRUCTURE_CALL__REQUIRED_ROLE_INFRASTRUCTURE_CALL, oldRequiredRole__InfrastructureCall, requiredRole__InfrastructureCall)); |
267 | } |
268 | |
269 | /** |
270 | * The cached OCL expression body for the '{@link #SignatureMustBelongToUsedRequiredRole(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Signature Must Belong To Used Required Role</em>}' operation. |
271 | * <!-- begin-user-doc --> |
272 | * <!-- end-user-doc --> |
273 | * @see #SignatureMustBelongToUsedRequiredRole(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) |
274 | * @generated |
275 | * @ordered |
276 | */ |
277 | protected static final String SIGNATURE_MUST_BELONG_TO_USED_REQUIRED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_EXP = "signature__InfrastructureCall.infrastructureInterface__InfrastructureSignature = requiredRole__InfrastructureCall.requiredInterface__InfrastructureRequiredRole"; |
278 | |
279 | /** |
280 | * The cached OCL invariant for the '{@link #SignatureMustBelongToUsedRequiredRole(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Signature Must Belong To Used Required Role</em>}' invariant operation. |
281 | * <!-- begin-user-doc --> |
282 | * <!-- end-user-doc --> |
283 | * @see #SignatureMustBelongToUsedRequiredRole(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) |
284 | * @generated |
285 | * @ordered |
286 | */ |
287 | protected static Constraint SIGNATURE_MUST_BELONG_TO_USED_REQUIRED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_INV; |
288 | |
289 | /** |
290 | * <!-- begin-user-doc --> |
291 | * <!-- end-user-doc --> |
292 | * @generated |
293 | */ |
294 | public boolean SignatureMustBelongToUsedRequiredRole(DiagnosticChain diagnostics, Map<Object, Object> context) { |
295 | if (SIGNATURE_MUST_BELONG_TO_USED_REQUIRED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_INV == null) { |
296 | OCL.Helper helper = EOCL_ENV.createOCLHelper(); |
297 | helper.setContext(Seff_performancePackage.Literals.INFRASTRUCTURE_CALL); |
298 | try { |
299 | SIGNATURE_MUST_BELONG_TO_USED_REQUIRED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_INV = helper.createInvariant(SIGNATURE_MUST_BELONG_TO_USED_REQUIRED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_EXP); |
300 | } |
301 | catch (ParserException pe) { |
302 | throw new UnsupportedOperationException(pe.getLocalizedMessage()); |
303 | } |
304 | } |
305 | if (!EOCL_ENV.createQuery(SIGNATURE_MUST_BELONG_TO_USED_REQUIRED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_INV).check(this)) { |
306 | if (diagnostics != null) { |
307 | diagnostics.add |
308 | (new BasicDiagnostic |
309 | (Diagnostic.ERROR, |
310 | Seff_performanceValidator.DIAGNOSTIC_SOURCE, |
311 | Seff_performanceValidator.INFRASTRUCTURE_CALL__SIGNATURE_MUST_BELONG_TO_USED_REQUIRED_ROLE, |
312 | EcorePlugin.INSTANCE.getString("_UI_GenericInvariant_diagnostic", new Object[] { "SignatureMustBelongToUsedRequiredRole", EObjectValidator.getObjectLabel(this, context) }), |
313 | new Object [] { this })); |
314 | } |
315 | return false; |
316 | } |
317 | return true; |
318 | } |
319 | |
320 | /** |
321 | * <!-- begin-user-doc --> |
322 | * <!-- end-user-doc --> |
323 | * @generated |
324 | */ |
325 | @Override |
326 | public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { |
327 | switch (featureID) { |
328 | case Seff_performancePackage.INFRASTRUCTURE_CALL__NUMBER_OF_CALLS_INFRASTRUCTURE_CALL: |
329 | if (numberOfCalls__InfrastructureCall != null) |
330 | msgs = ((InternalEObject)numberOfCalls__InfrastructureCall).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - Seff_performancePackage.INFRASTRUCTURE_CALL__NUMBER_OF_CALLS_INFRASTRUCTURE_CALL, null, msgs); |
331 | return basicSetNumberOfCalls__InfrastructureCall((PCMRandomVariable)otherEnd, msgs); |
332 | case Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL: |
333 | if (eInternalContainer() != null) |
334 | msgs = eBasicRemoveFromContainer(msgs); |
335 | return basicSetAction__InfrastructureCall((AbstractInternalControlFlowAction)otherEnd, msgs); |
336 | } |
337 | return super.eInverseAdd(otherEnd, featureID, msgs); |
338 | } |
339 | |
340 | /** |
341 | * <!-- begin-user-doc --> |
342 | * <!-- end-user-doc --> |
343 | * @generated |
344 | */ |
345 | @Override |
346 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { |
347 | switch (featureID) { |
348 | case Seff_performancePackage.INFRASTRUCTURE_CALL__NUMBER_OF_CALLS_INFRASTRUCTURE_CALL: |
349 | return basicSetNumberOfCalls__InfrastructureCall(null, msgs); |
350 | case Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL: |
351 | return basicSetAction__InfrastructureCall(null, msgs); |
352 | } |
353 | return super.eInverseRemove(otherEnd, featureID, msgs); |
354 | } |
355 | |
356 | /** |
357 | * <!-- begin-user-doc --> |
358 | * <!-- end-user-doc --> |
359 | * @generated |
360 | */ |
361 | @Override |
362 | public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { |
363 | switch (eContainerFeatureID()) { |
364 | case Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL: |
365 | return eInternalContainer().eInverseRemove(this, SeffPackage.ABSTRACT_INTERNAL_CONTROL_FLOW_ACTION__INFRASTRUCTURE_CALL_ACTION, AbstractInternalControlFlowAction.class, msgs); |
366 | } |
367 | return super.eBasicRemoveFromContainerFeature(msgs); |
368 | } |
369 | |
370 | /** |
371 | * <!-- begin-user-doc --> |
372 | * <!-- end-user-doc --> |
373 | * @generated |
374 | */ |
375 | @Override |
376 | public Object eGet(int featureID, boolean resolve, boolean coreType) { |
377 | switch (featureID) { |
378 | case Seff_performancePackage.INFRASTRUCTURE_CALL__SIGNATURE_INFRASTRUCTURE_CALL: |
379 | if (resolve) return getSignature__InfrastructureCall(); |
380 | return basicGetSignature__InfrastructureCall(); |
381 | case Seff_performancePackage.INFRASTRUCTURE_CALL__NUMBER_OF_CALLS_INFRASTRUCTURE_CALL: |
382 | return getNumberOfCalls__InfrastructureCall(); |
383 | case Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL: |
384 | return getAction__InfrastructureCall(); |
385 | case Seff_performancePackage.INFRASTRUCTURE_CALL__REQUIRED_ROLE_INFRASTRUCTURE_CALL: |
386 | if (resolve) return getRequiredRole__InfrastructureCall(); |
387 | return basicGetRequiredRole__InfrastructureCall(); |
388 | } |
389 | return super.eGet(featureID, resolve, coreType); |
390 | } |
391 | |
392 | /** |
393 | * <!-- begin-user-doc --> |
394 | * <!-- end-user-doc --> |
395 | * @generated |
396 | */ |
397 | @Override |
398 | public void eSet(int featureID, Object newValue) { |
399 | switch (featureID) { |
400 | case Seff_performancePackage.INFRASTRUCTURE_CALL__SIGNATURE_INFRASTRUCTURE_CALL: |
401 | setSignature__InfrastructureCall((InfrastructureSignature)newValue); |
402 | return; |
403 | case Seff_performancePackage.INFRASTRUCTURE_CALL__NUMBER_OF_CALLS_INFRASTRUCTURE_CALL: |
404 | setNumberOfCalls__InfrastructureCall((PCMRandomVariable)newValue); |
405 | return; |
406 | case Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL: |
407 | setAction__InfrastructureCall((AbstractInternalControlFlowAction)newValue); |
408 | return; |
409 | case Seff_performancePackage.INFRASTRUCTURE_CALL__REQUIRED_ROLE_INFRASTRUCTURE_CALL: |
410 | setRequiredRole__InfrastructureCall((InfrastructureRequiredRole)newValue); |
411 | return; |
412 | } |
413 | super.eSet(featureID, newValue); |
414 | } |
415 | |
416 | /** |
417 | * <!-- begin-user-doc --> |
418 | * <!-- end-user-doc --> |
419 | * @generated |
420 | */ |
421 | @Override |
422 | public void eUnset(int featureID) { |
423 | switch (featureID) { |
424 | case Seff_performancePackage.INFRASTRUCTURE_CALL__SIGNATURE_INFRASTRUCTURE_CALL: |
425 | setSignature__InfrastructureCall((InfrastructureSignature)null); |
426 | return; |
427 | case Seff_performancePackage.INFRASTRUCTURE_CALL__NUMBER_OF_CALLS_INFRASTRUCTURE_CALL: |
428 | setNumberOfCalls__InfrastructureCall((PCMRandomVariable)null); |
429 | return; |
430 | case Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL: |
431 | setAction__InfrastructureCall((AbstractInternalControlFlowAction)null); |
432 | return; |
433 | case Seff_performancePackage.INFRASTRUCTURE_CALL__REQUIRED_ROLE_INFRASTRUCTURE_CALL: |
434 | setRequiredRole__InfrastructureCall((InfrastructureRequiredRole)null); |
435 | return; |
436 | } |
437 | super.eUnset(featureID); |
438 | } |
439 | |
440 | /** |
441 | * <!-- begin-user-doc --> |
442 | * <!-- end-user-doc --> |
443 | * @generated |
444 | */ |
445 | @Override |
446 | public boolean eIsSet(int featureID) { |
447 | switch (featureID) { |
448 | case Seff_performancePackage.INFRASTRUCTURE_CALL__SIGNATURE_INFRASTRUCTURE_CALL: |
449 | return signature__InfrastructureCall != null; |
450 | case Seff_performancePackage.INFRASTRUCTURE_CALL__NUMBER_OF_CALLS_INFRASTRUCTURE_CALL: |
451 | return numberOfCalls__InfrastructureCall != null; |
452 | case Seff_performancePackage.INFRASTRUCTURE_CALL__ACTION_INFRASTRUCTURE_CALL: |
453 | return getAction__InfrastructureCall() != null; |
454 | case Seff_performancePackage.INFRASTRUCTURE_CALL__REQUIRED_ROLE_INFRASTRUCTURE_CALL: |
455 | return requiredRole__InfrastructureCall != null; |
456 | } |
457 | return super.eIsSet(featureID); |
458 | } |
459 | |
460 | /** |
461 | * The cached environment for evaluating OCL expressions. |
462 | * <!-- begin-user-doc --> |
463 | * <!-- end-user-doc --> |
464 | * @generated |
465 | * @ordered |
466 | */ |
467 | protected static final OCL EOCL_ENV = OCL.newInstance(); |
468 | |
469 | } //InfrastructureCallImpl |