edu.cmu.sei.aadl.model.instance.impl
Class SystemInstanceImpl

java.lang.Object
  extended by org.eclipse.emf.common.notify.impl.BasicNotifierImpl
      extended by org.eclipse.emf.ecore.impl.BasicEObjectImpl
          extended by org.eclipse.emf.ecore.impl.EObjectImpl
              extended by edu.cmu.sei.aadl.model.core.impl.AObjectImpl
                  extended by edu.cmu.sei.aadl.model.core.impl.NamedElementImpl
                      extended by edu.cmu.sei.aadl.model.core.impl.PropertyHolderImpl
                          extended by edu.cmu.sei.aadl.model.instance.impl.InstanceObjectImpl
                              extended by edu.cmu.sei.aadl.model.instance.impl.ComponentInstanceImpl
                                  extended by edu.cmu.sei.aadl.model.instance.impl.SystemInstanceImpl
All Implemented Interfaces:
AObject, NamedElement, PropertyHolder, ComponentInstance, InstanceObject, SystemInstance, org.eclipse.core.runtime.IAdaptable, org.eclipse.emf.common.notify.Notifier, org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.InternalEObject

public class SystemInstanceImpl
extends ComponentInstanceImpl
implements SystemInstance

An implementation of the model object 'System Instance'.

The following features are implemented:


Nested Class Summary
 
Nested classes/interfaces inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl
org.eclipse.emf.ecore.impl.BasicEObjectImpl.EPropertiesHolder, org.eclipse.emf.ecore.impl.BasicEObjectImpl.EPropertiesHolderBaseImpl, org.eclipse.emf.ecore.impl.BasicEObjectImpl.EPropertiesHolderImpl
 
Nested classes/interfaces inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EAdapterList<E extends java.lang.Object & org.eclipse.emf.common.notify.Adapter>
 
Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.InternalEObject
org.eclipse.emf.ecore.InternalEObject.EStore
 
Field Summary
protected  ClassifierReference classifierReference
          holds classifier reference object for parsing
protected  org.eclipse.emf.common.util.EList connectionInstance
          The cached value of the 'Connection Instance' containment reference list
static java.lang.String copyright
           
protected  SystemImpl systemImpl
          The cached value of the 'System Impl' reference
protected  org.eclipse.emf.common.util.EList systemOperationMode
          The cached value of the 'System Operation Mode' containment reference list
 
Fields inherited from class edu.cmu.sei.aadl.model.instance.impl.ComponentInstanceImpl
category, CATEGORY_EDEFAULT, componentInstance, endToEndFlowInstance, featureInstance, flowSpecInstance, inModes, modeInstance, modeTransitionInstance, srcAccessConnection, subcomponent
 
Fields inherited from class edu.cmu.sei.aadl.model.core.impl.PropertyHolderImpl
properties
 
Fields inherited from class edu.cmu.sei.aadl.model.core.impl.NamedElementImpl
name, NAME_EDEFAULT
 
Fields inherited from class edu.cmu.sei.aadl.model.core.impl.AObjectImpl
comment, locationReference
 
Fields inherited from class org.eclipse.emf.ecore.impl.EObjectImpl
eAdapters, eContainer, eContainerFeatureID, EDELIVER, EDYNAMIC_CLASS, eFlags, ELAST_EOBJECT_FLAG, ELAST_NOTIFIER_FLAG, eProperties, EPROXY
 
Fields inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl
EVIRTUAL_GET, EVIRTUAL_IS_SET, EVIRTUAL_NO_VALUE, EVIRTUAL_SET, EVIRTUAL_UNSET
 
Fields inherited from interface org.eclipse.emf.ecore.InternalEObject
EOPPOSITE_FEATURE_BASE
 
Constructor Summary
protected SystemInstanceImpl()
           
 
Method Summary
 void addConnectionInstance(ConnectionInstance newConnectionInstance)
          phf: add element to multiplicity EList
 void addSystemOperationMode(SystemOperationMode newSystemOperationMode)
          phf: add element to multiplicity EList
 SystemImpl basicGetSystemImpl()
           
 void clearCurrentSystemOperationMode()
          Clear the mode states for a given SystemInstance.
 java.lang.Object eGet(int featureID, boolean resolve, boolean coreType)
           
 org.eclipse.emf.common.notify.NotificationChain eInverseRemove(org.eclipse.emf.ecore.InternalEObject otherEnd, int featureID, org.eclipse.emf.common.notify.NotificationChain msgs)
           
 boolean eIsSet(int featureID)
           
 void eSet(int featureID, java.lang.Object newValue)
           
protected  org.eclipse.emf.ecore.EClass eStaticClass()
           
 void eUnset(int featureID)
           
 boolean exists()
          Does the component exist in the current system operation mode of its containing system instance?
static org.eclipse.emf.common.util.EList filterByCurrentSOM(InstanceObject current, org.eclipse.emf.common.util.EList modalInstances)
          Helper method that is used by other instance implementations to filter connections instances and end to end flow instances based on the current system operation mode of the system instance that contains the object.
 ConnectionInstance findConnectionInstance(FeatureInstance srcFI, FeatureInstance dstFI)
          find the Connection instance for these feature instances.
 org.eclipse.emf.common.util.EList getChildren()
          get the children of a ComponentInstance object This will be the content or in case of modal ComponentInstance the subset that is active in a given mode
 ClassifierReference getClassifierReference()
          Returns the value of the 'Impl Name' attribute.
 org.eclipse.emf.common.util.EList getConnectionInstance()
           
 SystemOperationMode getCurrentSystemOperationMode()
          Get the current system operation mode of the system, or null if it has not been set.
protected  java.util.List getExistsInModes()
          Returns the System Operation Modes in which the element exists, or null if the element always exists.
 SystemOperationMode getInitialSystemOperationMode()
          Get the initial system operation mode, that is, the one whose member modes are all initial modes.
 java.util.List getInstantiatedObjects()
          Return the declarative objects that define this instance.
 SystemImpl getSystemImpl()
           
 org.eclipse.emf.common.util.EList getSystemOperationMode()
           
 java.util.List getSystemOperationModesFor(java.util.List mis)
          get all SOMs that contain the ModeInstance list
 java.util.List getSystemOperationModesFor(ModeInstance mi)
          get all SOMs that contain the mode instance
 ComponentClassifier getXComponentClassifier()
          Get the ComponentClassifierassociated with this component instance.
 ComponentImpl getXComponentImpl()
          Get the ComponentImplassociated with this component instance.
 ComponentType getXComponentType()
          Get the ComponentTypeassociated with this component instance.
 void setClassifierReference(ClassifierReference cr)
          set reference names from ClassifierReference
 void setCurrentSystemOperationMode(SystemOperationMode som)
          Sets the current modes of the component instances contained in this system instance to match the state of the specified system operation mode.
 void setSystemImpl(SystemImpl newSystemImpl)
           
 void setSystemOperationMode(SystemOperationMode som)
          Sets the current modes of the component instances contained in this system instance to match the state of the specified system operation mode.
 
Methods inherited from class edu.cmu.sei.aadl.model.instance.impl.ComponentInstanceImpl
acceptsProperty, addComponentInstance, addEndToEndFlowInstance, addFeatureInstance, addFlowSpecInstance, addInModes, addModeInstance, addModeTransitionInstance, addSrcAccessConnection, basicGetSubcomponent, doFlowSpecInstances, doGetPreOrderComponentInstance, eInverseAdd, findConnectionInstance, findEndToEndFlowInstance, findFeatureInstance, findFlowSpecInstance, findFlowSpecInstance, findInstanceObject, findModeInstance, findModeTransitionInstance, findSubcomponentInstance, getAllComponentInstances, getCategory, getChildren, getComponentInstance, getComponentInstance, getCurrentMode, getEndToEndFlowInstance, getFeatureInstance, getFlowSpecInstance, getIncomingConnection, getIngoingConnection, getInModes, getModeInstance, getModeTransitionInstance, getOutcomingConnection, getOutgoingAccessConnection, getOutgoingConnection, getPreOrderComponentInstance, getReferencePathTo, getReferenceTo, getSecondReferencedObject, getSrcAccessConnection, getSubcomponent, isModal, isModalSubcomponent, setCategory, setCurrentMode, setSubcomponent, testClassifier, toString
 
Methods inherited from class edu.cmu.sei.aadl.model.instance.impl.InstanceObjectImpl
createAccumulator, getComponentInstanceList, getComponentInstancePath, getContainingComponentInstance, getContainingComponentInstanceOrSelf, getInstanceObjectPath, getPropertyValueFromDeclarativeModel, getPropertyValueInternal, getSystemInstance
 
Methods inherited from class edu.cmu.sei.aadl.model.core.impl.PropertyHolderImpl
addProperty, addPropertyValue, basicSetProperties, checkPropertyAssociation, createPropertyAssociation, findPropertyAssociation, getProperties, getPropertyAssociation, getPropertyValue, getPropertyValueList, getSimplePropertyValue, isModalPropertyValue, removeContainedPropertyAssociations, removeContainedPropertyAssociations, removePropertyAssociations, removePropertyAssociations, setContainedPropertyValue, setContainedPropertyValue, setContainedPropertyValue, setContainedPropertyValue, setProperties, setPropertyValue, setPropertyValue, setPropertyValue, setPropertyValue
 
Methods inherited from class edu.cmu.sei.aadl.model.core.impl.NamedElementImpl
checkName, getName, setName
 
Methods inherited from class edu.cmu.sei.aadl.model.core.impl.AObjectImpl
addComment, eObjectForURIFragmentSegment, eURIFragmentSegment, getAadlSpec, getAdapter, getAObjectRoot, getComment, getContainingClassifier, getContainingClassifierNameSpace, getContainingComponentImpl, getContainingComponentType, getContainingPropertyAssociationDefinitionConstant, getContainingSubcomponent, getLocationReference, getReferencedObject, setLocationReference, setLocationReference
 
Methods inherited from class org.eclipse.emf.ecore.impl.EObjectImpl
eAdapters, eBasicAdapters, eBasicProperties, eBasicSetContainer, eClass, eContainerFeatureID, eDeliver, eInternalContainer, eIsProxy, eProperties, eSetClass, eSetDeliver, eSetProxyURI
 
Methods inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl
eAddVirtualValue, eAllContents, eBaseStructuralFeatureID, eBasicRemoveFromContainer, eBasicRemoveFromContainerFeature, eBasicSetContainer, eComputeVirtualValuesCapacity, eContainer, eContainingFeature, eContainmentFeature, eContainmentFeature, eContains, eContents, eCrossReferences, eDerivedStructuralFeatureID, eDerivedStructuralFeatureID, eDirectResource, eDynamicBasicRemoveFromContainer, eDynamicClass, eDynamicFeature, eDynamicFeatureID, eDynamicGet, eDynamicGet, eDynamicGet, eDynamicInverseAdd, eDynamicInverseAdd, eDynamicInverseRemove, eDynamicInverseRemove, eDynamicIsSet, eDynamicIsSet, eDynamicIsSet, eDynamicSet, eDynamicSet, eDynamicSet, eDynamicUnset, eDynamicUnset, eDynamicUnset, eGet, eGet, eGet, eHasSettings, eInternalResource, eInverseAdd, eInverseRemove, eIsSet, eOpenGet, eOpenIsSet, eOpenSet, eOpenUnset, eProxyURI, eRemoveVirtualValue, eResolveProxy, eResource, eSet, eSetDirectResource, eSetResource, eSetStore, eSetting, eSettingDelegate, eSettings, eSetVirtualIndexBits, eSetVirtualValue, eSetVirtualValues, eStaticFeatureCount, eStore, eUnset, eVirtualBitCount, eVirtualGet, eVirtualGet, eVirtualIndex, eVirtualIndexBits, eVirtualIsSet, eVirtualSet, eVirtualUnset, eVirtualValue, eVirtualValues
 
Methods inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
eNotificationRequired, eNotify
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface edu.cmu.sei.aadl.model.instance.ComponentInstance
addComponentInstance, addEndToEndFlowInstance, addFeatureInstance, addFlowSpecInstance, addInModes, addModeInstance, addModeTransitionInstance, addSrcAccessConnection, doFlowSpecInstances, findConnectionInstance, findEndToEndFlowInstance, findFeatureInstance, findFlowSpecInstance, findFlowSpecInstance, findInstanceObject, findModeInstance, findModeTransitionInstance, findSubcomponentInstance, getAllComponentInstances, getCategory, getChildren, getComponentInstance, getComponentInstance, getCurrentMode, getEndToEndFlowInstance, getFeatureInstance, getFlowSpecInstance, getIncomingConnection, getIngoingConnection, getInModes, getModeInstance, getModeTransitionInstance, getOutcomingConnection, getOutgoingAccessConnection, getOutgoingConnection, getPreOrderComponentInstance, getReferencePathTo, getReferenceTo, getSrcAccessConnection, getSubcomponent, isModal, isModalSubcomponent, setCategory, setCurrentMode, setSubcomponent, testClassifier
 
Methods inherited from interface edu.cmu.sei.aadl.model.instance.InstanceObject
getComponentInstanceList, getComponentInstancePath, getContainingComponentInstance, getInstanceObjectPath, getSystemInstance
 
Methods inherited from interface edu.cmu.sei.aadl.model.core.PropertyHolder
acceptsProperty, addProperty, addPropertyValue, checkPropertyAssociation, findPropertyAssociation, getProperties, getPropertyAssociation, getPropertyValue, getPropertyValueInternal, getPropertyValueList, getSimplePropertyValue, isModalPropertyValue, removeContainedPropertyAssociations, removeContainedPropertyAssociations, removePropertyAssociations, removePropertyAssociations, setContainedPropertyValue, setContainedPropertyValue, setContainedPropertyValue, setContainedPropertyValue, setProperties, setPropertyValue, setPropertyValue, setPropertyValue, setPropertyValue
 
Methods inherited from interface edu.cmu.sei.aadl.model.core.NamedElement
getName, setName
 
Methods inherited from interface edu.cmu.sei.aadl.model.core.AObject
addComment, getAadlSpec, getAObjectRoot, getComment, getContainingClassifier, getContainingClassifierNameSpace, getContainingComponentImpl, getContainingComponentType, getContainingPropertyAssociationDefinitionConstant, getContainingSubcomponent, getLocationReference, getReferencedObject, getSecondReferencedObject, setLocationReference, setLocationReference
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 
Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
 
Methods inherited from interface org.eclipse.emf.ecore.InternalEObject
eNotificationRequired
 

Field Detail

copyright

public static final java.lang.String copyright

See Also:
Constant Field Values

classifierReference

protected ClassifierReference classifierReference
holds classifier reference object for parsing


systemImpl

protected SystemImpl systemImpl
The cached value of the 'System Impl' reference.

See Also:
getSystemImpl()

connectionInstance

protected org.eclipse.emf.common.util.EList connectionInstance
The cached value of the 'Connection Instance' containment reference list.

See Also:
getConnectionInstance()

systemOperationMode

protected org.eclipse.emf.common.util.EList systemOperationMode
The cached value of the 'System Operation Mode' containment reference list.

See Also:
getSystemOperationMode()
Constructor Detail

SystemInstanceImpl

protected SystemInstanceImpl()

Method Detail

eStaticClass

protected org.eclipse.emf.ecore.EClass eStaticClass()

Overrides:
eStaticClass in class ComponentInstanceImpl

getSystemImpl

public SystemImpl getSystemImpl()

Specified by:
getSystemImpl in interface SystemInstance
Returns:
the value of the 'System Impl' reference.
See Also:
SystemInstance.setSystemImpl(SystemImpl), InstancePackage.getSystemInstance_SystemImpl()

basicGetSystemImpl

public SystemImpl basicGetSystemImpl()


setSystemImpl

public void setSystemImpl(SystemImpl newSystemImpl)

Specified by:
setSystemImpl in interface SystemInstance
Parameters:
newSystemImpl - the new value of the 'System Impl' reference.
See Also:
SystemInstance.getSystemImpl()

getConnectionInstance

public org.eclipse.emf.common.util.EList getConnectionInstance()

Specified by:
getConnectionInstance in interface SystemInstance
Returns:
the value of the 'Connection Instance' containment reference list.
See Also:
InstancePackage.getSystemInstance_ConnectionInstance()

addConnectionInstance

public void addConnectionInstance(ConnectionInstance newConnectionInstance)
phf: add element to multiplicity EList

Specified by:
addConnectionInstance in interface SystemInstance
Parameters:
newConnectionInstance - the value to add to 'Connection Instance' containment reference list.

getSystemOperationMode

public org.eclipse.emf.common.util.EList getSystemOperationMode()

Specified by:
getSystemOperationMode in interface SystemInstance
Returns:
the value of the 'System Operation Mode' containment reference list.
See Also:
InstancePackage.getSystemInstance_SystemOperationMode()

addSystemOperationMode

public void addSystemOperationMode(SystemOperationMode newSystemOperationMode)
phf: add element to multiplicity EList

Specified by:
addSystemOperationMode in interface SystemInstance
Parameters:
newSystemOperationMode - the value to add to 'System Operation Mode' containment reference list.

eInverseRemove

public org.eclipse.emf.common.notify.NotificationChain eInverseRemove(org.eclipse.emf.ecore.InternalEObject otherEnd,
                                                                      int featureID,
                                                                      org.eclipse.emf.common.notify.NotificationChain msgs)

Overrides:
eInverseRemove in class ComponentInstanceImpl

eGet

public java.lang.Object eGet(int featureID,
                             boolean resolve,
                             boolean coreType)

Specified by:
eGet in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eGet in class ComponentInstanceImpl

eSet

public void eSet(int featureID,
                 java.lang.Object newValue)

Specified by:
eSet in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eSet in class ComponentInstanceImpl

eUnset

public void eUnset(int featureID)

Specified by:
eUnset in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eUnset in class ComponentInstanceImpl

eIsSet

public boolean eIsSet(int featureID)

Specified by:
eIsSet in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eIsSet in class ComponentInstanceImpl

getSystemOperationModesFor

public java.util.List getSystemOperationModesFor(ModeInstance mi)
get all SOMs that contain the mode instance

Specified by:
getSystemOperationModesFor in interface SystemInstance
Parameters:
mi - Mode Instance
Returns:
List of SOM that contains the mode instance

getSystemOperationModesFor

public java.util.List getSystemOperationModesFor(java.util.List mis)
get all SOMs that contain the ModeInstance list

Specified by:
getSystemOperationModesFor in interface SystemInstance
Parameters:
mis - List of mode instances
Returns:
SOM that match the ModeInstance list

setClassifierReference

public void setClassifierReference(ClassifierReference cr)
set reference names from ClassifierReference

Specified by:
setClassifierReference in interface SystemInstance

getClassifierReference

public ClassifierReference getClassifierReference()
Description copied from interface: SystemInstance
Returns the value of the 'Impl Name' attribute.

Specified by:
getClassifierReference in interface SystemInstance

getInstantiatedObjects

public final java.util.List getInstantiatedObjects()
Description copied from class: InstanceObjectImpl
Return the declarative objects that define this instance. Most of the time this will return a singleton list. But in the case of semantic connections, it will return a list of connection objects.

Specified by:
getInstantiatedObjects in interface InstanceObject
Overrides:
getInstantiatedObjects in class ComponentInstanceImpl
Returns:
A List of PropertyHolder objects that should be declarative model elements. Returns an empty list if no named declarative object exists, such as in the case of ModeTransitionInstances.

getExistsInModes

protected final java.util.List getExistsInModes()
Description copied from class: InstanceObjectImpl
Returns the System Operation Modes in which the element exists, or null if the element always exists.

Overrides:
getExistsInModes in class ComponentInstanceImpl

getXComponentImpl

public ComponentImpl getXComponentImpl()
Get the ComponentImplassociated with this component instance.

Specified by:
getXComponentImpl in interface ComponentInstance
Overrides:
getXComponentImpl in class ComponentInstanceImpl
Returns:
The component implementation associated with this instance, or null if one cannot be found.

getXComponentType

public ComponentType getXComponentType()
Get the ComponentTypeassociated with this component instance.

Specified by:
getXComponentType in interface ComponentInstance
Overrides:
getXComponentType in class ComponentInstanceImpl
Returns:
The component implementation associated with this instance, or null if one cannot be found.

getXComponentClassifier

public ComponentClassifier getXComponentClassifier()
Get the ComponentClassifierassociated with this component instance.

Specified by:
getXComponentClassifier in interface ComponentInstance
Overrides:
getXComponentClassifier in class ComponentInstanceImpl
Returns:
The component classsifier associated with this instance, or null if one cannot be found.

setCurrentSystemOperationMode

public void setCurrentSystemOperationMode(SystemOperationMode som)
Description copied from interface: SystemInstance
Sets the current modes of the component instances contained in this system instance to match the state of the specified system operation mode. The system operation mode is also set globally on the system instance. There is an invariant over the instance model that if the current system operation mode of the root system instance is non-null, then the "current mode" state of the component instances in the model match that state.

Specified by:
setCurrentSystemOperationMode in interface SystemInstance
Parameters:
som - SystemOperationMode whose values are used to set the currentMode in the instance model
See Also:
SystemInstance.clearCurrentSystemOperationMode(), SystemInstance.getCurrentSystemOperationMode()

setSystemOperationMode

public final void setSystemOperationMode(SystemOperationMode som)
Description copied from interface: SystemInstance
Sets the current modes of the component instances contained in this system instance to match the state of the specified system operation mode. The system operation mode is also set globally on the system instance. There is an invariant over the instance model that if the current system operation mode of the root system instance is non-null, then the "current mode" state of the component instances in the model match that state.

Specified by:
setSystemOperationMode in interface SystemInstance
Parameters:
som - SystemOperationMode whose values are used to set the currentMode in the instance model
See Also:
SystemInstance.clearCurrentSystemOperationMode(), SystemInstance.getCurrentSystemOperationMode()

getCurrentSystemOperationMode

public SystemOperationMode getCurrentSystemOperationMode()
Description copied from interface: SystemInstance
Get the current system operation mode of the system, or null if it has not been set.

Specified by:
getCurrentSystemOperationMode in interface SystemInstance

clearCurrentSystemOperationMode

public void clearCurrentSystemOperationMode()
Clear the mode states for a given SystemInstance. That is, the modal adapters for the model all have their modes set to null.

Specified by:
clearCurrentSystemOperationMode in interface SystemInstance

getInitialSystemOperationMode

public final SystemOperationMode getInitialSystemOperationMode()
Description copied from interface: SystemInstance
Get the initial system operation mode, that is, the one whose member modes are all initial modes. If the system instance is non-modal, that is, does not contain any components that have modes, then the initial mode is the special "No Modes" system operation mode that refers to an empty list of mode instances.

Specified by:
getInitialSystemOperationMode in interface SystemInstance

getChildren

public final org.eclipse.emf.common.util.EList getChildren()
get the children of a ComponentInstance object This will be the content or in case of modal ComponentInstance the subset that is active in a given mode

Specified by:
getChildren in interface AObject
Specified by:
getChildren in interface ComponentInstance
Overrides:
getChildren in class ComponentInstanceImpl
Returns:
EList AObject

exists

public final boolean exists()
Description copied from interface: ComponentInstance
Does the component exist in the current system operation mode of its containing system instance? A component exists if it is the system instance, or if its parent exists and the component exists in the current mode of its parent. A component exists in the current mode of its parent if the component is not a modal subcomponent or if the current mode of the parent is contained in the component's mode list.

If the containing system instance does not have a current system operation mode set, then this returns true.

Specified by:
exists in interface ComponentInstance
Overrides:
exists in class ComponentInstanceImpl

filterByCurrentSOM

public static org.eclipse.emf.common.util.EList filterByCurrentSOM(InstanceObject current,
                                                                   org.eclipse.emf.common.util.EList modalInstances)
Helper method that is used by other instance implementations to filter connections instances and end to end flow instances based on the current system operation mode of the system instance that contains the object. If the parent object is not part of a system instance, then the input list object is returned. If the current SOM is null then this method returns the input list object. Otherwise, it creates a new list and adds only those objects in the input list that exist in the current system operation mode.

Parameters:
current - The object on whose behalf this filtering is being performed.
modalInstances - A list of ConnectionInstance objects or EndToEndFlowInstance objects.
Returns:
descibed above

findConnectionInstance

public ConnectionInstance findConnectionInstance(FeatureInstance srcFI,
                                                 FeatureInstance dstFI)
find the Connection instance for these feature instances. The connection instance may point to the enclosing port group instance The connection instance may go through the feature to a subcomponent instance

Specified by:
findConnectionInstance in interface SystemInstance
Parameters:
srcFI - source feature instance
dstFI - destination feature instance
Returns:
Connection instance with the specified source and destination