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:
![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
activity :
Activity (0 1); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
edge :
ActivityEdge (0 *); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
mustIsolate : Boolean (1 1); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
node :
ActivityNode (0 *); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
structuredNodeInput :
InputPin (0 *); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
structuredNodeOutput :
OutputPin (0 *); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
variable :
Variable (0 *); -- source
StructuredActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
containedEdge :
ActivityEdge (0 *); -- source
ActivityGroup![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
containedNode :
ActivityNode (0 *); -- source
ActivityGroup![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
subgroup :
ActivityGroup (0 *); -- source
ActivityGroup![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
superGroup :
ActivityGroup (0 1); -- source
ActivityGroup![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
context :
Classifier (0 1); -- source
Action![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
input :
InputPin (0 *); -- source
Action![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
isLocallyReentrant : Boolean (1 1); -- source
Action![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
localPostcondition :
Constraint (0 *); -- source
Action![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
localPrecondition :
Constraint (0 *); -- source
Action![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
output :
OutputPin (0 *); -- source
Action![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
handler :
ExceptionHandler (0 *); -- source
ExecutableNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
inGroup :
ActivityGroup (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
inInterruptibleRegion :
InterruptibleActivityRegion (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
inPartition :
ActivityPartition (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
inStructuredNode :
StructuredActivityNode (0 1); -- source
ActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
incoming :
ActivityEdge (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
outgoing :
ActivityEdge (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
redefinedNode :
ActivityNode (0 *); -- source
ActivityNode![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
isLeaf : Boolean (1 1); -- source
RedefinableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
redefinitionContext :
Classifier (0 *); -- source
RedefinableElement![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
elementImport :
ElementImport (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
importedMember :
PackageableElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
member :
NamedElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
ownedMember :
NamedElement (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
ownedRule :
Constraint (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
packageImport :
PackageImport (0 *); -- source
Namespace![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
clientDependency :
Dependency (0 *); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
name : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
nameExpression :
StringExpression (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
namespace :
Namespace (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
qualifiedName : String (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
visibility :
VisibilityKind (0 1); -- source
NamedElement![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
ownedComment :
Comment (0 *); -- source
Element![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
ownedElement :
Element (0 *); -- source
Element![](/se-interop/image/down-arrow.png?hunchentoot-session=6228%3A176B19B4CF02C84820FE149ACBD03377)
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].