Software Disclaimer

Abstract Class UML 2.5::Action

Description:

An Action is the fundamental unit of executable functionality. The execution of an Action represents some transformation or processing in the modeled system. Actions provide the ExecutableNodes within Activities and may also be used within Interactions.

Direct Superclasses: ExecutableNode

Direct Subclasses: VariableAction, ValueSpecificationAction, UnmarshallAction, TestIdentityAction, StructuredActivityNode, StructuralFeatureAction, StartClassifierBehaviorAction, ReplyAction, ReduceAction, ReclassifyObjectAction, ReadSelfAction, ReadLinkObjectEndQualifierAction, ReadLinkObjectEndAction, ReadIsClassifiedObjectAction, ReadExtentAction, RaiseExceptionAction, OpaqueAction, LinkAction, InvocationAction, DestroyObjectAction, CreateObjectAction, ClearAssociationAction, AcceptEventAction

Class Precedence List: Action, ExecutableNode, ActivityNode, RedefinableElement, NamedElement, Element

Properties:

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
activity : Activity (0 1); -- source ActivityNode
inGroup : ActivityGroup (0 *); -- source ActivityNode

ActivityGroups containing the ActivityNode.
{readonly}
Derived union with sources: (inStructuredNode, inPartition, inInterruptibleRegion)
Opposite: ActivityGroup.containedNode

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
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 Element

Constraints:

No additional constraints.

Operations:

Signature: context.1() : Classifier;
Description: The derivation for the context property.
Expression: result = (let behavior: Behavior = self.containingBehavior() in if behavior=null then null else if behavior._'context' = null then behavior else behavior._'context' endif endif)

Signature: containingBehavior() : Behavior;
Description:
Expression: result = (if inStructuredNode<>null then inStructuredNode.containingBehavior() else if activity<>null then activity else interaction endif endif )

Signature: allOwnedNodes() : ActivityNode;
Description: Returns all the ActivityNodes directly or indirectly owned by this Action. This includes at least all the Pins of the Action.
Expression: result = (input.oclAsType(Pin)->asSet()->union(output->asSet()))

Signature: allActions() : Action;
Description: Return this Action and all Actions contained directly or indirectly in it. By default only the Action itself is returned, but the operation is overridden for StructuredActivityNodes.
Expression: result = (self->asSet())



Send questions or comments to [email protected].