|
org.eclipse.uml2.uml
Interface Transition
-
All Superinterfaces:
-
Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject,
NamedElement,
Namespace, org.eclipse.emf.common.notify.Notifier,
RedefinableElement
-
All Known Subinterfaces:
-
ProtocolTransition
-
public interface Transition
- extends
Namespace,
RedefinableElement
A representation of the model object '
Transition
'.
A transition is a directed relationship between a source vertex and a target vertex. It may be part of a compound transition, which takes the state machine from one state configuration to another, representing the complete response of the state machine to an occurrence of an event of a particular type.
The following features are supported:
-
See Also:
-
UMLPackage.getTransition()
Method Summary
|
StateMachine
|
containingStateMachine
()
The query containingStateMachine() returns the state machine that contains the transition either directly or transitively. |
Behavior
|
createEffect
(java.lang.String name,
org.eclipse.emf.ecore.EClass eClass)
Creates a new
Behavior , with the specified '
Name
', and sets the '
Effect
' containment reference |
Constraint
|
createGuard
(java.lang.String name)
Creates a new
Constraint ,with the specified '
Name
', and sets the '
Guard
' reference |
Constraint
|
createGuard
(java.lang.String name,
org.eclipse.emf.ecore.EClass eClass)
Creates a new
Constraint , with the specified '
Name
', and sets the '
Guard
' reference |
Trigger
|
createTrigger
(java.lang.String name)
Creates a new
Trigger , with the specified '
Name
', and appends it to the '
Trigger
' containment reference list |
Region
|
getContainer
()
Returns the value of the '
Container
' container reference. |
Behavior
|
getEffect
()
Returns the value of the '
Effect
' containment reference. |
Constraint
|
getGuard
()
Returns the value of the '
Guard
' reference. |
TransitionKind
|
getKind
()
Returns the value of the '
Kind
' attribute. |
Transition
|
getRedefinedTransition
()
Returns the value of the '
Redefined Transition
' reference. |
Vertex
|
getSource
()
Returns the value of the '
Source
' reference |
Vertex
|
getTarget
()
Returns the value of the '
Target
' reference |
Trigger
|
getTrigger
(java.lang.String name)
Retrieves the first
Trigger with the specified '
Name
' from the '
Trigger
' containment reference list |
Trigger
|
getTrigger
(java.lang.String name,
boolean ignoreCase,
boolean createOnDemand)
Retrieves the first
Trigger with the specified '
Name
' from the '
Trigger
' containment reference list |
org.eclipse.emf.common.util.EList<
Trigger>
|
getTriggers
()
Returns the value of the '
Trigger
' containment reference list. |
Classifier
|
redefinitionContext
()
The redefinition context of a transition is the nearest containing statemachine. |
void
|
setContainer
(
Region value)
Sets the value of the '
Container ' container reference |
void
|
setEffect
(
Behavior value)
Sets the value of the '
Effect ' containment reference |
void
|
setGuard
(
Constraint value)
Sets the value of the '
Guard ' reference |
void
|
setKind
(
TransitionKind value)
Sets the value of the '
Kind ' attribute |
void
|
setRedefinedTransition
(
Transition value)
Sets the value of the '
Redefined Transition ' reference |
void
|
setSource
(
Vertex value)
Sets the value of the '
Source ' reference |
void
|
setTarget
(
Vertex value)
Sets the value of the '
Target ' reference |
boolean
|
validateForkSegmentGuards
(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
A fork segment must not have guards or triggers. |
boolean
|
validateForkSegmentState
(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
A fork segment must always target a state. |
boolean
|
validateInitialTransition
(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype <>. |
boolean
|
validateJoinSegmentGuards
(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
A join segment must not have guards or triggers. |
boolean
|
validateJoinSegmentState
(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
A join segment must always originate from a state. |
boolean
|
validateOutgoingPseudostates
(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
Transitions outgoing pseudostates may not have a trigger. |
boolean
|
validateSignaturesCompatible
(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
In case of more than one trigger, the signatures of these must be compatible in case the parameters of the signal are assigned to local variables/attributes. |
Methods inherited from interface org.eclipse.uml2.uml.
Namespace
|
createElementImport,
createElementImport,
createOwnedRule,
createOwnedRule,
createPackageImport,
createPackageImport,
excludeCollisions,
getElementImport,
getElementImport,
getElementImports,
getImportedElements,
getImportedMember,
getImportedMember,
getImportedMembers,
getImportedPackages,
getMember,
getMember,
getMembers,
getNamesOfMember,
getOwnedMember,
getOwnedMember,
getOwnedMembers,
getOwnedRule,
getOwnedRule,
getOwnedRules,
getPackageImport,
getPackageImport,
getPackageImports,
importMembers,
membersAreDistinguishable,
validateMembersDistinguishable
|
Methods inherited from interface org.eclipse.uml2.uml.
NamedElement
|
allNamespaces,
allOwningPackages,
createDependency,
createNameExpression,
createUsage,
getClientDependencies,
getClientDependency,
getClientDependency,
getLabel,
getLabel,
getName,
getNameExpression,
getNamespace,
getQualifiedName,
getVisibility,
isDistinguishableFrom,
isSetName,
isSetVisibility,
separator,
setName,
setNameExpression,
setVisibility,
unsetName,
unsetVisibility,
validateHasNoQualifiedName,
validateHasQualifiedName,
validateVisibilityNeedsOwnership
|
Methods inherited from interface org.eclipse.uml2.uml.
Element
|
addKeyword,
allOwnedElements,
applyStereotype,
createEAnnotation,
createOwnedComment,
destroy,
getApplicableStereotype,
getApplicableStereotypes,
getAppliedStereotype,
getAppliedStereotypes,
getAppliedSubstereotype,
getAppliedSubstereotypes,
getKeywords,
getModel,
getNearestPackage,
getOwnedComments,
getOwnedElements,
getOwner,
getRelationships,
getRelationships,
getRequiredStereotype,
getRequiredStereotypes,
getSourceDirectedRelationships,
getSourceDirectedRelationships,
getStereotypeApplication,
getStereotypeApplications,
getTargetDirectedRelationships,
getTargetDirectedRelationships,
getValue,
hasKeyword,
hasValue,
isStereotypeApplicable,
isStereotypeApplied,
isStereotypeRequired,
mustBeOwned,
removeKeyword,
setValue,
unapplyStereotype,
validateHasOwner,
validateNotOwnSelf
|
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
|
getEAnnotation, getEAnnotations
|
Methods inherited from interface org.eclipse.emf.ecore.EObject
|
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
|
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
|
eAdapters, eDeliver, eNotify, eSetDeliver
|
Methods inherited from interface org.eclipse.uml2.uml.
RedefinableElement
|
getRedefinedElement,
getRedefinedElement,
getRedefinedElements,
getRedefinitionContext,
getRedefinitionContext,
getRedefinitionContexts,
isConsistentWith,
isLeaf,
isRedefinitionContextValid,
setIsLeaf,
validateRedefinitionConsistent,
validateRedefinitionContextValid
|
Methods inherited from interface org.eclipse.uml2.uml.
NamedElement
|
allNamespaces,
allOwningPackages,
createDependency,
createNameExpression,
createUsage,
getClientDependencies,
getClientDependency,
getClientDependency,
getLabel,
getLabel,
getName,
getNameExpression,
getNamespace,
getQualifiedName,
getVisibility,
isDistinguishableFrom,
isSetName,
isSetVisibility,
separator,
setName,
setNameExpression,
setVisibility,
unsetName,
unsetVisibility,
validateHasNoQualifiedName,
validateHasQualifiedName,
validateVisibilityNeedsOwnership
|
Methods inherited from interface org.eclipse.uml2.uml.
Element
|
addKeyword,
allOwnedElements,
applyStereotype,
createEAnnotation,
createOwnedComment,
destroy,
getApplicableStereotype,
getApplicableStereotypes,
getAppliedStereotype,
getAppliedStereotypes,
getAppliedSubstereotype,
getAppliedSubstereotypes,
getKeywords,
getModel,
getNearestPackage,
getOwnedComments,
getOwnedElements,
getOwner,
getRelationships,
getRelationships,
getRequiredStereotype,
getRequiredStereotypes,
getSourceDirectedRelationships,
getSourceDirectedRelationships,
getStereotypeApplication,
getStereotypeApplications,
getTargetDirectedRelationships,
getTargetDirectedRelationships,
getValue,
hasKeyword,
hasValue,
isStereotypeApplicable,
isStereotypeApplied,
isStereotypeRequired,
mustBeOwned,
removeKeyword,
setValue,
unapplyStereotype,
validateHasOwner,
validateNotOwnSelf
|
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
|
getEAnnotation, getEAnnotations
|
Methods inherited from interface org.eclipse.emf.ecore.EObject
|
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
|
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
|
eAdapters, eDeliver, eNotify, eSetDeliver
|
getKind
TransitionKind getKind()
- Returns the value of the '
Kind
' attribute.
The default value is
"external" .
The literals are from the enumeration
TransitionKind .
Indicates the precise type of the transition.
-
-
-
Returns:
- the value of the 'Kind' attribute.
-
See Also:
-
TransitionKind ,
setKind(TransitionKind) ,
UMLPackage.getTransition_Kind()
setKind
void setKind(
TransitionKind value)
- Sets the value of the '
Kind ' attribute.
-
-
-
Parameters:
-
value - the new value of the 'Kind' attribute. -
See Also:
-
TransitionKind ,
getKind()
getContainer
Region getContainer()
- Returns the value of the '
Container
' container reference.
It is bidirectional and its opposite is '
Transition '.
This feature subsets the following features:
Designates the region that owns this transition.
-
-
-
Returns:
- the value of the 'Container' container reference.
-
See Also:
-
setContainer(Region) ,
UMLPackage.getTransition_Container() ,
Region.getTransitions()
setContainer
void setContainer(
Region value)
- Sets the value of the '
Container ' container reference.
-
-
-
Parameters:
-
value - the new value of the 'Container' container reference. -
See Also:
-
getContainer()
getTarget
Vertex getTarget()
- Returns the value of the '
Target
' reference.
Designates the target vertex that is reached when the transition is taken.
-
-
-
Returns:
- the value of the 'Target' reference.
-
See Also:
-
setTarget(Vertex) ,
UMLPackage.getTransition_Target()
setTarget
void setTarget(
Vertex value)
- Sets the value of the '
Target ' reference.
-
-
-
Parameters:
-
value - the new value of the 'Target' reference. -
See Also:
-
getTarget()
getRedefinedTransition
Transition getRedefinedTransition()
- Returns the value of the '
Redefined Transition
' reference.
This feature subsets the following features:
The transition that is redefined by this transition.
-
-
-
Returns:
- the value of the 'Redefined Transition' reference.
-
See Also:
-
setRedefinedTransition(Transition) ,
UMLPackage.getTransition_RedefinedTransition()
setRedefinedTransition
void setRedefinedTransition(
Transition value)
- Sets the value of the '
Redefined Transition ' reference.
-
-
-
Parameters:
-
value - the new value of the 'Redefined Transition' reference. -
See Also:
-
getRedefinedTransition()
getGuard
Constraint getGuard()
- Returns the value of the '
Guard
' reference.
This feature subsets the following features:
A guard is a constraint that provides a fine-grained control over the firing of the transition. The guard is evaluated when an event occurrence is dispatched by the state machine. If the guard is true at that time, the transition may be enabled, otherwise, it is disabled. Guards should be pure expressions without side effects. Guard expressions with side effects are ill formed.
-
-
-
Returns:
- the value of the 'Guard' reference.
-
See Also:
-
setGuard(Constraint) ,
UMLPackage.getTransition_Guard()
setGuard
void setGuard(
Constraint value)
- Sets the value of the '
Guard ' reference.
-
-
-
Parameters:
-
value - the new value of the 'Guard' reference. -
See Also:
-
getGuard()
createGuard
Constraint createGuard(java.lang.String name,
org.eclipse.emf.ecore.EClass eClass)
- Creates a new
Constraint , with the specified '
Name
', and sets the '
Guard
' reference.
-
-
-
Parameters:
-
name - The '
Name
' for the new
Constraint , or null . -
eClass - The Ecore class of the
Constraint to create.
-
Returns:
- The new
Constraint . -
See Also:
-
getGuard()
createGuard
Constraint createGuard(java.lang.String name)
- Creates a new
Constraint ,with the specified '
Name
', and sets the '
Guard
' reference.
-
-
-
Parameters:
-
name - The '
Name
' for the new
Constraint , or null .
-
Returns:
- The new
Constraint . -
See Also:
-
getGuard()
getEffect
Behavior getEffect()
- Returns the value of the '
Effect
' containment reference.
This feature subsets the following features:
Specifies an optional behavior to be performed when the transition fires.
-
-
-
Returns:
- the value of the 'Effect' containment reference.
-
See Also:
-
setEffect(Behavior) ,
UMLPackage.getTransition_Effect()
setEffect
void setEffect(
Behavior value)
- Sets the value of the '
Effect ' containment reference.
-
-
-
Parameters:
-
value - the new value of the 'Effect' containment reference. -
See Also:
-
getEffect()
createEffect
Behavior createEffect(java.lang.String name,
org.eclipse.emf.ecore.EClass eClass)
- Creates a new
Behavior , with the specified '
Name
', and sets the '
Effect
' containment reference.
-
-
-
Parameters:
-
name - The '
Name
' for the new
Behavior , or null . -
eClass - The Ecore class of the
Behavior to create.
-
Returns:
- The new
Behavior . -
See Also:
-
getEffect()
getTriggers
org.eclipse.emf.common.util.EList<
Trigger> getTriggers()
- Returns the value of the '
Trigger
' containment reference list.
The list contents are of type
Trigger .
Specifies the triggers that may fire the transition.
-
-
-
Returns:
- the value of the 'Trigger' containment reference list.
-
See Also:
-
UMLPackage.getTransition_Trigger()
createTrigger
Trigger createTrigger(java.lang.String name)
- Creates a new
Trigger , with the specified '
Name
', and appends it to the '
Trigger
' containment reference list.
-
-
-
Parameters:
-
name - The '
Name
' for the new
Trigger , or null .
-
Returns:
- The new
Trigger . -
See Also:
-
getTriggers()
getTrigger
Trigger getTrigger(java.lang.String name)
- Retrieves the first
Trigger with the specified '
Name
' from the '
Trigger
' containment reference list.
-
-
-
Parameters:
-
name - The '
Name
' of the
Trigger to retrieve, or null .
-
Returns:
- The first
Trigger with the specified '
Name
', or null . -
See Also:
-
getTriggers()
getTrigger
Trigger getTrigger(java.lang.String name,
boolean ignoreCase,
boolean createOnDemand)
- Retrieves the first
Trigger with the specified '
Name
' from the '
Trigger
' containment reference list.
-
-
-
Parameters:
-
name - The '
Name
' of the
Trigger to retrieve, or null . -
ignoreCase - Whether to ignore case in String comparisons. -
createOnDemand - Whether to create a
Trigger on demand if not found.
-
Returns:
- The first
Trigger with the specified '
Name
', or null . -
See Also:
-
getTriggers()
getSource
Vertex getSource()
- Returns the value of the '
Source
' reference.
Designates the originating vertex (state or pseudostate) of the transition.
-
-
-
Returns:
- the value of the 'Source' reference.
-
See Also:
-
setSource(Vertex) ,
UMLPackage.getTransition_Source()
setSource
void setSource(
Vertex value)
- Sets the value of the '
Source ' reference.
-
-
-
Parameters:
-
value - the new value of the 'Source' reference. -
See Also:
-
getSource()
validateForkSegmentGuards
boolean validateForkSegmentGuards(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
-
A fork segment must not have guards or triggers.
(source.oclIsKindOf(Pseudostate) and source.kind = #fork) implies (guard->isEmpty() and trigger->isEmpty())
-
-
-
Parameters:
-
diagnostics - The chain of diagnostics to which problems are to be appended. -
context - The cache of context-specific information.
validateJoinSegmentGuards
boolean validateJoinSegmentGuards(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
-
A join segment must not have guards or triggers.
(target.oclIsKindOf(Pseudostate) and target.kind = #join) implies (guard->isEmpty() and trigger->isEmpty())
-
-
-
Parameters:
-
diagnostics - The chain of diagnostics to which problems are to be appended. -
context - The cache of context-specific information.
validateForkSegmentState
boolean validateForkSegmentState(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
-
A fork segment must always target a state.
(source.oclIsKindOf(Pseudostate) and source.kind = #fork) implies (target.oclIsKindOf(State))
-
-
-
Parameters:
-
diagnostics - The chain of diagnostics to which problems are to be appended. -
context - The cache of context-specific information.
validateJoinSegmentState
boolean validateJoinSegmentState(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
-
A join segment must always originate from a state.
(target.oclIsKindOf(Pseudostate) and target.kind = #join) implies (source.oclIsKindOf(State))
-
-
-
Parameters:
-
diagnostics - The chain of diagnostics to which problems are to be appended. -
context - The cache of context-specific information.
validateOutgoingPseudostates
boolean validateOutgoingPseudostates(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
-
Transitions outgoing pseudostates may not have a trigger.
source.oclIsKindOf(Pseudostate) and (source.kind <> #initial)) implies trigger->isEmpty()
-
-
-
Parameters:
-
diagnostics - The chain of diagnostics to which problems are to be appended. -
context - The cache of context-specific information.
validateInitialTransition
boolean validateInitialTransition(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
-
An initial transition at the topmost level (region of a statemachine) either has no trigger or it has a trigger with the stereotype <>.
self.source.oclIsKindOf(Pseudostate) implies
(self.source.oclAsType(Pseudostate).kind = #initial) implies
(self.source.container = self.stateMachine.top) implies
((self.trigger->isEmpty) or
(self.trigger.stereotype.name = 'create'))
-
-
-
Parameters:
-
diagnostics - The chain of diagnostics to which problems are to be appended. -
context - The cache of context-specific information.
validateSignaturesCompatible
boolean validateSignaturesCompatible(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
java.util.Map<java.lang.Object,java.lang.Object> context)
-
In case of more than one trigger, the signatures of these must be compatible in case the parameters of the signal are assigned to local variables/attributes.
true
-
-
-
Parameters:
-
diagnostics - The chain of diagnostics to which problems are to be appended. -
context - The cache of context-specific information.
redefinitionContext
Classifier redefinitionContext()
-
The redefinition context of a transition is the nearest containing statemachine.
result = let sm = containingStateMachine() in
if sm.context->isEmpty() or sm.general->notEmpty() then
sm
else
sm.context
endif
-
-
containingStateMachine
StateMachine containingStateMachine()
-
The query containingStateMachine() returns the state machine that contains the transition either directly or transitively.
result = container.containingStateMachine()
-
-
|
|