Class MessageOccurrenceSpecification
A MessageOccurrenceSpecification specifies the occurrence of Message events, such as sending and receiving of Signals or invoking or receiving of Operation calls. A MessageOccurrenceSpecification is a kind of MessageEnd. Messages are generated either by synchronous Operation calls or asynchronous Signal sends. They are received by the execution of corresponding AcceptEventActions. <p>From package UML::Interactions.</p>
[XmlNamespace("http://www.eclipse.org/uml2/5.0.0/UML")]
[XmlNamespacePrefix("uml")]
[ModelRepresentationClass("http://www.eclipse.org/uml2/5.0.0/UML#//MessageOccurrenceSpecification")]
public class MessageOccurrenceSpecification : OccurrenceSpecification, IMessageOccurrenceSpecification, IMessageEnd, IOccurrenceSpecification, IInteractionFragment, INamedElement, IElement, IEModelElement, IModelElement, INotifyPropertyChanged, INotifyPropertyChanging
- Inheritance
-
MessageOccurrenceSpecification
- Implements
- Derived
- Inherited Members
Properties
Children
Gets the child model elements of this model element
public override IEnumerableExpression<IModelElement> Children { get; }
Property Value
ClassInstance
Gets the Class model for this type
public static IClass ClassInstance { get; }
Property Value
Message
References a Message. <p>From package UML::Interactions.</p>
[XmlElementName("message")]
[XmlAttribute(true)]
public IMessage Message { get; set; }
Property Value
Methods
EnclosingFragment()
This query returns a set including the enclosing InteractionFragment this MessageEnd is enclosed within. result = (if self->select(oclIsKindOf(Gate))->notEmpty() then -- it is a Gate let endGate : Gate = self->select(oclIsKindOf(Gate)).oclAsType(Gate)->asOrderedSet()->first() in if endGate.isOutsideCF() then endGate.combinedFragment.enclosingInteraction.oclAsType(InteractionFragment)->asSet()-> union(endGate.combinedFragment.enclosingOperand.oclAsType(InteractionFragment)->asSet()) else if endGate.isInsideCF() then endGate.combinedFragment.oclAsType(InteractionFragment)->asSet() else if endGate.isFormal() then endGate.interaction.oclAsType(InteractionFragment)->asSet() else if endGate.isActual() then endGate.interactionUse.enclosingInteraction.oclAsType(InteractionFragment)->asSet()-> union(endGate.interactionUse.enclosingOperand.oclAsType(InteractionFragment)->asSet()) else null endif endif endif endif else -- it is a MessageOccurrenceSpecification let endMOS : MessageOccurrenceSpecification = self->select(oclIsKindOf(MessageOccurrenceSpecification)).oclAsType(MessageOccurrenceSpecification)->asOrderedSet()->first() in if endMOS.enclosingInteraction->notEmpty() then endMOS.enclosingInteraction.oclAsType(InteractionFragment)->asSet() else endMOS.enclosingOperand.oclAsType(InteractionFragment)->asSet() endif endif) <p>From package UML::Interactions.</p>
public ISetExpression<IInteractionFragment> EnclosingFragment()
Returns
GetClass()
Gets the Class for this model element
public override IClass GetClass()
Returns
GetExpressionForReference(string)
Gets the property expression for the given reference
protected override INotifyExpression<IModelElement> GetExpressionForReference(string reference)
Parameters
reference
stringThe requested reference in upper case
Returns
- INotifyExpression<IModelElement>
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
Returns
- IModelElement
The model element or null if it could not be found
IsReceive()
This query returns value true if this MessageEnd is a receiveEvent. message->notEmpty() result = (message.receiveEvent->asSet()->includes(self)) <p>From package UML::Interactions.</p>
public bool IsReceive()
Returns
IsSend()
This query returns value true if this MessageEnd is a sendEvent. message->notEmpty() result = (message.sendEvent->asSet()->includes(self)) <p>From package UML::Interactions.</p>
public bool IsSend()
Returns
OppositeEnd()
This query returns a set including the MessageEnd (if exists) at the opposite end of the Message for this MessageEnd. message->notEmpty() result = (message->asSet().messageEnd->asSet()->excluding(self)) <p>From package UML::Interactions.</p>
public ISetExpression<IMessageEnd> OppositeEnd()
Returns
SetFeature(string, object)
Sets a value to the given feature
protected override void SetFeature(string feature, object value)