Class UML 2.5::ProtocolTransition
Description:
A ProtocolTransition specifies a legal Transition for an Operation. Transitions
of ProtocolStateMachines have the following information: a pre-condition
(guard), a Trigger, and a post-condition. Every ProtocolTransition is associated
with at most one BehavioralFeature belonging to the context Classifier
of the ProtocolStateMachine.
Direct Superclasses: TransitionDirect Subclasses: Class Precedence List: ProtocolTransition,
Transition,
Namespace,
RedefinableElement,
NamedElement,
ElementProperties:
postCondition :
Constraint (0 1); -- source
ProtocolTransition preCondition :
Constraint (0 1); -- source
ProtocolTransitionSpecifies the precondition of the Transition. It specifies the Condition
that should be verified before triggering the Transition. This guard condition
added to the source State will be evaluated as part of the precondition
of the Operation referred by the Transition if any.
{
composite}
Subsets: Transition.guard
referred :
Operation (0 *); -- source
ProtocolTransitionThis association refers to the associated Operation. It is derived from
the Operation of the CallEvent Trigger when applicable.
{
readonly,
derived}
container :
Region (1 1); -- source
Transition effect :
Behavior (0 1); -- source
TransitionSpecifies an optional behavior to be performed when the Transition fires.
{
composite}
Subsets: Element.ownedElement
guard :
Constraint (0 1); -- source
Transition kind :
TransitionKind (1 1); -- source
Transition redefinedTransition :
Transition (0 1); -- source
Transition redefinitionContext :
Classifier (1 1); -- source
Transition source :
Vertex (1 1); -- source
Transition target :
Vertex (1 1); -- source
Transition trigger :
Trigger (0 *); -- source
Transition elementImport :
ElementImport (0 *); -- source
Namespace importedMember :
PackageableElement (0 *); -- source
Namespace member :
NamedElement (0 *); -- source
Namespace ownedMember :
NamedElement (0 *); -- source
Namespace ownedRule :
Constraint (0 *); -- source
Namespace packageImport :
PackageImport (0 *); -- source
Namespace isLeaf : Boolean (1 1); -- source
RedefinableElement redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement clientDependency :
Dependency (0 *); -- source
NamedElementIndicates the Dependencies that reference this NamedElement as a client.
{
derived}
Opposite: Dependency.client
name : String (0 1); -- source
NamedElement nameExpression :
StringExpression (0 1); -- source
NamedElementThe StringExpression used to define the name of this NamedElement.
{
composite}
Subsets: Element.ownedElement
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:
No additional constraints.
Operations:
Signature: referred.1() : Operation;
Description: Derivation for ProtocolTransition::/referred
Expression: result = (trigger->collect(event)->select(oclIsKindOf(CallEvent))->collect(oclAsType(CallEvent).operation)->asSet())
Send questions or comments to
[email protected].