Software Disclaimer

Class UML 2.4.1::CallOperationAction

Description:

A call operation action is an action that transmits an operation call request to the target object, where it may cause the invocation of associated behavior. The argument values of the action are available to the execution of the invoked behavior. If the action is marked synchronous, the execution of the call operation action waits until the execution of the invoked behavior completes and a reply transmission is returned to the caller; otherwise execution of the action is complete when the invocation of the operation is established and the execution of the invoked operation proceeds concurrently with the execution of the calling behavior. Any values returned as part of the reply transmission are put on the result output pins of the call operation action. Upon receipt of the reply transmission, execution of the call operation action is complete.

Direct Superclasses: CallAction

Direct Subclasses:

Class Precedence List: CallOperationAction, CallAction, InvocationAction, Action, ExecutableNode, ActivityNode, RedefinableElement, NamedElement, Element

Properties:

operation : Operation (1 1); -- source CallOperationAction
target : InputPin (1 1); -- source CallOperationAction
isSynchronous : Boolean (1 1); -- source CallAction

If true, the call is synchronous and the caller waits for completion of the invoked behavior. If false, the call is asynchronous and the caller proceeds immediately and does not expect a return values.
Default value: TRUE

result : OutputPin (0 *); -- source CallAction
argument : InputPin (0 *); -- source InvocationAction
onPort : Port (0 1); -- source InvocationAction
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
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:

Signature: type_target_pin() : Boolean;
Description: The type of the target pin must be the same as the type that owns the operation.
Expression: true

Signature: type_ordering_multiplicity() : Boolean;
Description: The type, ordering, and multiplicity of an argument or result pin is derived from the corresponding owned parameter of the operation.
Expression: true

Signature: result_pin_equal_parameter() : Boolean;
Description: The number of result pins and the number of owned parameters of the operation of type return, out, and in-out must be equal.
Expression: true

Signature: argument_pin_equal_parameter() : Boolean;
Description: The number of argument pins and the number of owned parameters of the operation of type in and in-out must be equal.
Expression: true

Operations:

No additional operations.



Send questions or comments to [email protected].