Table of Contents

Interface IObjectNode

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

The public interface for ObjectNode

[DefaultImplementationType(typeof(ObjectNode))]
[XmlDefaultImplementationType(typeof(ObjectNode))]
[ModelRepresentationClass("http://www.eclipse.org/uml2/5.0.0/UML#//ObjectNode")]
public interface IObjectNode : ITypedElement, IActivityNode, IActivityContent, IRedefinableElement, INamedElement, IElement, IEModelElement, IModelElement, INotifyPropertyChanged, INotifyPropertyChanging
Inherited Members

Properties

InState

The States required to be associated with the values held by tokens on this ObjectNode. <p>From package UML::Activities.</p>

[XmlElementName("inState")]
[XmlAttribute(true)]
ISetExpression<IState> InState { get; }

Property Value

ISetExpression<IState>

IsControlType

Indicates whether the type of the ObjectNode is to be treated as representing control values that may traverse ControlFlows. <p>From package UML::Activities.</p>

[TypeConverter(typeof(LowercaseBooleanConverter))]
[XmlElementName("isControlType")]
[XmlAttribute(true)]
bool IsControlType { get; set; }

Property Value

bool

Ordering

Indicates how the tokens held by the ObjectNode are ordered for selection to traverse ActivityEdges outgoing from the ObjectNode. <p>From package UML::Activities.</p>

[XmlElementName("ordering")]
[XmlAttribute(true)]
ObjectNodeOrderingKind Ordering { get; set; }

Property Value

ObjectNodeOrderingKind

Selection

A Behavior used to select tokens to be offered on outgoing ActivityEdges. <p>From package UML::Activities.</p>

[XmlElementName("selection")]
[XmlAttribute(true)]
IBehavior Selection { get; set; }

Property Value

IBehavior

UpperBound

The maximum number of tokens that may be held by this ObjectNode. Tokens cannot flow into the ObjectNode if the upperBound is reached. If no upperBound is specified, then there is no limit on how many tokens the ObjectNode can hold. <p>From package UML::Activities.</p>

[Browsable(false)]
[XmlElementName("upperBound")]
[XmlAttribute(false)]
[Containment]
IValueSpecification UpperBound { get; set; }

Property Value

IValueSpecification

Methods

Input_output_parameter(object, object)

A selection Behavior has one input Parameter and one output Parameter. The input Parameter must have the same type as or a supertype of the type of ObjectNode, be non-unique, and have multiplicity 0... The output Parameter must be the same or a subtype of the type of ObjectNode. The Behavior cannot have side effects. selection<>null implies selection.inputParameters()->size()=1 and selection.inputParameters()->forAll(p | not p.isUnique and p.is(0,) and self.type.conformsTo(p.type)) and selection.outputParameters()->size()=1 and selection.inputParameters()->forAll(p | self.type.conformsTo(p.type))

bool Input_output_parameter(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

Object_flow_edges(object, object)

If isControlType=false, the ActivityEdges incoming to or outgoing from an ObjectNode must all be ObjectFlows. (not isControlType) implies incoming->union(outgoing)->forAll(oclIsKindOf(ObjectFlow))

bool Object_flow_edges(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

Selection_behavior(object, object)

If an ObjectNode has a selection Behavior, then the ordering of the object node is ordered, and vice versa. (selection<>null) = (ordering=ObjectNodeOrderingKind::ordered)

bool Selection_behavior(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