Package com.sodius.mdw.metamodel.uml21
Interface State
-
- All Superinterfaces:
Comparable<Object>
,Element
,org.eclipse.emf.ecore.EModelElement
,org.eclipse.emf.ecore.EObject
,MDWEObject
,MDWObject
,NamedElement
,Namespace
,org.eclipse.emf.common.notify.Notifier
,RedefinableElement
,Vertex
- All Known Subinterfaces:
FinalState
public interface State extends Namespace, RedefinableElement, Vertex
A representation of the model object 'State'. A state models a situation during which some (usually implicit) invariant condition holds. The states of protocol state machines are exposed to the users of their context classifiers. A protocol state represents an exposed stable situation of its context classifier: when an instance of the classifier is not processing any operation, users of this instance can always know its state configuration.The following features are supported:
- See Also:
UMLPackage.getState()
-
-
Field Summary
-
Fields inherited from interface com.sodius.mdw.metamodel.uml21.NamedElement
SEPARATOR
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ConnectionPointReference
createConnection(String name)
Creates a newConnectionPointReference
, with the specified 'Name', and appends it to the 'Connection' containment reference list.Pseudostate
createConnectionPoint(String name)
Creates a newPseudostate
, with the specified 'Name', and appends it to the ' Connection Point' containment reference list.Trigger
createDeferrableTrigger(String name)
Creates a newTrigger
, with the specified 'Name', and appends it to the ' Deferrable Trigger' containment reference list.Behavior
createDoActivity(String name, org.eclipse.emf.ecore.EClass eClass)
Creates a newBehavior
, with the specified 'Name', and sets the ' Do Activity' containment reference.Behavior
createEntry(String name, org.eclipse.emf.ecore.EClass eClass)
Creates a newBehavior
, with the specified 'Name', and sets the 'Entry' containment reference.Behavior
createExit(String name, org.eclipse.emf.ecore.EClass eClass)
Creates a newBehavior
, with the specified 'Name', and sets the 'Exit' containment reference.Region
createRegion(String name)
Creates a newRegion
, with the specified 'Name', and appends it to the ' Region' containment reference list.Constraint
createStateInvariant(String name)
Creates a newConstraint
,with the specified 'Name', and sets the ' State Invariant' containment reference.Constraint
createStateInvariant(String name, org.eclipse.emf.ecore.EClass eClass)
Creates a newConstraint
, with the specified 'Name', and sets the ' State Invariant' containment reference.ConnectionPointReference
getConnection(String name)
Retrieves the firstConnectionPointReference
with the specified 'Name' from the ' Connection' containment reference list.ConnectionPointReference
getConnection(String name, boolean ignoreCase, boolean createOnDemand)
Retrieves the firstConnectionPointReference
with the specified 'Name' from the ' Connection' containment reference list.Pseudostate
getConnectionPoint(String name)
Retrieves the firstPseudostate
with the specified 'Name' from the ' Connection Point' containment reference list.Pseudostate
getConnectionPoint(String name, boolean ignoreCase, boolean createOnDemand)
Retrieves the firstPseudostate
with the specified 'Name' from the ' Connection Point' containment reference list.MDWEList<Pseudostate>
getConnectionPoints()
Returns the value of the 'Connection Point' containment reference list.MDWEList<ConnectionPointReference>
getConnections()
Returns the value of the 'Connection' containment reference list.Trigger
getDeferrableTrigger(String name)
Retrieves the firstTrigger
with the specified 'Name' from the ' Deferrable Trigger' containment reference list.Trigger
getDeferrableTrigger(String name, boolean ignoreCase, boolean createOnDemand)
Retrieves the firstTrigger
with the specified 'Name' from the ' Deferrable Trigger' containment reference list.MDWEList<Trigger>
getDeferrableTriggers()
Returns the value of the 'Deferrable Trigger' containment reference list.Behavior
getDoActivity()
Returns the value of the 'Do Activity' containment reference.Behavior
getEntry()
Returns the value of the 'Entry' containment reference.Behavior
getExit()
Returns the value of the 'Exit' containment reference.State
getRedefinedState()
Returns the value of the 'Redefined State' reference.Region
getRegion(String name)
Retrieves the firstRegion
with the specified 'Name' from the 'Region' containment reference list.Region
getRegion(String name, boolean ignoreCase, boolean createOnDemand)
Retrieves the firstRegion
with the specified 'Name' from the 'Region' containment reference list.MDWEList<Region>
getRegions()
Returns the value of the 'Region' containment reference list.Constraint
getStateInvariant()
Returns the value of the 'State Invariant' containment reference.StateMachine
getSubmachine()
Returns the value of the 'Submachine' reference.boolean
isComposite()
Returns the value of the 'Is Composite' attribute.boolean
isOrthogonal()
Returns the value of the 'Is Orthogonal' attribute.boolean
isRedefinitionContextValid(State redefined)
The query isRedefinitionContextValid() specifies whether the redefinition contexts of a state are properly related to the redefinition contexts of the specified state to allow this element to redefine the other.boolean
isSimple()
Returns the value of the 'Is Simple' attribute.boolean
isSubmachineState()
Returns the value of the 'Is Submachine State' attribute.Classifier
redefinitionContext()
The redefinition context of a state is the nearest containing statemachine.void
setDoActivity(Behavior value)
Sets the value of the 'Do Activity
' containment reference.void
setEntry(Behavior value)
Sets the value of the 'Entry
' containment reference.void
setExit(Behavior value)
Sets the value of the 'Exit
' containment reference.void
setRedefinedState(State value)
Sets the value of the 'Redefined State
' reference.void
setStateInvariant(Constraint value)
Sets the value of the 'State Invariant
' containment reference.void
setSubmachine(StateMachine value)
Sets the value of the 'Submachine
' reference.boolean
validateCompositeStates(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
Only composite states can have entry or exit pseudostates defined.boolean
validateDestinationsOrSourcesOfTransitions(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
The connection point references used as destinations/sources of transitions associated with a submachine state must be defined as entry/exit points in the submachine state machine.boolean
validateEntryOrExit(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
Only entry or exit pseudostates can serve as connection points.boolean
validateSubmachineOrRegions(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
A state is not allowed to have both a submachine and regions.boolean
validateSubmachineStates(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
Only submachine states can have connection point references.-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.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, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
-
Methods inherited from interface com.sodius.mdw.core.model.MDWObject
compareTo, eExtendedClass, eIsInstanceOf, eIsInstanceOf, eIsProfiled, eIsRemoved, eMetamodel, eMetaTypeName, eModel, eRemove, eSetUniqueID, eUniqueID, superScript, superScript, toBoolean, toBoolean, toByte, toByte, toChar, toChar, toDouble, toDouble, toFloat, toFloat, toInt, toInt, toList, toList, toList, toList, toList, toLong, toLong, toObject, toObject, toSet, toSet, toShort, toShort, toString, toString
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.NamedElement
allNamespaces, allOwningPackages, createDependency, createNameExpression, 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 com.sodius.mdw.metamodel.uml21.Namespace
createElementImport, createElementImport, createOwnedDiagram, createOwnedRule, createOwnedRule, createPackageImport, createPackageImport, excludeCollisions, getElementImport, getElementImport, getElementImports, getImportedElements, getImportedMember, getImportedMember, getImportedMembers, getImportedPackages, getMember, getMember, getMembers, getNamesOfMember, getOwnedDiagrams, getOwnedDiagrams, getOwnedMember, getOwnedMember, getOwnedMembers, getOwnedRule, getOwnedRule, getOwnedRules, getPackageImport, getPackageImport, getPackageImports, importMembers, membersAreDistinguishable, validateMembersDistinguishable
-
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.RedefinableElement
getRedefinedElement, getRedefinedElement, getRedefinedElements, getRedefinitionContext, getRedefinitionContext, getRedefinitionContexts, isConsistentWith, isLeaf, isRedefinitionContextValid, setIsLeaf, validateRedefinitionConsistent, validateRedefinitionContextValid
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.Vertex
containingStateMachine, getContainer, getIncoming, getIncoming, getIncomings, getOutgoing, getOutgoing, getOutgoings, setContainer
-
-
-
-
Method Detail
-
isComposite
boolean isComposite()
Returns the value of the 'Is Composite' attribute. The default value is"false"
. A state with isComposite=true is said to be a composite state. A composite state is a state that contains at least one region.- Returns:
- the value of the 'Is Composite' attribute.
- See Also:
UMLPackage.getState_IsComposite()
-
isOrthogonal
boolean isOrthogonal()
Returns the value of the 'Is Orthogonal' attribute. The default value is"false"
. A state with isOrthogonal=true is said to be an orthogonal composite state. An orthogonal composite state contains two or more regions.- Returns:
- the value of the 'Is Orthogonal' attribute.
- See Also:
UMLPackage.getState_IsOrthogonal()
-
isSimple
boolean isSimple()
Returns the value of the 'Is Simple' attribute. The default value is"true"
. A state with isSimple=true is said to be a simple state. A simple state does not have any regions and it does not refer to any submachine state machine.- Returns:
- the value of the 'Is Simple' attribute.
- See Also:
UMLPackage.getState_IsSimple()
-
isSubmachineState
boolean isSubmachineState()
Returns the value of the 'Is Submachine State' attribute. The default value is"false"
. A state with isSubmachineState=true is said to be a submachine state. Such a state refers to a state machine (submachine).- Returns:
- the value of the 'Is Submachine State' attribute.
- See Also:
UMLPackage.getState_IsSubmachineState()
-
getSubmachine
StateMachine getSubmachine()
Returns the value of the 'Submachine' reference. It is bidirectional and its opposite is 'Submachine State
'. The state machine that is to be inserted in place of the (submachine) state.- Returns:
- the value of the 'Submachine' reference.
- See Also:
setSubmachine(StateMachine)
,UMLPackage.getState_Submachine()
,StateMachine.getSubmachineStates()
-
setSubmachine
void setSubmachine(StateMachine value)
Sets the value of the 'Submachine
' reference.- Parameters:
value
- the new value of the 'Submachine' reference.- See Also:
getSubmachine()
-
getConnections
MDWEList<ConnectionPointReference> getConnections()
Returns the value of the 'Connection' containment reference list. The list contents are of typeConnectionPointReference
. It is bidirectional and its opposite is 'State
'. The entry and exit connection points used in conjunction with this (submachine) state, i.e. as targets and sources, respectively, in the region with the submachine state. A connection point reference references the corresponding definition of a connection point pseudostate in the statemachine referenced by the submachinestate.- Returns:
- the value of the 'Connection' containment reference list.
- See Also:
UMLPackage.getState_Connection()
,ConnectionPointReference.getState()
-
createConnection
ConnectionPointReference createConnection(String name)
Creates a newConnectionPointReference
, with the specified 'Name', and appends it to the 'Connection' containment reference list.- Parameters:
name
- The 'Name' for the newConnectionPointReference
, ornull
.- Returns:
- The new
ConnectionPointReference
. - See Also:
getConnections()
-
getConnection
ConnectionPointReference getConnection(String name)
Retrieves the firstConnectionPointReference
with the specified 'Name' from the ' Connection' containment reference list.- Parameters:
name
- The 'Name' of theConnectionPointReference
to retrieve, ornull
.- Returns:
- The first
ConnectionPointReference
with the specified 'Name', ornull
. - See Also:
getConnections()
-
getConnection
ConnectionPointReference getConnection(String name, boolean ignoreCase, boolean createOnDemand)
Retrieves the firstConnectionPointReference
with the specified 'Name' from the ' Connection' containment reference list.- Parameters:
name
- The 'Name' of theConnectionPointReference
to retrieve, ornull
.ignoreCase
- Whether to ignore case inString
comparisons.createOnDemand
- Whether to create aConnectionPointReference
on demand if not found.- Returns:
- The first
ConnectionPointReference
with the specified 'Name', ornull
. - See Also:
getConnections()
-
getConnectionPoints
MDWEList<Pseudostate> getConnectionPoints()
Returns the value of the 'Connection Point' containment reference list. The list contents are of typePseudostate
. It is bidirectional and its opposite is 'State
'. The entry and exit pseudostates of a composite state. These can only be entry or exit Pseudostates, and they must have different names. They can only be defined for composite states.- Returns:
- the value of the 'Connection Point' containment reference list.
- See Also:
UMLPackage.getState_ConnectionPoint()
,Pseudostate.getState()
-
createConnectionPoint
Pseudostate createConnectionPoint(String name)
Creates a newPseudostate
, with the specified 'Name', and appends it to the ' Connection Point' containment reference list.- Parameters:
name
- The 'Name' for the newPseudostate
, ornull
.- Returns:
- The new
Pseudostate
. - See Also:
getConnectionPoints()
-
getConnectionPoint
Pseudostate getConnectionPoint(String name)
Retrieves the firstPseudostate
with the specified 'Name' from the ' Connection Point' containment reference list.- Parameters:
name
- The 'Name' of thePseudostate
to retrieve, ornull
.- Returns:
- The first
Pseudostate
with the specified 'Name', ornull
. - See Also:
getConnectionPoints()
-
getConnectionPoint
Pseudostate getConnectionPoint(String name, boolean ignoreCase, boolean createOnDemand)
Retrieves the firstPseudostate
with the specified 'Name' from the ' Connection Point' containment reference list.- Parameters:
name
- The 'Name' of thePseudostate
to retrieve, ornull
.ignoreCase
- Whether to ignore case inString
comparisons.createOnDemand
- Whether to create aPseudostate
on demand if not found.- Returns:
- The first
Pseudostate
with the specified 'Name', ornull
. - See Also:
getConnectionPoints()
-
getRedefinedState
State getRedefinedState()
Returns the value of the 'Redefined State' reference. The state of which this state is a redefinition.- Returns:
- the value of the 'Redefined State' reference.
- See Also:
setRedefinedState(State)
,UMLPackage.getState_RedefinedState()
-
setRedefinedState
void setRedefinedState(State value)
Sets the value of the 'Redefined State
' reference.- Parameters:
value
- the new value of the 'Redefined State' reference.- See Also:
getRedefinedState()
-
getStateInvariant
Constraint getStateInvariant()
Returns the value of the 'State Invariant' containment reference. Specifies conditions that are always true when this state is the current state. In protocol state machines, state invariants are additional conditions to the preconditions of the outgoing transitions, and to the postcondition of the incoming transitions.- Returns:
- the value of the 'State Invariant' containment reference.
- See Also:
setStateInvariant(Constraint)
,UMLPackage.getState_StateInvariant()
-
setStateInvariant
void setStateInvariant(Constraint value)
Sets the value of the 'State Invariant
' containment reference.- Parameters:
value
- the new value of the 'State Invariant' containment reference.- See Also:
getStateInvariant()
-
createStateInvariant
Constraint createStateInvariant(String name, org.eclipse.emf.ecore.EClass eClass)
Creates a newConstraint
, with the specified 'Name', and sets the ' State Invariant' containment reference.- Parameters:
name
- The 'Name' for the newConstraint
, ornull
.eClass
- The Ecore class of theConstraint
to create.- Returns:
- The new
Constraint
. - See Also:
getStateInvariant()
-
createStateInvariant
Constraint createStateInvariant(String name)
Creates a newConstraint
,with the specified 'Name', and sets the ' State Invariant' containment reference.- Parameters:
name
- The 'Name' for the newConstraint
, ornull
.- Returns:
- The new
Constraint
. - See Also:
getStateInvariant()
-
getEntry
Behavior getEntry()
Returns the value of the 'Entry' containment reference. An optional behavior that is executed whenever this state is entered regardless of the transition taken to reach the state. If defined, entry actions are always executed to completion prior to any internal behavior or transitions performed within the state.- Returns:
- the value of the 'Entry' containment reference.
- See Also:
setEntry(Behavior)
,UMLPackage.getState_Entry()
-
setEntry
void setEntry(Behavior value)
Sets the value of the 'Entry
' containment reference.- Parameters:
value
- the new value of the 'Entry' containment reference.- See Also:
getEntry()
-
createEntry
Behavior createEntry(String name, org.eclipse.emf.ecore.EClass eClass)
Creates a newBehavior
, with the specified 'Name', and sets the 'Entry' containment reference.- Parameters:
name
- The 'Name' for the newBehavior
, ornull
.eClass
- The Ecore class of theBehavior
to create.- Returns:
- The new
Behavior
. - See Also:
getEntry()
-
getExit
Behavior getExit()
Returns the value of the 'Exit' containment reference. An optional behavior that is executed whenever this state is exited regardless of which transition was taken out of the state. If defined, exit actions are always executed to completion only after all internal activities and transition actions have completed execution.- Returns:
- the value of the 'Exit' containment reference.
- See Also:
setExit(Behavior)
,UMLPackage.getState_Exit()
-
setExit
void setExit(Behavior value)
Sets the value of the 'Exit
' containment reference.- Parameters:
value
- the new value of the 'Exit' containment reference.- See Also:
getExit()
-
createExit
Behavior createExit(String name, org.eclipse.emf.ecore.EClass eClass)
Creates a newBehavior
, with the specified 'Name', and sets the 'Exit' containment reference.
-
getDoActivity
Behavior getDoActivity()
Returns the value of the 'Do Activity' containment reference. An optional behavior that is executed while being in the state. The execution starts when this state is entered, and stops either by itself, or when the state is exited, whichever comes first.- Returns:
- the value of the 'Do Activity' containment reference.
- See Also:
setDoActivity(Behavior)
,UMLPackage.getState_DoActivity()
-
setDoActivity
void setDoActivity(Behavior value)
Sets the value of the 'Do Activity
' containment reference.- Parameters:
value
- the new value of the 'Do Activity' containment reference.- See Also:
getDoActivity()
-
createDoActivity
Behavior createDoActivity(String name, org.eclipse.emf.ecore.EClass eClass)
Creates a newBehavior
, with the specified 'Name', and sets the ' Do Activity' containment reference.- Parameters:
name
- The 'Name' for the newBehavior
, ornull
.eClass
- The Ecore class of theBehavior
to create.- Returns:
- The new
Behavior
. - See Also:
getDoActivity()
-
getDeferrableTriggers
MDWEList<Trigger> getDeferrableTriggers()
Returns the value of the 'Deferrable Trigger' containment reference list. The list contents are of typeTrigger
. A list of triggers that are candidates to be retained by the state machine if they trigger no transitions out of the state (not consumed). A deferred trigger is retained until the state machine reaches a state configuration where it is no longer deferred.- Returns:
- the value of the 'Deferrable Trigger' containment reference list.
- See Also:
UMLPackage.getState_DeferrableTrigger()
-
createDeferrableTrigger
Trigger createDeferrableTrigger(String name)
Creates a newTrigger
, with the specified 'Name', and appends it to the ' Deferrable Trigger' containment reference list.- Parameters:
name
- The 'Name' for the newTrigger
, ornull
.- Returns:
- The new
Trigger
. - See Also:
getDeferrableTriggers()
-
getDeferrableTrigger
Trigger getDeferrableTrigger(String name)
Retrieves the firstTrigger
with the specified 'Name' from the ' Deferrable Trigger' containment reference list.- Parameters:
name
- The 'Name' of theTrigger
to retrieve, ornull
.- Returns:
- The first
Trigger
with the specified 'Name', ornull
. - See Also:
getDeferrableTriggers()
-
getDeferrableTrigger
Trigger getDeferrableTrigger(String name, boolean ignoreCase, boolean createOnDemand)
Retrieves the firstTrigger
with the specified 'Name' from the ' Deferrable Trigger' containment reference list.- Parameters:
name
- The 'Name' of theTrigger
to retrieve, ornull
.ignoreCase
- Whether to ignore case inString
comparisons.createOnDemand
- Whether to create aTrigger
on demand if not found.- Returns:
- The first
Trigger
with the specified 'Name', ornull
. - See Also:
getDeferrableTriggers()
-
getRegions
MDWEList<Region> getRegions()
Returns the value of the 'Region' containment reference list. The list contents are of typeRegion
. It is bidirectional and its opposite is 'State
'. The regions owned directly by the state.- Returns:
- the value of the 'Region' containment reference list.
- See Also:
UMLPackage.getState_Region()
,Region.getState()
-
createRegion
Region createRegion(String name)
Creates a newRegion
, with the specified 'Name', and appends it to the ' Region' containment reference list.- Parameters:
name
- The 'Name' for the newRegion
, ornull
.- Returns:
- The new
Region
. - See Also:
getRegions()
-
getRegion
Region getRegion(String name)
Retrieves the firstRegion
with the specified 'Name' from the 'Region' containment reference list.- Parameters:
name
- The 'Name' of theRegion
to retrieve, ornull
.- Returns:
- The first
Region
with the specified 'Name', ornull
. - See Also:
getRegions()
-
getRegion
Region getRegion(String name, boolean ignoreCase, boolean createOnDemand)
Retrieves the firstRegion
with the specified 'Name' from the 'Region' containment reference list.- Parameters:
name
- The 'Name' of theRegion
to retrieve, ornull
.ignoreCase
- Whether to ignore case inString
comparisons.createOnDemand
- Whether to create aRegion
on demand if not found.- Returns:
- The first
Region
with the specified 'Name', ornull
. - See Also:
getRegions()
-
validateSubmachineStates
boolean validateSubmachineStates(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
Only submachine states can have connection point references. isSubmachineState implies connection->notEmpty ( )
-
validateDestinationsOrSourcesOfTransitions
boolean validateDestinationsOrSourcesOfTransitions(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
The connection point references used as destinations/sources of transitions associated with a submachine state must be defined as entry/exit points in the submachine state machine. self.isSubmachineState implies (self.connection->forAll (cp | cp.entry->forAll (p | p.statemachine = self.submachine) and cp.exit->forAll (p | p.statemachine = self.submachine)))
-
validateSubmachineOrRegions
boolean validateSubmachineOrRegions(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
A state is not allowed to have both a submachine and regions. isComposite implies not isSubmachineState
-
validateCompositeStates
boolean validateCompositeStates(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
Only composite states can have entry or exit pseudostates defined. connectionPoint->notEmpty() implies isComoposite
-
validateEntryOrExit
boolean validateEntryOrExit(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)
Only entry or exit pseudostates can serve as connection points. connectionPoint->forAll(cp|cp.kind = #entry or cp.kind = #exit)
-
redefinitionContext
Classifier redefinitionContext()
The redefinition context of a state is the nearest containing statemachine. result = let sm = containingStateMachine() in if sm.context->isEmpty() or sm.general->notEmpty() then sm else sm.context endif
-
isRedefinitionContextValid
boolean isRedefinitionContextValid(State redefined)
The query isRedefinitionContextValid() specifies whether the redefinition contexts of a state are properly related to the redefinition contexts of the specified state to allow this element to redefine the other. The containing region of a redefining state must redefine the containing region of the redefined state. result = true
-
-