Table of Contents

Class AcceptEventAction

Namespace
NMF.Interop.Uml
Assembly
NMF.UMLInterop.dll

An AcceptEventAction is an Action that waits for the occurrence of one or more specific Events. <p>From package UML::Actions.</p>

[XmlNamespace("http://www.eclipse.org/uml2/5.0.0/UML")]
[XmlNamespacePrefix("uml")]
[ModelRepresentationClass("http://www.eclipse.org/uml2/5.0.0/UML#//AcceptEventAction")]
public class AcceptEventAction : Action, IAcceptEventAction, IAction, IExecutableNode, IActivityNode, IActivityContent, IRedefinableElement, INamedElement, IElement, IEModelElement, IModelElement, INotifyPropertyChanged, INotifyPropertyChanging
Inheritance
AcceptEventAction
Implements
Derived
Inherited Members

Constructors

AcceptEventAction()

Creates a new instance

public AcceptEventAction()

Properties

Children

Gets the child model elements of this model element

public override IEnumerableExpression<IModelElement> Children { get; }

Property Value

IEnumerableExpression<IModelElement>

ClassInstance

Gets the Class model for this type

public static IClass ClassInstance { get; }

Property Value

IClass

IsUnmarshall

Indicates whether there is a single OutputPin for a SignalEvent occurrence, or multiple OutputPins for attribute values of the instance of the Signal associated with a SignalEvent occurrence. <p>From package UML::Actions.</p>

[TypeConverter(typeof(LowercaseBooleanConverter))]
[XmlElementName("isUnmarshall")]
[XmlAttribute(true)]
public bool IsUnmarshall { get; set; }

Property Value

bool

ReferencedElements

Gets the referenced model elements of this model element

public override IEnumerableExpression<IModelElement> ReferencedElements { get; }

Property Value

IEnumerableExpression<IModelElement>

Result

OutputPins holding the values received from an Event occurrence. <p>From package UML::Actions.</p>

[Browsable(false)]
[XmlElementName("result")]
[XmlAttribute(false)]
[Containment]
public IOrderedSetExpression<IOutputPin> Result { get; }

Property Value

IOrderedSetExpression<IOutputPin>

Trigger

The Triggers specifying the Events of which the AcceptEventAction waits for occurrences. <p>From package UML::Actions.</p>

[LowerBound(1)]
[Browsable(false)]
[XmlElementName("trigger")]
[XmlAttribute(false)]
[Containment]
public IOrderedSetExpression<ITrigger> Trigger { get; }

Property Value

IOrderedSetExpression<ITrigger>

Methods

Conforming_type(object, object)

If isUnmarshall=false and all the triggers are for SignalEvents, then the type of the single result OutputPin must either be null or all the signals must conform to it. not isUnmarshall implies result->isEmpty() or let type: Type = result->first().type in type=null or (trigger->forAll(event.oclIsKindOf(SignalEvent)) and trigger.event.oclAsType(SignalEvent).signal->forAll(s | s.conformsTo(type)))

public bool Conforming_type(object diagnostics, object context)

Parameters

diagnostics object

The chain of diagnostics to which problems are to be appended.

context object

The cache of context-specific information.

Returns

bool

GetAttributeValue(string, int)

Resolves the given attribute name

protected override object GetAttributeValue(string attribute, int index)

Parameters

attribute string

The requested attribute name

index int

The index of this attribute

Returns

object

The attribute value or null if it could not be found

GetClass()

Gets the Class for this model element

public override IClass GetClass()

Returns

IClass

GetCollectionForFeature(string)

Gets the Model element collection for the given feature

protected override IList GetCollectionForFeature(string feature)

Parameters

feature string

The requested feature

Returns

IList

A non-generic list of elements

GetCompositionName(object)

Gets the property name for the given container

protected override string GetCompositionName(object container)

Parameters

container object

The container object

Returns

string

The name of the respective container reference

GetExpressionForAttribute(string)

Gets the property expression for the given attribute

protected override INotifyExpression<object> GetExpressionForAttribute(string attribute)

Parameters

attribute string

The requested attribute in upper case

Returns

INotifyExpression<object>

An incremental property expression

GetModelElementForReference(string, int)

Resolves the given URI to a child model element

protected override IModelElement GetModelElementForReference(string reference, int index)

Parameters

reference string

The requested reference name

index int

The index of this reference

Returns

IModelElement

The model element or null if it could not be found

GetRelativePathForNonIdentifiedChild(IModelElement)

Gets the relative URI fragment for the given child model element

protected override string GetRelativePathForNonIdentifiedChild(IModelElement element)

Parameters

element IModelElement

The element that should be looked for

Returns

string

A fragment of the relative URI

No_input_pins(object, object)

AcceptEventActions may have no input pins. input->size() = 0

public bool No_input_pins(object diagnostics, object context)

Parameters

diagnostics object

The chain of diagnostics to which problems are to be appended.

context object

The cache of context-specific information.

Returns

bool

No_output_pins(object, object)

There are no OutputPins if the trigger events are only ChangeEvents and/or CallEvents when this action is an instance of AcceptEventAction and not an instance of a descendant of AcceptEventAction (such as AcceptCallAction). (self.oclIsTypeOf(AcceptEventAction) and (trigger->forAll(event.oclIsKindOf(ChangeEvent) or
event.oclIsKindOf(CallEvent)))) implies output->size() = 0

public bool No_output_pins(object diagnostics, object context)

Parameters

diagnostics object

The chain of diagnostics to which problems are to be appended.

context object

The cache of context-specific information.

Returns

bool

One_output_pin(object, object)

If isUnmarshall=false and any of the triggers are for SignalEvents or TimeEvents, there must be exactly one result OutputPin with multiplicity 1..1. not isUnmarshall and trigger->exists(event.oclIsKindOf(SignalEvent) or event.oclIsKindOf(TimeEvent)) implies output->size() = 1 and output->first().is(1,1)

public bool One_output_pin(object diagnostics, object context)

Parameters

diagnostics object

The chain of diagnostics to which problems are to be appended.

context object

The cache of context-specific information.

Returns

bool

SetFeature(string, object)

Sets a value to the given feature

protected override void SetFeature(string feature, object value)

Parameters

feature string

The requested feature

value object

The value that should be set to that feature

Unmarshall_signal_events(object, object)

If isUnmarshall is true (and this is not an AcceptCallAction), there must be exactly one trigger, which is for a SignalEvent. The number of result output pins must be the same as the number of attributes of the signal. The type and ordering of each result output pin must be the same as the corresponding attribute of the signal. The multiplicity of each result output pin must be compatible with the multiplicity of the corresponding attribute. isUnmarshall and self.oclIsTypeOf(AcceptEventAction) implies trigger->size()=1 and trigger->asSequence()->first().event.oclIsKindOf(SignalEvent) and let attribute: OrderedSet(Property) = trigger->asSequence()->first().event.oclAsType(SignalEvent).signal.allAttributes() in attribute->size()>0 and result->size() = attribute->size() and Sequence{1..result->size()}->forAll(i | result->at(i).type = attribute->at(i).type and result->at(i).isOrdered = attribute->at(i).isOrdered and result->at(i).includesMultiplicity(attribute->at(i)))

public bool Unmarshall_signal_events(object diagnostics, object context)

Parameters

diagnostics object

The chain of diagnostics to which problems are to be appended.

context object

The cache of context-specific information.

Returns

bool