edu.cmu.sei.aadl.aadl2.impl
Class FlowSpecificationImpl

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.aadl2.parsesupport.AObjectImpl
                  extended by edu.cmu.sei.aadl.aadl2.impl.ElementImpl
                      extended by edu.cmu.sei.aadl.aadl2.impl.NamedElementImpl
                          extended by edu.cmu.sei.aadl.aadl2.impl.RefinableElementImpl
                              extended by edu.cmu.sei.aadl.aadl2.impl.StructuralFeatureImpl
                                  extended by edu.cmu.sei.aadl.aadl2.impl.FlowImpl
                                      extended by edu.cmu.sei.aadl.aadl2.impl.FlowSpecificationImpl
All Implemented Interfaces:
ClassifierFeature, Element, Flow, FlowSpecification, ModalElement, NamedElement, AObject, RefinableElement, StructuralFeature, org.eclipse.core.runtime.IAdaptable, org.eclipse.emf.common.notify.Notifier, org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.InternalEObject

public class FlowSpecificationImpl
extends FlowImpl
implements FlowSpecification

An implementation of the model object 'Flow Specification'.

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  Context inContext
          The cached value of the 'In Context' reference
protected  Feature inFeature
          The cached value of the 'In Feature' reference
protected  FlowKind kind
          The cached value of the 'Kind' attribute
protected static FlowKind KIND_EDEFAULT
          The default value of the 'Kind' attribute
protected  org.eclipse.emf.ecore.util.FeatureMap modesAndTransitions
          The cached value of the 'Modes And Transitions' attribute list
protected  Context outContext
          The cached value of the 'Out Context' reference
protected  Feature outFeature
          The cached value of the 'Out Feature' reference
protected  FlowSpecification refined
          The cached value of the 'Refined' reference
 
Fields inherited from class edu.cmu.sei.aadl.aadl2.impl.RefinableElementImpl
refinedElement, refinementContext
 
Fields inherited from class edu.cmu.sei.aadl.aadl2.impl.NamedElementImpl
name, NAME_EDEFAULT, ownedPropertyAssociations, QUALIFIED_NAME_EDEFAULT
 
Fields inherited from class edu.cmu.sei.aadl.aadl2.impl.ElementImpl
OWNED_ELEMENT_ESUBSETS, ownedComments
 
Fields inherited from class edu.cmu.sei.aadl.aadl2.parsesupport.AObjectImpl
copyright, 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 edu.cmu.sei.aadl.aadl2.parsesupport.AObject
copyright
 
Fields inherited from interface org.eclipse.emf.ecore.InternalEObject
EOPPOSITE_FEATURE_BASE
 
Constructor Summary
protected FlowSpecificationImpl()
           
 
Method Summary
 Context basicGetInContext()
           
 Feature basicGetInFeature()
           
 Context basicGetOutContext()
           
 Feature basicGetOutFeature()
           
 FlowSpecification basicGetRefined()
           
 RefinableElement basicGetRefinedElement()
           
 int eBaseStructuralFeatureID(int derivedFeatureID, java.lang.Class<?> baseClass)
           
 int eDerivedStructuralFeatureID(int baseFeatureID, java.lang.Class<?> baseClass)
           
 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)
           
 Context getAllInContext()
          get in flow context of a flow source, sink, or path spec.
 Feature getAllInFeature()
          get in feature of a flow source, sink, or path spec.
 org.eclipse.emf.common.util.EList<Mode> getAllInModes()
          returns the list of modes the modal element belongs to.
 Context getAllOutContext()
          get out flow context of flow source, sink, or path spec.
 Feature getAllOutFeature()
          get out feature of a flow source, sink, or path spec.
 Context getInContext()
           
 Feature getInFeature()
           
 org.eclipse.emf.common.util.EList<Mode> getInModes()
           
 FlowKind getKind()
           
 org.eclipse.emf.ecore.util.FeatureMap getModesAndTransitions()
           
 Context getOutContext()
           
 Feature getOutFeature()
           
 void getPropertyValueInternal(Property prop, PropertyAcc paa, boolean fromInstanceSlaveCall)
          Helper routine for computing the value of the property.
 FlowSpecification getRefined()
           
 RefinableElement getRefinedElement()
           
 boolean isSetRefined()
           
 boolean isSetRefinedElement()
           
 void setInContext(Context newInContext)
           
 void setInFeature(Feature newInFeature)
           
 void setKind(FlowKind newKind)
           
 void setOutContext(Context newOutContext)
           
 void setOutFeature(Feature newOutFeature)
           
 void setRefined(FlowSpecification newRefined)
           
 java.lang.String toString()
           
 
Methods inherited from class edu.cmu.sei.aadl.aadl2.impl.StructuralFeatureImpl
getFeaturingClassifiers
 
Methods inherited from class edu.cmu.sei.aadl.aadl2.impl.RefinableElementImpl
basicGetRefinementContext, getRefinementContext
 
Methods inherited from class edu.cmu.sei.aadl.aadl2.impl.NamedElementImpl
acceptsProperty, allNamespaces, checkPropertyAssociation, createOwnedPropertyAssociation, eBasicRemoveFromContainerFeature, getName, getNamespace, getOwnedPropertyAssociations, getPropertyValue, getPropertyValueList, getQualifiedName, getSimplePropertyValue, has_no_qualified_name, has_qualified_name, hasName, isDistinguishableFrom, qualifiedName, removePropertyAssociations, removePropertyAssociations, separator, setName, setPropertyValue, setPropertyValue, setPropertyValue
 
Methods inherited from class edu.cmu.sei.aadl.aadl2.impl.ElementImpl
allOwnedElements, create, createOwnedComment, getCacheAdapter, getChildren, getContainingClassifier, getContainingComponentImpl, getElementRoot, getOwnedComments, getOwnedElements, getOwner, has_owner, isSetOwnedElements, isSetOwner, mustBeOwned, not_own_self
 
Methods inherited from class edu.cmu.sei.aadl.aadl2.parsesupport.AObjectImpl
getAdapter, getLocationReference, 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, eBasicRemoveFromContainer, eBasicSetContainer, eComputeVirtualValuesCapacity, eContainer, eContainerAdapterArray, eContainingFeature, eContainmentFeature, eContainmentFeature, eContains, eContents, eCrossReferences, 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, eInverseAdd, eInverseRemove, eIsSet, eObjectForURIFragmentSegment, eOpenGet, eOpenIsSet, eOpenSet, eOpenUnset, eProxyURI, eRemoveVirtualValue, eResolveProxy, eResource, eSet, eSetDirectResource, eSetResource, eSetStore, eSetting, eSettingDelegate, eSettings, eSetVirtualIndexBits, eSetVirtualValue, eSetVirtualValues, eStaticFeatureCount, eStore, eUnset, eURIFragmentSegment, eVirtualBitCount, eVirtualGet, eVirtualGet, eVirtualIndex, eVirtualIndexBits, eVirtualIsSet, eVirtualSet, eVirtualUnset, eVirtualValue, eVirtualValues
 
Methods inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
eBasicAdapterArray, eBasicHasAdapters, 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.aadl2.RefinableElement
getRefinementContext
 
Methods inherited from interface edu.cmu.sei.aadl.aadl2.ClassifierFeature
getFeaturingClassifiers
 
Methods inherited from interface edu.cmu.sei.aadl.aadl2.NamedElement
acceptsProperty, allNamespaces, checkPropertyAssociation, createOwnedPropertyAssociation, getName, getNamespace, getOwnedPropertyAssociations, getPropertyValue, 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.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

modesAndTransitions

protected org.eclipse.emf.ecore.util.FeatureMap modesAndTransitions
The cached value of the 'Modes And Transitions' attribute list.

See Also:
getModesAndTransitions()

refined

protected FlowSpecification refined
The cached value of the 'Refined' reference.

See Also:
getRefined()

KIND_EDEFAULT

protected static final FlowKind KIND_EDEFAULT
The default value of the 'Kind' attribute.

See Also:
getKind()

kind

protected FlowKind kind
The cached value of the 'Kind' attribute.

See Also:
getKind()

inFeature

protected Feature inFeature
The cached value of the 'In Feature' reference.

See Also:
getInFeature()

inContext

protected Context inContext
The cached value of the 'In Context' reference.

See Also:
getInContext()

outFeature

protected Feature outFeature
The cached value of the 'Out Feature' reference.

See Also:
getOutFeature()

outContext

protected Context outContext
The cached value of the 'Out Context' reference.

See Also:
getOutContext()
Constructor Detail

FlowSpecificationImpl

protected FlowSpecificationImpl()

Method Detail

eStaticClass

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

Overrides:
eStaticClass in class FlowImpl

getModesAndTransitions

public org.eclipse.emf.ecore.util.FeatureMap getModesAndTransitions()

Specified by:
getModesAndTransitions in interface ModalElement
Returns:
the value of the 'Modes And Transitions' attribute list.
See Also:
Aadl2Package.getModalElement_ModesAndTransitions()

getInModes

public org.eclipse.emf.common.util.EList<Mode> getInModes()

Specified by:
getInModes in interface ModalElement
Returns:
the value of the 'In Mode' reference list.
See Also:
Aadl2Package.getModalElement_InMode()

getInFeature

public Feature getInFeature()

Specified by:
getInFeature in interface FlowSpecification
Returns:
the value of the 'In Feature' reference.
See Also:
FlowSpecification.setInFeature(Feature), Aadl2Package.getFlowSpecification_InFeature()

basicGetInFeature

public Feature basicGetInFeature()


setInFeature

public void setInFeature(Feature newInFeature)

Specified by:
setInFeature in interface FlowSpecification
Parameters:
newInFeature - the new value of the 'In Feature' reference.
See Also:
FlowSpecification.getInFeature()

getOutFeature

public Feature getOutFeature()

Specified by:
getOutFeature in interface FlowSpecification
Returns:
the value of the 'Out Feature' reference.
See Also:
FlowSpecification.setOutFeature(Feature), Aadl2Package.getFlowSpecification_OutFeature()

basicGetOutFeature

public Feature basicGetOutFeature()


setOutFeature

public void setOutFeature(Feature newOutFeature)

Specified by:
setOutFeature in interface FlowSpecification
Parameters:
newOutFeature - the new value of the 'Out Feature' reference.
See Also:
FlowSpecification.getOutFeature()

getKind

public FlowKind getKind()

Specified by:
getKind in interface FlowSpecification
Returns:
the value of the 'Kind' attribute.
See Also:
FlowKind, FlowSpecification.setKind(FlowKind), Aadl2Package.getFlowSpecification_Kind()

setKind

public void setKind(FlowKind newKind)

Specified by:
setKind in interface FlowSpecification
Parameters:
newKind - the new value of the 'Kind' attribute.
See Also:
FlowKind, FlowSpecification.getKind()

getRefined

public FlowSpecification getRefined()

Specified by:
getRefined in interface FlowSpecification
Returns:
the value of the 'Refined' reference.
See Also:
FlowSpecification.setRefined(FlowSpecification), Aadl2Package.getFlowSpecification_Refined()

basicGetRefined

public FlowSpecification basicGetRefined()


setRefined

public void setRefined(FlowSpecification newRefined)

Specified by:
setRefined in interface FlowSpecification
Parameters:
newRefined - the new value of the 'Refined' reference.
See Also:
FlowSpecification.getRefined()

isSetRefined

public boolean isSetRefined()


getInContext

public Context getInContext()

Specified by:
getInContext in interface FlowSpecification
Returns:
the value of the 'In Context' reference.
See Also:
FlowSpecification.setInContext(Context), Aadl2Package.getFlowSpecification_InContext()

basicGetInContext

public Context basicGetInContext()


setInContext

public void setInContext(Context newInContext)

Specified by:
setInContext in interface FlowSpecification
Parameters:
newInContext - the new value of the 'In Context' reference.
See Also:
FlowSpecification.getInContext()

getOutContext

public Context getOutContext()

Specified by:
getOutContext in interface FlowSpecification
Returns:
the value of the 'Out Context' reference.
See Also:
FlowSpecification.setOutContext(Context), Aadl2Package.getFlowSpecification_OutContext()

basicGetOutContext

public Context basicGetOutContext()


setOutContext

public void setOutContext(Context newOutContext)

Specified by:
setOutContext in interface FlowSpecification
Parameters:
newOutContext - the new value of the 'Out Context' reference.
See Also:
FlowSpecification.getOutContext()

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 NamedElementImpl

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 StructuralFeatureImpl

eSet

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

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

eUnset

public void eUnset(int featureID)

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

eIsSet

public boolean eIsSet(int featureID)

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

eBaseStructuralFeatureID

public int eBaseStructuralFeatureID(int derivedFeatureID,
                                    java.lang.Class<?> baseClass)

Specified by:
eBaseStructuralFeatureID in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eBaseStructuralFeatureID in class StructuralFeatureImpl

eDerivedStructuralFeatureID

public int eDerivedStructuralFeatureID(int baseFeatureID,
                                       java.lang.Class<?> baseClass)

Specified by:
eDerivedStructuralFeatureID in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eDerivedStructuralFeatureID in class StructuralFeatureImpl

toString

public java.lang.String toString()

Overrides:
toString in class NamedElementImpl

getRefinedElement

public RefinableElement getRefinedElement()

Specified by:
getRefinedElement in interface RefinableElement
Overrides:
getRefinedElement in class RefinableElementImpl
Returns:
the value of the 'Refined Element' reference.
See Also:
Aadl2Package.getRefinableElement_RefinedElement()

basicGetRefinedElement

public RefinableElement basicGetRefinedElement()

Overrides:
basicGetRefinedElement in class RefinableElementImpl

isSetRefinedElement

public boolean isSetRefinedElement()


getAllInModes

public org.eclipse.emf.common.util.EList<Mode> getAllInModes()
returns the list of modes the modal element belongs to. This may be kept with the modal element or an ancestor in the extends hierarchy. The in modes of the closest ancestor returned.

Specified by:
getAllInModes in interface ModalElement
Returns:
EList of modes. This list may be empty of it is all modes.

getAllInFeature

public Feature getAllInFeature()
get in feature of a flow source, sink, or path spec. In case of a refined flowspec get it from the flowspec being refined

Specified by:
getAllInFeature in interface FlowSpecification
Returns:
Feature or null

getAllInContext

public Context getAllInContext()
get in flow context of a flow source, sink, or path spec. In case of a refined flowspec get it from the flowspec being refined

Specified by:
getAllInContext in interface FlowSpecification
Returns:
Context or null

getAllOutFeature

public Feature getAllOutFeature()
get out feature of a flow source, sink, or path spec. In case of a refined flowspec get it from the flowspec being refined

Specified by:
getAllOutFeature in interface FlowSpecification
Returns:
Feature or null

getAllOutContext

public Context getAllOutContext()
get out flow context of flow source, sink, or path spec. In case of a refined flowspec get it from the flowspec being refined

Specified by:
getAllOutContext in interface FlowSpecification
Returns:
Context or null

getPropertyValueInternal

public final void getPropertyValueInternal(Property prop,
                                           PropertyAcc paa,
                                           boolean fromInstanceSlaveCall)
                                    throws InvalidModelException
Description copied from interface: NamedElement
Helper routine for computing the value of the property. As the name suggests, this method is not intended for use by clients of the model, but is used during the property lookup process. It should really be a protected method in NamedElementImpl, but because of the way that EMF deals with multiple inheritance, not all implementations of NamedElement actually extend from NamedElementImpl.

In particular, this method does not create a new property value accumulator—it uses the one provided—and it does not look up the default value of the property.

Specified by:
getPropertyValueInternal in interface NamedElement
Overrides:
getPropertyValueInternal in class NamedElementImpl
Parameters:
prop - The property whose value is to be retrieved. It must be the case that this property is accepted by the property holder, i.e., NamedElement.acceptsProperty(Property) must return true.
fromInstanceSlaveCall - true if the call is performing a lookup on the declarative model on behalf of an instance model object. When true the lookup algorithm ignores the "inherits" attribute on property definitions when it would mean that the lookup should defer to the containing component implementation. Also disables the interpretation of contained property associations in the declarative model because they have already been applied to the instance model at this point. The expectation is that the instance model lookup itself is not ignoring the inherits attribute, and thus any inherited property values will still be found correctly. Interpreting the inherits attribute during the declarative model search is redundant and causes problems later on. This flag does not affect lookup for feature declarations because in that case the inherit flag defers to the component type or feature group type.
Throws:
InvalidModelException - Thrown if the property value cannot be retrieved because the model is incomplete or otherwise invalid.