EMMA Coverage Report (generated Sun Feb 05 10:43:15 CET 2012)
[all classes][de.uka.ipd.sdq.pcm.system.impl]

COVERAGE SUMMARY FOR SOURCE FILE [SystemImpl.java]

nameclass, %method, %block, %line, %
SystemImpl.java0%   (0/1)0%   (0/23)0%   (0/877)0%   (0/235)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class SystemImpl0%   (0/1)0%   (0/23)0%   (0/877)0%   (0/235)
<static initializer> 0%   (0/1)0%   (0/3)0%   (0/2)
MultipleConnectorsConstraint (DiagnosticChain, Map): boolean 0%   (0/1)0%   (0/62)0%   (0/17)
MultipleConnectorsConstraintForAssemblyConnectors (DiagnosticChain, Map): boo... 0%   (0/1)0%   (0/62)0%   (0/17)
ProvidedRolesMustBeBound (DiagnosticChain, Map): boolean 0%   (0/1)0%   (0/62)0%   (0/17)
SystemImpl (): void 0%   (0/1)0%   (0/3)0%   (0/2)
SystemMustHaveAtLeastOneProvidedRole (DiagnosticChain, Map): boolean 0%   (0/1)0%   (0/62)0%   (0/17)
eBaseStructuralFeatureID (int, Class): int 0%   (0/1)0%   (0/61)0%   (0/26)
eDerivedStructuralFeatureID (int, Class): int 0%   (0/1)0%   (0/61)0%   (0/26)
eGet (int, boolean, boolean): Object 0%   (0/1)0%   (0/32)0%   (0/10)
eInverseAdd (InternalEObject, int, NotificationChain): NotificationChain 0%   (0/1)0%   (0/64)0%   (0/10)
eInverseRemove (InternalEObject, int, NotificationChain): NotificationChain 0%   (0/1)0%   (0/64)0%   (0/10)
eIsSet (int): boolean 0%   (0/1)0%   (0/94)0%   (0/10)
eSet (int, Object): void 0%   (0/1)0%   (0/87)0%   (0/27)
eStaticClass (): EClass 0%   (0/1)0%   (0/2)0%   (0/1)
eUnset (int): void 0%   (0/1)0%   (0/38)0%   (0/19)
getAssemblyContexts__ComposedStructure (): EList 0%   (0/1)0%   (0/15)0%   (0/3)
getConnectors__ComposedStructure (): EList 0%   (0/1)0%   (0/15)0%   (0/3)
getEventChannel__ComposedStructure (): EList 0%   (0/1)0%   (0/15)0%   (0/3)
getProvidedRoles_InterfaceProvidingEntity (): EList 0%   (0/1)0%   (0/15)0%   (0/3)
getQosAnnotations_System (): EList 0%   (0/1)0%   (0/15)0%   (0/3)
getRequiredRoles_InterfaceRequiringEntity (): EList 0%   (0/1)0%   (0/15)0%   (0/3)
getResourceRequiredDelegationConnectors_ComposedStructure (): EList 0%   (0/1)0%   (0/15)0%   (0/3)
getResourceRequiredRoles__ResourceInterfaceRequiringEntity (): EList 0%   (0/1)0%   (0/15)0%   (0/3)

1/**
2 * Copyright 2005-2009 by SDQ, IPD, University of Karlsruhe, Germany
3 *
4 * $Id$
5 */
6package de.uka.ipd.sdq.pcm.system.impl;
7 
8import java.util.Collection;
9import java.util.Map;
10 
11import org.eclipse.emf.common.notify.NotificationChain;
12import org.eclipse.emf.common.util.BasicDiagnostic;
13import org.eclipse.emf.common.util.Diagnostic;
14import org.eclipse.emf.common.util.DiagnosticChain;
15import org.eclipse.emf.common.util.EList;
16import org.eclipse.emf.ecore.EClass;
17import org.eclipse.emf.ecore.InternalEObject;
18import org.eclipse.emf.ecore.plugin.EcorePlugin;
19import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
20import org.eclipse.emf.ecore.util.EObjectValidator;
21import org.eclipse.emf.ecore.util.InternalEList;
22import org.eclipse.ocl.ParserException;
23import org.eclipse.ocl.ecore.Constraint;
24import org.eclipse.ocl.ecore.OCL;
25 
26import de.uka.ipd.sdq.pcm.core.composition.AssemblyContext;
27import de.uka.ipd.sdq.pcm.core.composition.ComposedStructure;
28import de.uka.ipd.sdq.pcm.core.composition.CompositionPackage;
29import de.uka.ipd.sdq.pcm.core.composition.Connector;
30import de.uka.ipd.sdq.pcm.core.composition.EventChannel;
31import de.uka.ipd.sdq.pcm.core.composition.ResourceRequiredDelegationConnector;
32import de.uka.ipd.sdq.pcm.core.composition.util.CompositionValidator;
33import de.uka.ipd.sdq.pcm.core.entity.ComposedProvidingRequiringEntity;
34import de.uka.ipd.sdq.pcm.core.entity.EntityPackage;
35import de.uka.ipd.sdq.pcm.core.entity.InterfaceProvidingEntity;
36import de.uka.ipd.sdq.pcm.core.entity.InterfaceProvidingRequiringEntity;
37import de.uka.ipd.sdq.pcm.core.entity.InterfaceRequiringEntity;
38import de.uka.ipd.sdq.pcm.core.entity.ResourceInterfaceRequiringEntity;
39import de.uka.ipd.sdq.pcm.core.entity.ResourceRequiredRole;
40import de.uka.ipd.sdq.pcm.core.entity.impl.EntityImpl;
41import de.uka.ipd.sdq.pcm.core.entity.util.EntityValidator;
42import de.uka.ipd.sdq.pcm.qosannotations.QoSAnnotations;
43import de.uka.ipd.sdq.pcm.qosannotations.QosannotationsPackage;
44import de.uka.ipd.sdq.pcm.repository.ProvidedRole;
45import de.uka.ipd.sdq.pcm.repository.RepositoryPackage;
46import de.uka.ipd.sdq.pcm.repository.RequiredRole;
47import de.uka.ipd.sdq.pcm.system.SystemPackage;
48import de.uka.ipd.sdq.pcm.system.util.SystemValidator;
49 
50/**
51 * <!-- begin-user-doc -->
52 * An implementation of the model object '<em><b>System</b></em>'.
53 * <!-- end-user-doc -->
54 * <p>
55 * The following features are implemented:
56 * <ul>
57 *   <li>{@link de.uka.ipd.sdq.pcm.system.impl.SystemImpl#getAssemblyContexts__ComposedStructure <em>Assembly Contexts Composed Structure</em>}</li>
58 *   <li>{@link de.uka.ipd.sdq.pcm.system.impl.SystemImpl#getResourceRequiredDelegationConnectors_ComposedStructure <em>Resource Required Delegation Connectors Composed Structure</em>}</li>
59 *   <li>{@link de.uka.ipd.sdq.pcm.system.impl.SystemImpl#getEventChannel__ComposedStructure <em>Event Channel Composed Structure</em>}</li>
60 *   <li>{@link de.uka.ipd.sdq.pcm.system.impl.SystemImpl#getConnectors__ComposedStructure <em>Connectors Composed Structure</em>}</li>
61 *   <li>{@link de.uka.ipd.sdq.pcm.system.impl.SystemImpl#getProvidedRoles_InterfaceProvidingEntity <em>Provided Roles Interface Providing Entity</em>}</li>
62 *   <li>{@link de.uka.ipd.sdq.pcm.system.impl.SystemImpl#getResourceRequiredRoles__ResourceInterfaceRequiringEntity <em>Resource Required Roles Resource Interface Requiring Entity</em>}</li>
63 *   <li>{@link de.uka.ipd.sdq.pcm.system.impl.SystemImpl#getRequiredRoles_InterfaceRequiringEntity <em>Required Roles Interface Requiring Entity</em>}</li>
64 *   <li>{@link de.uka.ipd.sdq.pcm.system.impl.SystemImpl#getQosAnnotations_System <em>Qos Annotations System</em>}</li>
65 * </ul>
66 * </p>
67 *
68 * @generated
69 */
70public class SystemImpl extends EntityImpl implements de.uka.ipd.sdq.pcm.system.System {
71        /**
72         * <!-- begin-user-doc -->
73         * <!-- end-user-doc -->
74         * @generated
75         */
76        public static final String copyright = "Copyright 2005-2009 by SDQ, IPD, University of Karlsruhe, Germany";
77 
78        /**
79         * The cached value of the '{@link #getAssemblyContexts__ComposedStructure() <em>Assembly Contexts Composed Structure</em>}' containment reference list.
80         * <!-- begin-user-doc -->
81         * <!-- end-user-doc -->
82         * @see #getAssemblyContexts__ComposedStructure()
83         * @generated
84         * @ordered
85         */
86        protected EList<AssemblyContext> assemblyContexts__ComposedStructure;
87 
88        /**
89         * The cached value of the '{@link #getResourceRequiredDelegationConnectors_ComposedStructure() <em>Resource Required Delegation Connectors Composed Structure</em>}' containment reference list.
90         * <!-- begin-user-doc -->
91         * <!-- end-user-doc -->
92         * @see #getResourceRequiredDelegationConnectors_ComposedStructure()
93         * @generated
94         * @ordered
95         */
96        protected EList<ResourceRequiredDelegationConnector> resourceRequiredDelegationConnectors_ComposedStructure;
97 
98        /**
99         * The cached value of the '{@link #getEventChannel__ComposedStructure() <em>Event Channel Composed Structure</em>}' containment reference list.
100         * <!-- begin-user-doc -->
101         * <!-- end-user-doc -->
102         * @see #getEventChannel__ComposedStructure()
103         * @generated
104         * @ordered
105         */
106        protected EList<EventChannel> eventChannel__ComposedStructure;
107 
108        /**
109         * The cached value of the '{@link #getConnectors__ComposedStructure() <em>Connectors Composed Structure</em>}' containment reference list.
110         * <!-- begin-user-doc -->
111         * <!-- end-user-doc -->
112         * @see #getConnectors__ComposedStructure()
113         * @generated
114         * @ordered
115         */
116        protected EList<Connector> connectors__ComposedStructure;
117 
118        /**
119         * The cached value of the '{@link #getProvidedRoles_InterfaceProvidingEntity() <em>Provided Roles Interface Providing Entity</em>}' containment reference list.
120         * <!-- begin-user-doc -->
121         * <!-- end-user-doc -->
122         * @see #getProvidedRoles_InterfaceProvidingEntity()
123         * @generated
124         * @ordered
125         */
126        protected EList<ProvidedRole> providedRoles_InterfaceProvidingEntity;
127 
128        /**
129         * The cached value of the '{@link #getResourceRequiredRoles__ResourceInterfaceRequiringEntity() <em>Resource Required Roles Resource Interface Requiring Entity</em>}' containment reference list.
130         * <!-- begin-user-doc -->
131         * <!-- end-user-doc -->
132         * @see #getResourceRequiredRoles__ResourceInterfaceRequiringEntity()
133         * @generated
134         * @ordered
135         */
136        protected EList<ResourceRequiredRole> resourceRequiredRoles__ResourceInterfaceRequiringEntity;
137 
138        /**
139         * The cached value of the '{@link #getRequiredRoles_InterfaceRequiringEntity() <em>Required Roles Interface Requiring Entity</em>}' containment reference list.
140         * <!-- begin-user-doc -->
141         * <!-- end-user-doc -->
142         * @see #getRequiredRoles_InterfaceRequiringEntity()
143         * @generated
144         * @ordered
145         */
146        protected EList<RequiredRole> requiredRoles_InterfaceRequiringEntity;
147 
148        /**
149         * The cached value of the '{@link #getQosAnnotations_System() <em>Qos Annotations System</em>}' containment reference list.
150         * <!-- begin-user-doc -->
151         * <!-- end-user-doc -->
152         * @see #getQosAnnotations_System()
153         * @generated
154         * @ordered
155         */
156        protected EList<QoSAnnotations> qosAnnotations_System;
157 
158        /**
159         * <!-- begin-user-doc -->
160         * <!-- end-user-doc -->
161         * @generated
162         */
163        protected SystemImpl() {
164                super();
165        }
166 
167        /**
168         * <!-- begin-user-doc -->
169         * <!-- end-user-doc -->
170         * @generated
171         */
172        @Override
173        protected EClass eStaticClass() {
174                return SystemPackage.Literals.SYSTEM;
175        }
176 
177        /**
178         * <!-- begin-user-doc -->
179         * <!-- end-user-doc -->
180         * @generated
181         */
182        public EList<AssemblyContext> getAssemblyContexts__ComposedStructure() {
183                if (assemblyContexts__ComposedStructure == null) {
184                        assemblyContexts__ComposedStructure = new EObjectContainmentWithInverseEList<AssemblyContext>(AssemblyContext.class, this, SystemPackage.SYSTEM__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE, CompositionPackage.ASSEMBLY_CONTEXT__PARENT_STRUCTURE_ASSEMBLY_CONTEXT);
185                }
186                return assemblyContexts__ComposedStructure;
187        }
188 
189        /**
190         * <!-- begin-user-doc -->
191         * <!-- end-user-doc -->
192         * @generated
193         */
194        public EList<ResourceRequiredDelegationConnector> getResourceRequiredDelegationConnectors_ComposedStructure() {
195                if (resourceRequiredDelegationConnectors_ComposedStructure == null) {
196                        resourceRequiredDelegationConnectors_ComposedStructure = new EObjectContainmentWithInverseEList<ResourceRequiredDelegationConnector>(ResourceRequiredDelegationConnector.class, this, SystemPackage.SYSTEM__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE, CompositionPackage.RESOURCE_REQUIRED_DELEGATION_CONNECTOR__PARENT_STRUCTURE_RESOURCE_REQUIRED_DELEGATION_CONNECTOR);
197                }
198                return resourceRequiredDelegationConnectors_ComposedStructure;
199        }
200 
201        /**
202         * <!-- begin-user-doc -->
203         * <!-- end-user-doc -->
204         * @generated
205         */
206        public EList<EventChannel> getEventChannel__ComposedStructure() {
207                if (eventChannel__ComposedStructure == null) {
208                        eventChannel__ComposedStructure = new EObjectContainmentWithInverseEList<EventChannel>(EventChannel.class, this, SystemPackage.SYSTEM__EVENT_CHANNEL_COMPOSED_STRUCTURE, CompositionPackage.EVENT_CHANNEL__PARENT_STRUCTURE_EVENT_CHANNEL);
209                }
210                return eventChannel__ComposedStructure;
211        }
212 
213        /**
214         * <!-- begin-user-doc -->
215         * <!-- end-user-doc -->
216         * @generated
217         */
218        public EList<Connector> getConnectors__ComposedStructure() {
219                if (connectors__ComposedStructure == null) {
220                        connectors__ComposedStructure = new EObjectContainmentWithInverseEList<Connector>(Connector.class, this, SystemPackage.SYSTEM__CONNECTORS_COMPOSED_STRUCTURE, CompositionPackage.CONNECTOR__PARENT_STRUCTURE_CONNECTOR);
221                }
222                return connectors__ComposedStructure;
223        }
224 
225        /**
226         * <!-- begin-user-doc -->
227         * <!-- end-user-doc -->
228         * @generated
229         */
230        public EList<ProvidedRole> getProvidedRoles_InterfaceProvidingEntity() {
231                if (providedRoles_InterfaceProvidingEntity == null) {
232                        providedRoles_InterfaceProvidingEntity = new EObjectContainmentWithInverseEList<ProvidedRole>(ProvidedRole.class, this, SystemPackage.SYSTEM__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY, RepositoryPackage.PROVIDED_ROLE__PROVIDING_ENTITY_PROVIDED_ROLE);
233                }
234                return providedRoles_InterfaceProvidingEntity;
235        }
236 
237        /**
238         * <!-- begin-user-doc -->
239         * <!-- end-user-doc -->
240         * @generated
241         */
242        public EList<ResourceRequiredRole> getResourceRequiredRoles__ResourceInterfaceRequiringEntity() {
243                if (resourceRequiredRoles__ResourceInterfaceRequiringEntity == null) {
244                        resourceRequiredRoles__ResourceInterfaceRequiringEntity = new EObjectContainmentWithInverseEList<ResourceRequiredRole>(ResourceRequiredRole.class, this, SystemPackage.SYSTEM__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY, EntityPackage.RESOURCE_REQUIRED_ROLE__RESOURCE_INTERFACE_REQUIRING_ENTITY_RESOURCE_REQUIRED_ROLE);
245                }
246                return resourceRequiredRoles__ResourceInterfaceRequiringEntity;
247        }
248 
249        /**
250         * <!-- begin-user-doc -->
251         * <!-- end-user-doc -->
252         * @generated
253         */
254        public EList<RequiredRole> getRequiredRoles_InterfaceRequiringEntity() {
255                if (requiredRoles_InterfaceRequiringEntity == null) {
256                        requiredRoles_InterfaceRequiringEntity = new EObjectContainmentWithInverseEList<RequiredRole>(RequiredRole.class, this, SystemPackage.SYSTEM__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY, RepositoryPackage.REQUIRED_ROLE__REQUIRING_ENTITY_REQUIRED_ROLE);
257                }
258                return requiredRoles_InterfaceRequiringEntity;
259        }
260 
261        /**
262         * <!-- begin-user-doc -->
263         * <!-- end-user-doc -->
264         * @generated
265         */
266        public EList<QoSAnnotations> getQosAnnotations_System() {
267                if (qosAnnotations_System == null) {
268                        qosAnnotations_System = new EObjectContainmentWithInverseEList<QoSAnnotations>(QoSAnnotations.class, this, SystemPackage.SYSTEM__QOS_ANNOTATIONS_SYSTEM, QosannotationsPackage.QO_SANNOTATIONS__SYSTEM_QO_SANNOTATIONS);
269                }
270                return qosAnnotations_System;
271        }
272 
273        /**
274         * The cached OCL expression body for the '{@link #MultipleConnectorsConstraint(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Multiple Connectors Constraint</em>}' operation.
275         * <!-- begin-user-doc -->
276         * <!-- end-user-doc -->
277         * @see #MultipleConnectorsConstraint(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
278         * @generated
279         * @ordered
280         */
281        protected static final String MULTIPLE_CONNECTORS_CONSTRAINT__DIAGNOSTIC_CHAIN_MAP__EOCL_EXP = "self.connectors__ComposedStructure->select(conn | conn.oclIsTypeOf(pcm::core::composition::ProvidedDelegationConnector)).oclAsType(pcm::core::composition::ProvidedDelegationConnector)->forAll( c1, c2 | c1 <> c2 implies c1.outerProvidedRole_ProvidedDelegationConnector <> c2.outerProvidedRole_ProvidedDelegationConnector)\n"+"";
282 
283        /**
284         * The cached OCL invariant for the '{@link #MultipleConnectorsConstraint(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Multiple Connectors Constraint</em>}' invariant operation.
285         * <!-- begin-user-doc -->
286         * <!-- end-user-doc -->
287         * @see #MultipleConnectorsConstraint(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
288         * @generated
289         * @ordered
290         */
291        protected static Constraint MULTIPLE_CONNECTORS_CONSTRAINT__DIAGNOSTIC_CHAIN_MAP__EOCL_INV;
292 
293        /**
294         * <!-- begin-user-doc -->
295         * <!-- end-user-doc -->
296         * @generated
297         */
298        public boolean MultipleConnectorsConstraint(DiagnosticChain diagnostics, Map<Object, Object> context) {
299                if (MULTIPLE_CONNECTORS_CONSTRAINT__DIAGNOSTIC_CHAIN_MAP__EOCL_INV == null) {
300                        OCL.Helper helper = EOCL_ENV.createOCLHelper();
301                        helper.setContext(CompositionPackage.Literals.COMPOSED_STRUCTURE);
302                        try {
303                                MULTIPLE_CONNECTORS_CONSTRAINT__DIAGNOSTIC_CHAIN_MAP__EOCL_INV = helper.createInvariant(MULTIPLE_CONNECTORS_CONSTRAINT__DIAGNOSTIC_CHAIN_MAP__EOCL_EXP);
304                        }
305                        catch (ParserException pe) {
306                                throw new UnsupportedOperationException(pe.getLocalizedMessage());
307                        }
308                }
309                if (!EOCL_ENV.createQuery(MULTIPLE_CONNECTORS_CONSTRAINT__DIAGNOSTIC_CHAIN_MAP__EOCL_INV).check(this)) {
310                        if (diagnostics != null) {
311                                diagnostics.add
312                                        (new BasicDiagnostic
313                                                (Diagnostic.ERROR,
314                                                 CompositionValidator.DIAGNOSTIC_SOURCE,
315                                                 CompositionValidator.COMPOSED_STRUCTURE__MULTIPLE_CONNECTORS_CONSTRAINT,
316                                                 EcorePlugin.INSTANCE.getString("_UI_GenericInvariant_diagnostic", new Object[] { "MultipleConnectorsConstraint", EObjectValidator.getObjectLabel(this, context) }),
317                                                 new Object [] { this }));
318                        }
319                        return false;
320                }
321                return true;
322        }
323 
324        /**
325         * The cached OCL expression body for the '{@link #MultipleConnectorsConstraintForAssemblyConnectors(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Multiple Connectors Constraint For Assembly Connectors</em>}' operation.
326         * <!-- begin-user-doc -->
327         * <!-- end-user-doc -->
328         * @see #MultipleConnectorsConstraintForAssemblyConnectors(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
329         * @generated
330         * @ordered
331         */
332        protected static final String MULTIPLE_CONNECTORS_CONSTRAINT_FOR_ASSEMBLY_CONNECTORS__DIAGNOSTIC_CHAIN_MAP__EOCL_EXP = "self.connectors__ComposedStructure->select(conn | conn.oclIsTypeOf(pcm::core::composition::AssemblyConnector)).oclAsType(AssemblyConnector)->forAll( c1, c2 | ( (c1 <> c2) and ( c1.requiringAssemblyContext_AssemblyConnector = c2.requiringAssemblyContext_AssemblyConnector ) ) implies c1.requiredRole_AssemblyConnector <> c2.requiredRole_AssemblyConnector )\n"+"";
333 
334        /**
335         * The cached OCL invariant for the '{@link #MultipleConnectorsConstraintForAssemblyConnectors(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Multiple Connectors Constraint For Assembly Connectors</em>}' invariant operation.
336         * <!-- begin-user-doc -->
337         * <!-- end-user-doc -->
338         * @see #MultipleConnectorsConstraintForAssemblyConnectors(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
339         * @generated
340         * @ordered
341         */
342        protected static Constraint MULTIPLE_CONNECTORS_CONSTRAINT_FOR_ASSEMBLY_CONNECTORS__DIAGNOSTIC_CHAIN_MAP__EOCL_INV;
343 
344        /**
345         * <!-- begin-user-doc -->
346         * <!-- end-user-doc -->
347         * @generated
348         */
349        public boolean MultipleConnectorsConstraintForAssemblyConnectors(DiagnosticChain diagnostics, Map<Object, Object> context) {
350                if (MULTIPLE_CONNECTORS_CONSTRAINT_FOR_ASSEMBLY_CONNECTORS__DIAGNOSTIC_CHAIN_MAP__EOCL_INV == null) {
351                        OCL.Helper helper = EOCL_ENV.createOCLHelper();
352                        helper.setContext(CompositionPackage.Literals.COMPOSED_STRUCTURE);
353                        try {
354                                MULTIPLE_CONNECTORS_CONSTRAINT_FOR_ASSEMBLY_CONNECTORS__DIAGNOSTIC_CHAIN_MAP__EOCL_INV = helper.createInvariant(MULTIPLE_CONNECTORS_CONSTRAINT_FOR_ASSEMBLY_CONNECTORS__DIAGNOSTIC_CHAIN_MAP__EOCL_EXP);
355                        }
356                        catch (ParserException pe) {
357                                throw new UnsupportedOperationException(pe.getLocalizedMessage());
358                        }
359                }
360                if (!EOCL_ENV.createQuery(MULTIPLE_CONNECTORS_CONSTRAINT_FOR_ASSEMBLY_CONNECTORS__DIAGNOSTIC_CHAIN_MAP__EOCL_INV).check(this)) {
361                        if (diagnostics != null) {
362                                diagnostics.add
363                                        (new BasicDiagnostic
364                                                (Diagnostic.ERROR,
365                                                 CompositionValidator.DIAGNOSTIC_SOURCE,
366                                                 CompositionValidator.COMPOSED_STRUCTURE__MULTIPLE_CONNECTORS_CONSTRAINT_FOR_ASSEMBLY_CONNECTORS,
367                                                 EcorePlugin.INSTANCE.getString("_UI_GenericInvariant_diagnostic", new Object[] { "MultipleConnectorsConstraintForAssemblyConnectors", EObjectValidator.getObjectLabel(this, context) }),
368                                                 new Object [] { this }));
369                        }
370                        return false;
371                }
372                return true;
373        }
374 
375        /**
376         * The cached OCL expression body for the '{@link #ProvidedRolesMustBeBound(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Provided Roles Must Be Bound</em>}' operation.
377         * <!-- begin-user-doc -->
378         * <!-- end-user-doc -->
379         * @see #ProvidedRolesMustBeBound(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
380         * @generated
381         * @ordered
382         */
383        protected static final String PROVIDED_ROLES_MUST_BE_BOUND__DIAGNOSTIC_CHAIN_MAP__EOCL_EXP = "self.providedRoles_InterfaceProvidingEntity->forAll(role|self.connectors__ComposedStructure->select(conn | conn.oclIsTypeOf(pcm::core::composition::ProvidedDelegationConnector)).oclAsType(pcm::core::composition::ProvidedDelegationConnector)->exists(connector|connector.outerProvidedRole_ProvidedDelegationConnector = role))\n"+"\n"+"";
384 
385        /**
386         * The cached OCL invariant for the '{@link #ProvidedRolesMustBeBound(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Provided Roles Must Be Bound</em>}' invariant operation.
387         * <!-- begin-user-doc -->
388         * <!-- end-user-doc -->
389         * @see #ProvidedRolesMustBeBound(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
390         * @generated
391         * @ordered
392         */
393        protected static Constraint PROVIDED_ROLES_MUST_BE_BOUND__DIAGNOSTIC_CHAIN_MAP__EOCL_INV;
394 
395        /**
396         * <!-- begin-user-doc -->
397         * <!-- end-user-doc -->
398         * @generated
399         */
400        public boolean ProvidedRolesMustBeBound(DiagnosticChain diagnostics, Map<Object, Object> context) {
401                if (PROVIDED_ROLES_MUST_BE_BOUND__DIAGNOSTIC_CHAIN_MAP__EOCL_INV == null) {
402                        OCL.Helper helper = EOCL_ENV.createOCLHelper();
403                        helper.setContext(EntityPackage.Literals.COMPOSED_PROVIDING_REQUIRING_ENTITY);
404                        try {
405                                PROVIDED_ROLES_MUST_BE_BOUND__DIAGNOSTIC_CHAIN_MAP__EOCL_INV = helper.createInvariant(PROVIDED_ROLES_MUST_BE_BOUND__DIAGNOSTIC_CHAIN_MAP__EOCL_EXP);
406                        }
407                        catch (ParserException pe) {
408                                throw new UnsupportedOperationException(pe.getLocalizedMessage());
409                        }
410                }
411                if (!EOCL_ENV.createQuery(PROVIDED_ROLES_MUST_BE_BOUND__DIAGNOSTIC_CHAIN_MAP__EOCL_INV).check(this)) {
412                        if (diagnostics != null) {
413                                diagnostics.add
414                                        (new BasicDiagnostic
415                                                (Diagnostic.ERROR,
416                                                 EntityValidator.DIAGNOSTIC_SOURCE,
417                                                 EntityValidator.COMPOSED_PROVIDING_REQUIRING_ENTITY__PROVIDED_ROLES_MUST_BE_BOUND,
418                                                 EcorePlugin.INSTANCE.getString("_UI_GenericInvariant_diagnostic", new Object[] { "ProvidedRolesMustBeBound", EObjectValidator.getObjectLabel(this, context) }),
419                                                 new Object [] { this }));
420                        }
421                        return false;
422                }
423                return true;
424        }
425 
426        /**
427         * The cached OCL expression body for the '{@link #SystemMustHaveAtLeastOneProvidedRole(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>System Must Have At Least One Provided Role</em>}' operation.
428         * <!-- begin-user-doc -->
429         * <!-- end-user-doc -->
430         * @see #SystemMustHaveAtLeastOneProvidedRole(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
431         * @generated
432         * @ordered
433         */
434        protected static final String SYSTEM_MUST_HAVE_AT_LEAST_ONE_PROVIDED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_EXP = "not self.providedRoles_InterfaceProvidingEntity->isEmpty()";
435 
436        /**
437         * The cached OCL invariant for the '{@link #SystemMustHaveAtLeastOneProvidedRole(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>System Must Have At Least One Provided Role</em>}' invariant operation.
438         * <!-- begin-user-doc -->
439         * <!-- end-user-doc -->
440         * @see #SystemMustHaveAtLeastOneProvidedRole(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
441         * @generated
442         * @ordered
443         */
444        protected static Constraint SYSTEM_MUST_HAVE_AT_LEAST_ONE_PROVIDED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_INV;
445 
446        /**
447         * <!-- begin-user-doc -->
448         * <!-- end-user-doc -->
449         * @generated
450         */
451        public boolean SystemMustHaveAtLeastOneProvidedRole(DiagnosticChain diagnostics, Map<Object, Object> context) {
452                if (SYSTEM_MUST_HAVE_AT_LEAST_ONE_PROVIDED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_INV == null) {
453                        OCL.Helper helper = EOCL_ENV.createOCLHelper();
454                        helper.setContext(SystemPackage.Literals.SYSTEM);
455                        try {
456                                SYSTEM_MUST_HAVE_AT_LEAST_ONE_PROVIDED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_INV = helper.createInvariant(SYSTEM_MUST_HAVE_AT_LEAST_ONE_PROVIDED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_EXP);
457                        }
458                        catch (ParserException pe) {
459                                throw new UnsupportedOperationException(pe.getLocalizedMessage());
460                        }
461                }
462                if (!EOCL_ENV.createQuery(SYSTEM_MUST_HAVE_AT_LEAST_ONE_PROVIDED_ROLE__DIAGNOSTIC_CHAIN_MAP__EOCL_INV).check(this)) {
463                        if (diagnostics != null) {
464                                diagnostics.add
465                                        (new BasicDiagnostic
466                                                (Diagnostic.ERROR,
467                                                 SystemValidator.DIAGNOSTIC_SOURCE,
468                                                 SystemValidator.SYSTEM__SYSTEM_MUST_HAVE_AT_LEAST_ONE_PROVIDED_ROLE,
469                                                 EcorePlugin.INSTANCE.getString("_UI_GenericInvariant_diagnostic", new Object[] { "SystemMustHaveAtLeastOneProvidedRole", EObjectValidator.getObjectLabel(this, context) }),
470                                                 new Object [] { this }));
471                        }
472                        return false;
473                }
474                return true;
475        }
476 
477        /**
478         * <!-- begin-user-doc -->
479         * <!-- end-user-doc -->
480         * @generated
481         */
482        @SuppressWarnings("unchecked")
483        @Override
484        public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
485                switch (featureID) {
486                        case SystemPackage.SYSTEM__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE:
487                                return ((InternalEList<InternalEObject>)(InternalEList<?>)getAssemblyContexts__ComposedStructure()).basicAdd(otherEnd, msgs);
488                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE:
489                                return ((InternalEList<InternalEObject>)(InternalEList<?>)getResourceRequiredDelegationConnectors_ComposedStructure()).basicAdd(otherEnd, msgs);
490                        case SystemPackage.SYSTEM__EVENT_CHANNEL_COMPOSED_STRUCTURE:
491                                return ((InternalEList<InternalEObject>)(InternalEList<?>)getEventChannel__ComposedStructure()).basicAdd(otherEnd, msgs);
492                        case SystemPackage.SYSTEM__CONNECTORS_COMPOSED_STRUCTURE:
493                                return ((InternalEList<InternalEObject>)(InternalEList<?>)getConnectors__ComposedStructure()).basicAdd(otherEnd, msgs);
494                        case SystemPackage.SYSTEM__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY:
495                                return ((InternalEList<InternalEObject>)(InternalEList<?>)getProvidedRoles_InterfaceProvidingEntity()).basicAdd(otherEnd, msgs);
496                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY:
497                                return ((InternalEList<InternalEObject>)(InternalEList<?>)getResourceRequiredRoles__ResourceInterfaceRequiringEntity()).basicAdd(otherEnd, msgs);
498                        case SystemPackage.SYSTEM__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY:
499                                return ((InternalEList<InternalEObject>)(InternalEList<?>)getRequiredRoles_InterfaceRequiringEntity()).basicAdd(otherEnd, msgs);
500                        case SystemPackage.SYSTEM__QOS_ANNOTATIONS_SYSTEM:
501                                return ((InternalEList<InternalEObject>)(InternalEList<?>)getQosAnnotations_System()).basicAdd(otherEnd, msgs);
502                }
503                return super.eInverseAdd(otherEnd, featureID, msgs);
504        }
505 
506        /**
507         * <!-- begin-user-doc -->
508         * <!-- end-user-doc -->
509         * @generated
510         */
511        @Override
512        public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
513                switch (featureID) {
514                        case SystemPackage.SYSTEM__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE:
515                                return ((InternalEList<?>)getAssemblyContexts__ComposedStructure()).basicRemove(otherEnd, msgs);
516                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE:
517                                return ((InternalEList<?>)getResourceRequiredDelegationConnectors_ComposedStructure()).basicRemove(otherEnd, msgs);
518                        case SystemPackage.SYSTEM__EVENT_CHANNEL_COMPOSED_STRUCTURE:
519                                return ((InternalEList<?>)getEventChannel__ComposedStructure()).basicRemove(otherEnd, msgs);
520                        case SystemPackage.SYSTEM__CONNECTORS_COMPOSED_STRUCTURE:
521                                return ((InternalEList<?>)getConnectors__ComposedStructure()).basicRemove(otherEnd, msgs);
522                        case SystemPackage.SYSTEM__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY:
523                                return ((InternalEList<?>)getProvidedRoles_InterfaceProvidingEntity()).basicRemove(otherEnd, msgs);
524                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY:
525                                return ((InternalEList<?>)getResourceRequiredRoles__ResourceInterfaceRequiringEntity()).basicRemove(otherEnd, msgs);
526                        case SystemPackage.SYSTEM__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY:
527                                return ((InternalEList<?>)getRequiredRoles_InterfaceRequiringEntity()).basicRemove(otherEnd, msgs);
528                        case SystemPackage.SYSTEM__QOS_ANNOTATIONS_SYSTEM:
529                                return ((InternalEList<?>)getQosAnnotations_System()).basicRemove(otherEnd, msgs);
530                }
531                return super.eInverseRemove(otherEnd, featureID, msgs);
532        }
533 
534        /**
535         * <!-- begin-user-doc -->
536         * <!-- end-user-doc -->
537         * @generated
538         */
539        @Override
540        public Object eGet(int featureID, boolean resolve, boolean coreType) {
541                switch (featureID) {
542                        case SystemPackage.SYSTEM__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE:
543                                return getAssemblyContexts__ComposedStructure();
544                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE:
545                                return getResourceRequiredDelegationConnectors_ComposedStructure();
546                        case SystemPackage.SYSTEM__EVENT_CHANNEL_COMPOSED_STRUCTURE:
547                                return getEventChannel__ComposedStructure();
548                        case SystemPackage.SYSTEM__CONNECTORS_COMPOSED_STRUCTURE:
549                                return getConnectors__ComposedStructure();
550                        case SystemPackage.SYSTEM__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY:
551                                return getProvidedRoles_InterfaceProvidingEntity();
552                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY:
553                                return getResourceRequiredRoles__ResourceInterfaceRequiringEntity();
554                        case SystemPackage.SYSTEM__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY:
555                                return getRequiredRoles_InterfaceRequiringEntity();
556                        case SystemPackage.SYSTEM__QOS_ANNOTATIONS_SYSTEM:
557                                return getQosAnnotations_System();
558                }
559                return super.eGet(featureID, resolve, coreType);
560        }
561 
562        /**
563         * <!-- begin-user-doc -->
564         * <!-- end-user-doc -->
565         * @generated
566         */
567        @SuppressWarnings("unchecked")
568        @Override
569        public void eSet(int featureID, Object newValue) {
570                switch (featureID) {
571                        case SystemPackage.SYSTEM__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE:
572                                getAssemblyContexts__ComposedStructure().clear();
573                                getAssemblyContexts__ComposedStructure().addAll((Collection<? extends AssemblyContext>)newValue);
574                                return;
575                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE:
576                                getResourceRequiredDelegationConnectors_ComposedStructure().clear();
577                                getResourceRequiredDelegationConnectors_ComposedStructure().addAll((Collection<? extends ResourceRequiredDelegationConnector>)newValue);
578                                return;
579                        case SystemPackage.SYSTEM__EVENT_CHANNEL_COMPOSED_STRUCTURE:
580                                getEventChannel__ComposedStructure().clear();
581                                getEventChannel__ComposedStructure().addAll((Collection<? extends EventChannel>)newValue);
582                                return;
583                        case SystemPackage.SYSTEM__CONNECTORS_COMPOSED_STRUCTURE:
584                                getConnectors__ComposedStructure().clear();
585                                getConnectors__ComposedStructure().addAll((Collection<? extends Connector>)newValue);
586                                return;
587                        case SystemPackage.SYSTEM__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY:
588                                getProvidedRoles_InterfaceProvidingEntity().clear();
589                                getProvidedRoles_InterfaceProvidingEntity().addAll((Collection<? extends ProvidedRole>)newValue);
590                                return;
591                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY:
592                                getResourceRequiredRoles__ResourceInterfaceRequiringEntity().clear();
593                                getResourceRequiredRoles__ResourceInterfaceRequiringEntity().addAll((Collection<? extends ResourceRequiredRole>)newValue);
594                                return;
595                        case SystemPackage.SYSTEM__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY:
596                                getRequiredRoles_InterfaceRequiringEntity().clear();
597                                getRequiredRoles_InterfaceRequiringEntity().addAll((Collection<? extends RequiredRole>)newValue);
598                                return;
599                        case SystemPackage.SYSTEM__QOS_ANNOTATIONS_SYSTEM:
600                                getQosAnnotations_System().clear();
601                                getQosAnnotations_System().addAll((Collection<? extends QoSAnnotations>)newValue);
602                                return;
603                }
604                super.eSet(featureID, newValue);
605        }
606 
607        /**
608         * <!-- begin-user-doc -->
609         * <!-- end-user-doc -->
610         * @generated
611         */
612        @Override
613        public void eUnset(int featureID) {
614                switch (featureID) {
615                        case SystemPackage.SYSTEM__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE:
616                                getAssemblyContexts__ComposedStructure().clear();
617                                return;
618                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE:
619                                getResourceRequiredDelegationConnectors_ComposedStructure().clear();
620                                return;
621                        case SystemPackage.SYSTEM__EVENT_CHANNEL_COMPOSED_STRUCTURE:
622                                getEventChannel__ComposedStructure().clear();
623                                return;
624                        case SystemPackage.SYSTEM__CONNECTORS_COMPOSED_STRUCTURE:
625                                getConnectors__ComposedStructure().clear();
626                                return;
627                        case SystemPackage.SYSTEM__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY:
628                                getProvidedRoles_InterfaceProvidingEntity().clear();
629                                return;
630                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY:
631                                getResourceRequiredRoles__ResourceInterfaceRequiringEntity().clear();
632                                return;
633                        case SystemPackage.SYSTEM__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY:
634                                getRequiredRoles_InterfaceRequiringEntity().clear();
635                                return;
636                        case SystemPackage.SYSTEM__QOS_ANNOTATIONS_SYSTEM:
637                                getQosAnnotations_System().clear();
638                                return;
639                }
640                super.eUnset(featureID);
641        }
642 
643        /**
644         * <!-- begin-user-doc -->
645         * <!-- end-user-doc -->
646         * @generated
647         */
648        @Override
649        public boolean eIsSet(int featureID) {
650                switch (featureID) {
651                        case SystemPackage.SYSTEM__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE:
652                                return assemblyContexts__ComposedStructure != null && !assemblyContexts__ComposedStructure.isEmpty();
653                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE:
654                                return resourceRequiredDelegationConnectors_ComposedStructure != null && !resourceRequiredDelegationConnectors_ComposedStructure.isEmpty();
655                        case SystemPackage.SYSTEM__EVENT_CHANNEL_COMPOSED_STRUCTURE:
656                                return eventChannel__ComposedStructure != null && !eventChannel__ComposedStructure.isEmpty();
657                        case SystemPackage.SYSTEM__CONNECTORS_COMPOSED_STRUCTURE:
658                                return connectors__ComposedStructure != null && !connectors__ComposedStructure.isEmpty();
659                        case SystemPackage.SYSTEM__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY:
660                                return providedRoles_InterfaceProvidingEntity != null && !providedRoles_InterfaceProvidingEntity.isEmpty();
661                        case SystemPackage.SYSTEM__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY:
662                                return resourceRequiredRoles__ResourceInterfaceRequiringEntity != null && !resourceRequiredRoles__ResourceInterfaceRequiringEntity.isEmpty();
663                        case SystemPackage.SYSTEM__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY:
664                                return requiredRoles_InterfaceRequiringEntity != null && !requiredRoles_InterfaceRequiringEntity.isEmpty();
665                        case SystemPackage.SYSTEM__QOS_ANNOTATIONS_SYSTEM:
666                                return qosAnnotations_System != null && !qosAnnotations_System.isEmpty();
667                }
668                return super.eIsSet(featureID);
669        }
670 
671        /**
672         * <!-- begin-user-doc -->
673         * <!-- end-user-doc -->
674         * @generated
675         */
676        @Override
677        public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
678                if (baseClass == ComposedStructure.class) {
679                        switch (derivedFeatureID) {
680                                case SystemPackage.SYSTEM__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE: return CompositionPackage.COMPOSED_STRUCTURE__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE;
681                                case SystemPackage.SYSTEM__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE: return CompositionPackage.COMPOSED_STRUCTURE__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE;
682                                case SystemPackage.SYSTEM__EVENT_CHANNEL_COMPOSED_STRUCTURE: return CompositionPackage.COMPOSED_STRUCTURE__EVENT_CHANNEL_COMPOSED_STRUCTURE;
683                                case SystemPackage.SYSTEM__CONNECTORS_COMPOSED_STRUCTURE: return CompositionPackage.COMPOSED_STRUCTURE__CONNECTORS_COMPOSED_STRUCTURE;
684                                default: return -1;
685                        }
686                }
687                if (baseClass == InterfaceProvidingEntity.class) {
688                        switch (derivedFeatureID) {
689                                case SystemPackage.SYSTEM__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY: return EntityPackage.INTERFACE_PROVIDING_ENTITY__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY;
690                                default: return -1;
691                        }
692                }
693                if (baseClass == ResourceInterfaceRequiringEntity.class) {
694                        switch (derivedFeatureID) {
695                                case SystemPackage.SYSTEM__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY: return EntityPackage.RESOURCE_INTERFACE_REQUIRING_ENTITY__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY;
696                                default: return -1;
697                        }
698                }
699                if (baseClass == InterfaceRequiringEntity.class) {
700                        switch (derivedFeatureID) {
701                                case SystemPackage.SYSTEM__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY: return EntityPackage.INTERFACE_REQUIRING_ENTITY__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY;
702                                default: return -1;
703                        }
704                }
705                if (baseClass == InterfaceProvidingRequiringEntity.class) {
706                        switch (derivedFeatureID) {
707                                default: return -1;
708                        }
709                }
710                if (baseClass == ComposedProvidingRequiringEntity.class) {
711                        switch (derivedFeatureID) {
712                                default: return -1;
713                        }
714                }
715                return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
716        }
717 
718        /**
719         * <!-- begin-user-doc -->
720         * <!-- end-user-doc -->
721         * @generated
722         */
723        @Override
724        public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
725                if (baseClass == ComposedStructure.class) {
726                        switch (baseFeatureID) {
727                                case CompositionPackage.COMPOSED_STRUCTURE__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE: return SystemPackage.SYSTEM__ASSEMBLY_CONTEXTS_COMPOSED_STRUCTURE;
728                                case CompositionPackage.COMPOSED_STRUCTURE__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE: return SystemPackage.SYSTEM__RESOURCE_REQUIRED_DELEGATION_CONNECTORS_COMPOSED_STRUCTURE;
729                                case CompositionPackage.COMPOSED_STRUCTURE__EVENT_CHANNEL_COMPOSED_STRUCTURE: return SystemPackage.SYSTEM__EVENT_CHANNEL_COMPOSED_STRUCTURE;
730                                case CompositionPackage.COMPOSED_STRUCTURE__CONNECTORS_COMPOSED_STRUCTURE: return SystemPackage.SYSTEM__CONNECTORS_COMPOSED_STRUCTURE;
731                                default: return -1;
732                        }
733                }
734                if (baseClass == InterfaceProvidingEntity.class) {
735                        switch (baseFeatureID) {
736                                case EntityPackage.INTERFACE_PROVIDING_ENTITY__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY: return SystemPackage.SYSTEM__PROVIDED_ROLES_INTERFACE_PROVIDING_ENTITY;
737                                default: return -1;
738                        }
739                }
740                if (baseClass == ResourceInterfaceRequiringEntity.class) {
741                        switch (baseFeatureID) {
742                                case EntityPackage.RESOURCE_INTERFACE_REQUIRING_ENTITY__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY: return SystemPackage.SYSTEM__RESOURCE_REQUIRED_ROLES_RESOURCE_INTERFACE_REQUIRING_ENTITY;
743                                default: return -1;
744                        }
745                }
746                if (baseClass == InterfaceRequiringEntity.class) {
747                        switch (baseFeatureID) {
748                                case EntityPackage.INTERFACE_REQUIRING_ENTITY__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY: return SystemPackage.SYSTEM__REQUIRED_ROLES_INTERFACE_REQUIRING_ENTITY;
749                                default: return -1;
750                        }
751                }
752                if (baseClass == InterfaceProvidingRequiringEntity.class) {
753                        switch (baseFeatureID) {
754                                default: return -1;
755                        }
756                }
757                if (baseClass == ComposedProvidingRequiringEntity.class) {
758                        switch (baseFeatureID) {
759                                default: return -1;
760                        }
761                }
762                return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
763        }
764 
765        /**
766         * The cached environment for evaluating OCL expressions.
767         * <!-- begin-user-doc -->
768         * <!-- end-user-doc -->
769         * @generated
770         * @ordered
771         */
772        protected static final OCL EOCL_ENV = OCL.newInstance();
773 
774} //SystemImpl

[all classes][de.uka.ipd.sdq.pcm.system.impl]
EMMA 2.0.9414 (unsupported private build) (C) Vladimir Roubtsov