Class UML 2.3::StructuredActivityNode
Description:
Because of the concurrent nature of the execution of actions within and
across activities, it can be difficult to guarantee the consistent access
and modification of object memory. In order to avoid race conditions or
other concurrency-related problems, it is sometimes necessary to isolate
the effects of a group of actions from the effects of actions outside the
group. This may be indicated by setting the mustIsolate attribute to true
on a structured activity node. If a structured activity node is 'isolated,'
then any object used by an action within the node cannot be accessed by
any action outside the node until the structured activity node as a whole
completes. Any concurrent actions that would result in accessing such objects
are required to have their execution deferred until the completion of the
node.
Direct Superclasses: ActivityGroup,
Action,
NamespaceDirect Subclasses: SequenceNode,
LoopNode,
ExpansionRegion,
ConditionalNodeClass Precedence List: StructuredActivityNode,
ActivityGroup,
Action,
ExecutableNode,
ActivityNode,
RedefinableElement,
Namespace,
NamedElement,
ElementProperties:
activity :
Activity (0 1); -- source
StructuredActivityNode edge :
ActivityEdge (0 *); -- source
StructuredActivityNode mustIsolate : Boolean (1 1); -- source
StructuredActivityNode node :
ActivityNode (0 *); -- source
StructuredActivityNode structuredNodeInput :
InputPin (0 *); -- source
StructuredActivityNode structuredNodeOutput :
OutputPin (0 *); -- source
StructuredActivityNode variable :
Variable (0 *); -- source
StructuredActivityNode containedEdge :
ActivityEdge (0 *); -- source
ActivityGroup containedNode :
ActivityNode (0 *); -- source
ActivityGroup subgroup :
ActivityGroup (0 *); -- source
ActivityGroup superGroup :
ActivityGroup (0 1); -- source
ActivityGroup context :
Classifier (0 1); -- source
Action input :
InputPin (0 *); -- source
Action isLocallyReentrant : Boolean (1 1); -- source
Action localPostcondition :
Constraint (0 *); -- source
Action localPrecondition :
Constraint (0 *); -- source
Action output :
OutputPin (0 *); -- source
Action handler :
ExceptionHandler (0 *); -- source
ExecutableNode inGroup :
ActivityGroup (0 *); -- source
ActivityNode inInterruptibleRegion :
InterruptibleActivityRegion (0 *); -- source
ActivityNode inPartition :
ActivityPartition (0 *); -- source
ActivityNode inStructuredNode :
StructuredActivityNode (0 1); -- source
ActivityNode incoming :
ActivityEdge (0 *); -- source
ActivityNode outgoing :
ActivityEdge (0 *); -- source
ActivityNode redefinedNode :
ActivityNode (0 *); -- source
ActivityNode isLeaf : Boolean (1 1); -- source
RedefinableElement redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement redefinitionContext :
Classifier (0 *); -- source
RedefinableElement elementImport :
ElementImport (0 *); -- source
Namespace importedMember :
PackageableElement (0 *); -- source
Namespace References the PackageableElements that are members of this Namespace as
a result of either PackageImports or ElementImports.
{
readonly,
derived}
Subsets: Namespace.member
member :
NamedElement (0 *); -- source
Namespace ownedMember :
NamedElement (0 *); -- source
Namespace ownedRule :
Constraint (0 *); -- source
Namespace packageImport :
PackageImport (0 *); -- source
Namespace clientDependency :
Dependency (0 *); -- source
NamedElement name : String (0 1); -- source
NamedElement nameExpression :
StringExpression (0 1); -- source
NamedElement namespace :
Namespace (0 1); -- source
NamedElement qualifiedName : String (0 1); -- source
NamedElement visibility :
VisibilityKind (0 1); -- source
NamedElement ownedComment :
Comment (0 *); -- source
Element ownedElement :
Element (0 *); -- source
Element owner :
Element (0 1); -- source
ElementConstraints:
Signature: output_pin_edges() : Boolean;
Description: The outgoing edges of the output pins of a StructuredActivityNode must
have targets that are not within the StructuredActivityNode.
Expression: true
Signature: input_pin_edges() : Boolean;
Description: The incoming edges of the input pins of a StructuredActivityNode must have
sources that are not within the StructuredActivityNode.
Expression: true
Signature: edges() : Boolean;
Description: The edges owned by a structured node must have source and target nodes
in the structured node, and vice versa.
Expression: true
Operations:
No additional operations.
Send questions or comments to
[email protected].