org.eclipse.uml2.uml
Interface Message

All Superinterfaces:
Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject, NamedElement, org.eclipse.emf.common.notify.Notifier

public interface Message
extends NamedElement

A representation of the model object 'Message'. A message defines a particular communication between lifelines of an interaction.

The following features are supported:

See Also:
UMLPackage.getMessage()

Field Summary
 
Fields inherited from interface org.eclipse.uml2.uml.NamedElement
SEPARATOR
 
Method Summary
 ValueSpecification createArgument(java.lang.String name, Type type, org.eclipse.emf.ecore.EClass eClass)
          Creates a new ValueSpecification, with the specified 'Name', and 'Type', and appends it to the 'Argument' containment reference list
 ValueSpecification getArgument(java.lang.String name, Type type)
          Retrieves the first ValueSpecification with the specified 'Name', and 'Type' from the 'Argument' containment reference list
 ValueSpecification getArgument(java.lang.String name, Type type, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass, boolean createOnDemand)
          Retrieves the first ValueSpecification with the specified 'Name', and 'Type' from the 'Argument' containment reference list
 org.eclipse.emf.common.util.EList<ValueSpecification> getArguments()
          Returns the value of the 'Argument' containment reference list.
 Connector getConnector()
          Returns the value of the 'Connector' reference
 Interaction getInteraction()
          Returns the value of the 'Interaction' container reference.
 MessageKind getMessageKind()
          Returns the value of the 'Message Kind' attribute.
 MessageSort getMessageSort()
          Returns the value of the 'Message Sort' attribute.
 MessageEnd getReceiveEvent()
          Returns the value of the 'Receive Event' reference
 MessageEnd getSendEvent()
          Returns the value of the 'Send Event' reference
 NamedElement getSignature()
          Returns the value of the 'Signature' reference
 void setConnector(Connector value)
          Sets the value of the 'Connector' reference
 void setInteraction(Interaction value)
          Sets the value of the 'Interaction' container reference
 void setMessageSort(MessageSort value)
          Sets the value of the 'Message Sort' attribute
 void setReceiveEvent(MessageEnd value)
          Sets the value of the 'Receive Event' reference
 void setSendEvent(MessageEnd value)
          Sets the value of the 'Send Event' reference
 boolean validateArguments(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          Arguments of a Message must only be: i) attributes of the sending lifeline ii) constants iii) symbolic values (which are wildcard values representing any legal value) iv) explicit parameters of the enclosing Interaction v) attributes of the class owning the Interaction true
 boolean validateCannotCrossBoundaries(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          Messages cannot cross bounderies of CombinedFragments or their operands.
 boolean validateOccurrenceSpecifications(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          If the MessageEnds are both OccurrenceSpecifications then the connector must go between the Parts represented by the Lifelines of the two MessageEnds.
 boolean validateSendingReceivingMessageEvent(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          If the sending MessageEvent and the receiving MessageEvent of the same Message are on the same Lifeline, the sending MessageEvent must be ordered before the receiving MessageEvent.
 boolean validateSignatureIsOperation(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          In the case when the Message signature is an Operation, the arguments of the Message must correspond to the parameters of the Operation.
 boolean validateSignatureIsSignal(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          In the case when the Message signature is a Signal, the arguments of the Message must correspond to the attributes of the Signal.
 boolean validateSignatureReferTo(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          The signature must either refer an Operation (in which case messageSort is either synchCall or asynchCall) or a Signal (in which case messageSort is asynchSignal).
 
Methods inherited from interface org.eclipse.uml2.uml.NamedElement
allNamespaces, allOwningPackages, createDependency, createNameExpression, createUsage, getClientDependencies, getClientDependency, getClientDependency, getLabel, getLabel, getName, getNameExpression, getNamespace, getQualifiedName, getVisibility, isDistinguishableFrom, isSetName, isSetVisibility, separator, setName, setNameExpression, setVisibility, unsetName, unsetVisibility, validateHasNoQualifiedName, validateHasQualifiedName, validateVisibilityNeedsOwnership
 
Methods inherited from interface org.eclipse.uml2.uml.Element
addKeyword, allOwnedElements, applyStereotype, createEAnnotation, createOwnedComment, destroy, getApplicableStereotype, getApplicableStereotypes, getAppliedStereotype, getAppliedStereotypes, getAppliedSubstereotype, getAppliedSubstereotypes, getKeywords, getModel, getNearestPackage, getOwnedComments, getOwnedElements, getOwner, getRelationships, getRelationships, getRequiredStereotype, getRequiredStereotypes, getSourceDirectedRelationships, getSourceDirectedRelationships, getStereotypeApplication, getStereotypeApplications, getTargetDirectedRelationships, getTargetDirectedRelationships, getValue, hasKeyword, hasValue, isStereotypeApplicable, isStereotypeApplied, isStereotypeRequired, mustBeOwned, removeKeyword, setValue, unapplyStereotype, validateHasOwner, validateNotOwnSelf
 
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotation, getEAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 

Method Detail

getMessageKind

MessageKind getMessageKind()
Returns the value of the 'Message Kind' attribute. The default value is "unknown". The literals are from the enumeration MessageKind. The derived kind of the Message (complete, lost, found or unknown)

Returns:
the value of the 'Message Kind' attribute.
See Also:
MessageKind, UMLPackage.getMessage_MessageKind()

getMessageSort

MessageSort getMessageSort()
Returns the value of the 'Message Sort' attribute. The default value is "synchCall". The literals are from the enumeration MessageSort. The sort of communication reflected by the Message

Returns:
the value of the 'Message Sort' attribute.
See Also:
MessageSort, setMessageSort(MessageSort), UMLPackage.getMessage_MessageSort()

setMessageSort

void setMessageSort(MessageSort value)
Sets the value of the 'Message Sort' attribute.

Parameters:
value - the new value of the 'Message Sort' attribute.
See Also:
MessageSort, getMessageSort()

getReceiveEvent

MessageEnd getReceiveEvent()
Returns the value of the 'Receive Event' reference. References the Receiving of the Message

Returns:
the value of the 'Receive Event' reference.
See Also:
setReceiveEvent(MessageEnd), UMLPackage.getMessage_ReceiveEvent()

setReceiveEvent

void setReceiveEvent(MessageEnd value)
Sets the value of the 'Receive Event' reference.

Parameters:
value - the new value of the 'Receive Event' reference.
See Also:
getReceiveEvent()

getSendEvent

MessageEnd getSendEvent()
Returns the value of the 'Send Event' reference. References the Sending of the Message.

Returns:
the value of the 'Send Event' reference.
See Also:
setSendEvent(MessageEnd), UMLPackage.getMessage_SendEvent()

setSendEvent

void setSendEvent(MessageEnd value)
Sets the value of the 'Send Event' reference.

Parameters:
value - the new value of the 'Send Event' reference.
See Also:
getSendEvent()

getConnector

Connector getConnector()
Returns the value of the 'Connector' reference. The Connector on which this Message is sent.

Returns:
the value of the 'Connector' reference.
See Also:
setConnector(Connector), UMLPackage.getMessage_Connector()

setConnector

void setConnector(Connector value)
Sets the value of the 'Connector' reference.

Parameters:
value - the new value of the 'Connector' reference.
See Also:
getConnector()

getInteraction

Interaction getInteraction()
Returns the value of the 'Interaction' container reference. It is bidirectional and its opposite is 'Message'.

This feature subsets the following features:

The enclosing Interaction owning the Message

Returns:
the value of the 'Interaction' container reference.
See Also:
setInteraction(Interaction), UMLPackage.getMessage_Interaction(), Interaction.getMessages()

setInteraction

void setInteraction(Interaction value)
Sets the value of the 'Interaction' container reference.

Parameters:
value - the new value of the 'Interaction' container reference.
See Also:
getInteraction()

getArguments

org.eclipse.emf.common.util.EList<ValueSpecification> getArguments()
Returns the value of the 'Argument' containment reference list. The list contents are of type ValueSpecification.

This feature subsets the following features:

The arguments of the Message

Returns:
the value of the 'Argument' containment reference list.
See Also:
UMLPackage.getMessage_Argument()

createArgument

ValueSpecification createArgument(java.lang.String name,
                                  Type type,
                                  org.eclipse.emf.ecore.EClass eClass)
Creates a new ValueSpecification, with the specified 'Name', and 'Type', and appends it to the 'Argument' containment reference list.

Parameters:
name - The 'Name' for the new ValueSpecification, or null.
type - The 'Type' for the new ValueSpecification, or null.
eClass - The Ecore class of the ValueSpecification to create.
Returns:
The new ValueSpecification.
See Also:
getArguments()

getArgument

ValueSpecification getArgument(java.lang.String name,
                               Type type)
Retrieves the first ValueSpecification with the specified 'Name', and 'Type' from the 'Argument' containment reference list.

Parameters:
name - The 'Name' of the ValueSpecification to retrieve, or null.
type - The 'Type' of the ValueSpecification to retrieve, or null.
Returns:
The first ValueSpecification with the specified 'Name', and 'Type', or null.
See Also:
getArguments()

getArgument

ValueSpecification getArgument(java.lang.String name,
                               Type type,
                               boolean ignoreCase,
                               org.eclipse.emf.ecore.EClass eClass,
                               boolean createOnDemand)
Retrieves the first ValueSpecification with the specified 'Name', and 'Type' from the 'Argument' containment reference list.

Parameters:
name - The 'Name' of the ValueSpecification to retrieve, or null.
type - The 'Type' of the ValueSpecification to retrieve, or null.
ignoreCase - Whether to ignore case in String comparisons.
eClass - The Ecore class of the ValueSpecification to retrieve, or null.
createOnDemand - Whether to create a ValueSpecification on demand if not found.
Returns:
The first ValueSpecification with the specified 'Name', and 'Type', or null.
See Also:
getArguments()

getSignature

NamedElement getSignature()
Returns the value of the 'Signature' reference. The definition of the type or signature of the Message (depending on its kind). The associated named element is derived from the message end that constitutes the sending or receiving message event. If both a sending event and a receiving message event are present, the signature is obtained from the sending event.

Returns:
the value of the 'Signature' reference.
See Also:
UMLPackage.getMessage_Signature()

validateSendingReceivingMessageEvent

boolean validateSendingReceivingMessageEvent(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                             java.util.Map<java.lang.Object,java.lang.Object> context)
If the sending MessageEvent and the receiving MessageEvent of the same Message are on the same Lifeline, the sending MessageEvent must be ordered before the receiving MessageEvent. true

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

validateSignatureReferTo

boolean validateSignatureReferTo(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                 java.util.Map<java.lang.Object,java.lang.Object> context)
The signature must either refer an Operation (in which case messageSort is either synchCall or asynchCall) or a Signal (in which case messageSort is asynchSignal). The name of the NamedElement referenced by signature must be the same as that of the Message. true

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

validateSignatureIsOperation

boolean validateSignatureIsOperation(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                     java.util.Map<java.lang.Object,java.lang.Object> context)
In the case when the Message signature is an Operation, the arguments of the Message must correspond to the parameters of the Operation. A Parameter corresponds to an Argument if the Argument is of the same Class or a specialization of that of the Parameter. true

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

validateSignatureIsSignal

boolean validateSignatureIsSignal(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                  java.util.Map<java.lang.Object,java.lang.Object> context)
In the case when the Message signature is a Signal, the arguments of the Message must correspond to the attributes of the Signal. A Message Argument corresponds to a Signal Attribute if the Arguement is of the same Class or a specialization of that of the Attribute. true

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

validateArguments

boolean validateArguments(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                          java.util.Map<java.lang.Object,java.lang.Object> context)
Arguments of a Message must only be: i) attributes of the sending lifeline ii) constants iii) symbolic values (which are wildcard values representing any legal value) iv) explicit parameters of the enclosing Interaction v) attributes of the class owning the Interaction true

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

validateCannotCrossBoundaries

boolean validateCannotCrossBoundaries(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                      java.util.Map<java.lang.Object,java.lang.Object> context)
Messages cannot cross bounderies of CombinedFragments or their operands. true

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

validateOccurrenceSpecifications

boolean validateOccurrenceSpecifications(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                         java.util.Map<java.lang.Object,java.lang.Object> context)
If the MessageEnds are both OccurrenceSpecifications then the connector must go between the Parts represented by the Lifelines of the two MessageEnds. true

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

Copyright 2003, 2007 IBM Corporation and others.
All Rights Reserved.