edu.cmu.sei.aadl.aadl2.instance
Interface ComponentInstance

All Superinterfaces:
AObject, ConnectionInstanceEnd, Element, org.eclipse.emf.ecore.EObject, FlowElementInstance, org.eclipse.core.runtime.IAdaptable, InstanceObject, NamedElement, org.eclipse.emf.common.notify.Notifier
All Known Subinterfaces:
SystemInstance
All Known Implementing Classes:
ComponentInstanceImpl, SystemInstanceImpl

public interface ComponentInstance
extends ConnectionInstanceEnd, FlowElementInstance

A representation of the model object 'Component Instance'.

The following features are supported:

See Also:
InstancePackage.getComponentInstance()

Field Summary
 
Fields inherited from interface edu.cmu.sei.aadl.aadl2.parsesupport.AObject
copyright
 
Method Summary
 ComponentInstance createComponentInstance()
          Creates a new ComponentInstance and appends it to the 'Component Instance' containment reference list
 ComponentInstance createComponentInstance(org.eclipse.emf.ecore.EClass eClass)
          Creates a new ComponentInstance and appends it to the 'Component Instance' containment reference list
 ConnectionInstance createConnectionInstance()
          Creates a new ConnectionInstance and appends it to the 'Connection Instance' containment reference list
 EndToEndFlowInstance createEndToEndFlow()
          Creates a new EndToEndFlowInstance and appends it to the 'End To End Flow' containment reference list
 FeatureInstance createFeatureInstance()
          Creates a new FeatureInstance and appends it to the 'Feature Instance' containment reference list
 FlowSpecificationInstance createFlowSpecification()
          Creates a new FlowSpecificationInstance and appends it to the 'Flow Specification' containment reference list
 ModeInstance createModeInstance()
          Creates a new ModeInstance and appends it to the 'Mode Instance' containment reference list
 ModeTransitionInstance createModeTransitionInstance()
          Creates a new ModeTransitionInstance and appends it to the 'Mode Transition Instance' containment reference list
 org.eclipse.emf.common.util.EList<ConnectionInstance> findConnectionInstance(Connection conn)
          Find the semantic connection instances that pass through this component instance that utilize the given connection.
 EndToEndFlowInstance findEndToEndFlowInstance(EndToEndFlow ete)
          Find the end to end flow instance of this component that corresponds to the given end to end flow.
 FeatureInstance findFeatureInstance(Feature feature)
          find the feature instance of this component instance
 FlowSpecificationInstance findFlowSpecInstance(FlowSpecification flowspec)
          find the flowspec instance of this component instance
 java.util.Collection<? extends InstanceObject> findInstanceObjects(org.eclipse.emf.common.util.EList<ContainmentPathElement> referencePath)
          Find the instance object based on the referencePath relative to this component instance.
 ModeInstance findModeInstance(Mode mode)
          find the mode instance of this component instance
 ModeTransitionInstance findModeTransitionInstance(ModeTransition mt)
          find the mode transition instance of this component instance
 ComponentInstance findSubcomponentInstance(Subcomponent sc)
          find the subcomponent instance of this component instance This method is sensitive to the current system operation mode of the containing system instance.
 org.eclipse.emf.common.util.EList<ComponentInstance> getAllComponentInstances()
          Return all component instances in the containment structure rooted at this component, including this component.
 ComponentCategory getCategory()
          Returns the value of the 'Category' attribute.
 org.eclipse.emf.common.util.EList<ComponentInstance> getComponentInstances()
          Returns the value of the 'Component Instance' containment reference list.
 org.eclipse.emf.common.util.EList<ConnectionInstance> getConnectionInstances()
          Returns the value of the 'Connection Instance' containment reference list.
 org.eclipse.emf.common.util.EList<EndToEndFlowInstance> getEndToEndFlows()
          Returns the value of the 'End To End Flow' containment reference list.
 org.eclipse.emf.common.util.EList<FeatureInstance> getFeatureInstances()
          Returns the value of the 'Feature Instance' containment reference list.
 org.eclipse.emf.common.util.EList<FlowSpecificationInstance> getFlowSpecifications()
          Returns the value of the 'Flow Specification' containment reference list.
 org.eclipse.emf.common.util.EList<java.lang.Long> getIndices()
          Returns the value of the 'Index' attribute list.
 org.eclipse.emf.common.util.EList<ModeInstance> getInModes()
          Returns the value of the 'In Modes' reference list.
 org.eclipse.emf.common.util.EList<ModeInstance> getModeInstances()
          Returns the value of the 'Mode Instance' containment reference list.
 org.eclipse.emf.common.util.EList<ModeTransitionInstance> getModeTransitionInstances()
          Returns the value of the 'Mode Transition Instance' containment reference list.
 Subcomponent getSubcomponent()
          Returns the value of the 'Subcomponent' reference
 void setCategory(ComponentCategory value)
          Sets the value of the 'Category' attribute
 void setCurrentMode(ModeInstance mode)
          Project this component into the given mode.
 void setSubcomponent(Subcomponent value)
          Sets the value of the 'Subcomponent' reference
 
Methods inherited from interface edu.cmu.sei.aadl.aadl2.instance.ConnectionInstanceEnd
getDstConnectionInstances, getSrcConnectionInstances
 
Methods inherited from interface edu.cmu.sei.aadl.aadl2.instance.InstanceObject
getComponentInstancePath, getContainingComponentInstance, getExistsInModes, getInstanceObjectPath, getInstantiatedObjects, getSystemInstance, isActive
 
Methods inherited from interface edu.cmu.sei.aadl.aadl2.NamedElement
acceptsProperty, allNamespaces, checkPropertyAssociation, createOwnedPropertyAssociation, getName, getNamespace, getOwnedPropertyAssociations, getPropertyValue, getPropertyValueInternal, getPropertyValueList, getQualifiedName, getSimplePropertyValue, has_no_qualified_name, has_qualified_name, hasName, isDistinguishableFrom, qualifiedName, removePropertyAssociations, removePropertyAssociations, separator, setName, setPropertyValue, setPropertyValue, setPropertyValue
 
Methods inherited from interface edu.cmu.sei.aadl.aadl2.Element
allOwnedElements, createOwnedComment, getChildren, getContainingClassifier, getContainingComponentImpl, getElementRoot, getOwnedComments, getOwnedElements, getOwner, has_owner, mustBeOwned, not_own_self
 
Methods inherited from interface edu.cmu.sei.aadl.aadl2.parsesupport.AObject
getLocationReference, setLocationReference, setLocationReference
 
Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
 

Method Detail

getFeatureInstances

org.eclipse.emf.common.util.EList<FeatureInstance> getFeatureInstances()
Returns the value of the 'Feature Instance' containment reference list. The list contents are of type FeatureInstance.

If the meaning of the 'Feature Instance' containment reference list isn't clear, there really should be more of a description here...

Returns:
the value of the 'Feature Instance' containment reference list.
See Also:
InstancePackage.getComponentInstance_FeatureInstance()

createFeatureInstance

FeatureInstance createFeatureInstance()
Creates a new FeatureInstance and appends it to the 'Feature Instance' containment reference list.

Returns:
The new FeatureInstance.
See Also:
getFeatureInstances()

getComponentInstances

org.eclipse.emf.common.util.EList<ComponentInstance> getComponentInstances()
Returns the value of the 'Component Instance' containment reference list. The list contents are of type ComponentInstance.

If the meaning of the 'Component Instance' containment reference list isn't clear, there really should be more of a description here...

Returns:
the value of the 'Component Instance' containment reference list.
See Also:
InstancePackage.getComponentInstance_ComponentInstance()

createComponentInstance

ComponentInstance createComponentInstance(org.eclipse.emf.ecore.EClass eClass)
Creates a new ComponentInstance and appends it to the 'Component Instance' containment reference list.

Parameters:
eClass - The Ecore class of the ComponentInstance to create.
Returns:
The new ComponentInstance.
See Also:
getComponentInstances()

createComponentInstance

ComponentInstance createComponentInstance()
Creates a new ComponentInstance and appends it to the 'Component Instance' containment reference list.

Returns:
The new ComponentInstance.
See Also:
getComponentInstances()

getSubcomponent

Subcomponent getSubcomponent()
Returns the value of the 'Subcomponent' reference.

If the meaning of the 'Subcomponent' reference isn't clear, there really should be more of a description here...

Returns:
the value of the 'Subcomponent' reference.
See Also:
setSubcomponent(Subcomponent), InstancePackage.getComponentInstance_Subcomponent()

setSubcomponent

void setSubcomponent(Subcomponent value)
Sets the value of the 'Subcomponent' reference.

Parameters:
value - the new value of the 'Subcomponent' reference.
See Also:
getSubcomponent()

getIndices

org.eclipse.emf.common.util.EList<java.lang.Long> getIndices()
Returns the value of the 'Index' attribute list. The list contents are of type Long.

If the meaning of the 'Index' attribute list isn't clear, there really should be more of a description here...

Returns:
the value of the 'Index' attribute list.
See Also:
InstancePackage.getComponentInstance_Index()

getModeInstances

org.eclipse.emf.common.util.EList<ModeInstance> getModeInstances()
Returns the value of the 'Mode Instance' containment reference list. The list contents are of type ModeInstance.

If the meaning of the 'Mode Instance' containment reference list isn't clear, there really should be more of a description here...

Returns:
the value of the 'Mode Instance' containment reference list.
See Also:
InstancePackage.getComponentInstance_ModeInstance()

createModeInstance

ModeInstance createModeInstance()
Creates a new ModeInstance and appends it to the 'Mode Instance' containment reference list.

Returns:
The new ModeInstance.
See Also:
getModeInstances()

getModeTransitionInstances

org.eclipse.emf.common.util.EList<ModeTransitionInstance> getModeTransitionInstances()
Returns the value of the 'Mode Transition Instance' containment reference list. The list contents are of type ModeTransitionInstance.

If the meaning of the 'Mode Transition Instance' containment reference list isn't clear, there really should be more of a description here...

Returns:
the value of the 'Mode Transition Instance' containment reference list.
See Also:
InstancePackage.getComponentInstance_ModeTransitionInstance()

createModeTransitionInstance

ModeTransitionInstance createModeTransitionInstance()
Creates a new ModeTransitionInstance and appends it to the 'Mode Transition Instance' containment reference list.

Returns:
The new ModeTransitionInstance.
See Also:
getModeTransitionInstances()

getCategory

ComponentCategory getCategory()
Returns the value of the 'Category' attribute. The literals are from the enumeration ComponentCategory.

If the meaning of the 'Category' attribute isn't clear, there really should be more of a description here...

Returns:
the value of the 'Category' attribute.
See Also:
ComponentCategory, setCategory(ComponentCategory), InstancePackage.getComponentInstance_Category()

setCategory

void setCategory(ComponentCategory value)
Sets the value of the 'Category' attribute.

Parameters:
value - the new value of the 'Category' attribute.
See Also:
ComponentCategory, getCategory()

getInModes

org.eclipse.emf.common.util.EList<ModeInstance> getInModes()
Returns the value of the 'In Modes' reference list. The list contents are of type ModeInstance.

If the meaning of the 'In Modes' reference list isn't clear, there really should be more of a description here...

Returns:
the value of the 'In Modes' reference list.
See Also:
InstancePackage.getComponentInstance_InModes()

getFlowSpecifications

org.eclipse.emf.common.util.EList<FlowSpecificationInstance> getFlowSpecifications()
Returns the value of the 'Flow Specification' containment reference list. The list contents are of type FlowSpecificationInstance.

If the meaning of the 'Flow Specification' containment reference list isn't clear, there really should be more of a description here...

Returns:
the value of the 'Flow Specification' containment reference list.
See Also:
InstancePackage.getComponentInstance_FlowSpecification()

createFlowSpecification

FlowSpecificationInstance createFlowSpecification()
Creates a new FlowSpecificationInstance and appends it to the 'Flow Specification' containment reference list.

Returns:
The new FlowSpecificationInstance.
See Also:
getFlowSpecifications()

getEndToEndFlows

org.eclipse.emf.common.util.EList<EndToEndFlowInstance> getEndToEndFlows()
Returns the value of the 'End To End Flow' containment reference list. The list contents are of type EndToEndFlowInstance.

If the meaning of the 'End To End Flow' containment reference list isn't clear, there really should be more of a description here...

Returns:
the value of the 'End To End Flow' containment reference list.
See Also:
InstancePackage.getComponentInstance_EndToEndFlow()

createEndToEndFlow

EndToEndFlowInstance createEndToEndFlow()
Creates a new EndToEndFlowInstance and appends it to the 'End To End Flow' containment reference list.

Returns:
The new EndToEndFlowInstance.
See Also:
getEndToEndFlows()

getConnectionInstances

org.eclipse.emf.common.util.EList<ConnectionInstance> getConnectionInstances()
Returns the value of the 'Connection Instance' containment reference list. The list contents are of type ConnectionInstance.

If the meaning of the 'Connection Instance' containment reference list isn't clear, there really should be more of a description here...

Returns:
the value of the 'Connection Instance' containment reference list.
See Also:
InstancePackage.getComponentInstance_ConnectionInstance()

createConnectionInstance

ConnectionInstance createConnectionInstance()
Creates a new ConnectionInstance and appends it to the 'Connection Instance' containment reference list.

Returns:
The new ConnectionInstance.
See Also:
getConnectionInstances()

findModeTransitionInstance

ModeTransitionInstance findModeTransitionInstance(ModeTransition mt)
find the mode transition instance of this component instance

Parameters:
mt - mode transition whose instance is to be found
Returns:
mode transition with the specified mode transition, or null

findModeInstance

ModeInstance findModeInstance(Mode mode)
find the mode instance of this component instance

Parameters:
mode - mode whose instance is to be found
Returns:
mode instance with the specified mode, or null

findSubcomponentInstance

ComponentInstance findSubcomponentInstance(Subcomponent sc)
find the subcomponent instance of this component instance

This method is sensitive to the current system operation mode of the containing system instance. The component instance corresponding to the subcomponent is only returned if it exists in the current som.

Parameters:
sc - subcomponent
Returns:
component instance with the specified subcomponent, or null

findFeatureInstance

FeatureInstance findFeatureInstance(Feature feature)
find the feature instance of this component instance

Parameters:
feature - feature whose instance is to be found
Returns:
feature instance with the specified feature, or null

setCurrentMode

void setCurrentMode(ModeInstance mode)
Project this component into the given mode. The mode must be an element of getModeInstances(). This method is only intended to be used internally. 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.

Parameters:
mode - The mode to project this component into, or null if it is not projected into any mode.

findFlowSpecInstance

FlowSpecificationInstance findFlowSpecInstance(FlowSpecification flowspec)
find the flowspec instance of this component instance

Parameters:
flowspec - flowspec whose instance is to be found
Returns:
flowspec instance with the specified flowspec, or null

findInstanceObjects

java.util.Collection<? extends InstanceObject> findInstanceObjects(org.eclipse.emf.common.util.EList<ContainmentPathElement> referencePath)
Find the instance object based on the referencePath relative to this component instance.

This method is sensitive to the current system operation mode of the containing system instance. The object is only returned if it exists in the current som.

Parameters:
referencePath - sequence of pointers into the declarative model to subcomponents, features, etc.
Returns:
InstanceObject collection

findConnectionInstance

org.eclipse.emf.common.util.EList<ConnectionInstance> findConnectionInstance(Connection conn)
Find the semantic connection instances that pass through this component instance that utilize the given connection. Returns a list because a connection can be in multiple semantic connections if there are multiple connections coming in or going out of a port.

This method is sensitive to the current system operation mode. It only return those connection instances that exist in the current SOM.

Parameters:
conn - Connection whose instance is to be found
Returns:
Connection instance list with the specified Connection

findEndToEndFlowInstance

EndToEndFlowInstance findEndToEndFlowInstance(EndToEndFlow ete)
Find the end to end flow instance of this component that corresponds to the given end to end flow.

This method is sensitive to the current system operation mode. It only returns the end to end flow instance if it exists in the current mode.

Parameters:
ete - endtoendflow whose instance is to be found
Returns:
endtoendflow instance with the specified endtoendflow, or null

getAllComponentInstances

org.eclipse.emf.common.util.EList<ComponentInstance> getAllComponentInstances()
Return all component instances in the containment structure rooted at this component, including this component. This method is sensitive to the current system operation mode. The assumption is that this component instance {exists in the current system operation mode if it is being queried. If this object is not part of a system instance, then all the component instances are returned. If this object is part of a system instance and the current SOM is set, then this method only returns those component instances that exist in the current SOM. If the current SOM is not set, then it returns all the component instances.

Returns: