Table of Contents

Interface IMessageEnd

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

The public interface for MessageEnd

[DefaultImplementationType(typeof(MessageEnd))]
[XmlDefaultImplementationType(typeof(MessageEnd))]
[ModelRepresentationClass("http://www.eclipse.org/uml2/5.0.0/UML#//MessageEnd")]
public interface IMessageEnd : INamedElement, IElement, IEModelElement, IModelElement, INotifyPropertyChanged, INotifyPropertyChanging
Inherited Members

Properties

Message

References a Message. <p>From package UML::Interactions.</p>

[XmlElementName("message")]
[XmlAttribute(true)]
IMessage Message { get; set; }

Property Value

IMessage

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>

ISetExpression<IInteractionFragment> EnclosingFragment()

Returns

ISetExpression<IInteractionFragment>

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>

bool IsReceive()

Returns

bool

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>

bool IsSend()

Returns

bool

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>

ISetExpression<IMessageEnd> OppositeEnd()

Returns

ISetExpression<IMessageEnd>