public interface Region extends Namespace, RedefinableElement
The following features are supported:
UMLPackage.getRegion()
SEPARATOR
Modifier and Type | Method and Description |
---|---|
boolean |
belongsToPSM()
The operation belongsToPSM () checks if the region belongs to a protocol state machine
result = if not stateMachine->isEmpty() then
oclIsTypeOf(ProtocolStateMachine)
else if not state->isEmpty() then
state.container.belongsToPSM ()
else false
|
StateMachine |
containingStateMachine()
The operation containingStateMachine() returns the sate machine in which this Region is defined
result = if stateMachine->isEmpty()
then
state.containingStateMachine()
else
stateMachine
endif
|
FinalState |
createFinalState(String name)
Creates a
Sub Final State for the current Region, called 'name'. |
Pseudostate |
createPseudostate(String name,
PseudostateKind kind)
Creates a
Sub Pseudo State for the current Region, called 'name'. |
State |
createState(String name)
Creates a
Sub State for the current Region, called 'name'. |
Vertex |
createSubvertex(String name,
EClass eClass)
Creates a new
Vertex , with the specified 'Name', and appends it to the '
Subvertex' containment reference list |
Transition |
createTransition(String name)
Creates a new
Transition , with the specified 'Name', and appends it to the '
Transition' containment reference list |
Transition |
createTransition(String name,
EClass eClass)
Creates a new
Transition , with the specified 'Name', and appends it to the '
Transition' containment reference list |
Region |
getExtendedRegion()
Returns the value of the 'Extended Region' reference
|
State |
getState()
Returns the value of the 'State' container reference.
|
StateMachine |
getStateMachine()
Returns the value of the 'State Machine' container reference.
|
Vertex |
getSubvertex(String name)
Retrieves the first
Vertex with the specified 'Name' from the 'Subvertex
' containment reference list |
Vertex |
getSubvertex(String name,
boolean ignoreCase,
EClass eClass,
boolean createOnDemand)
Retrieves the first
Vertex with the specified 'Name' from the 'Subvertex
' containment reference list |
MDWEList<Vertex> |
getSubvertices()
Returns the value of the 'Subvertex' containment reference list.
|
Transition |
getTransition(String name)
Retrieves the first
Transition with the specified 'Name' from the '
Transition' containment reference list |
Transition |
getTransition(String name,
boolean ignoreCase,
EClass eClass,
boolean createOnDemand)
Retrieves the first
Transition with the specified 'Name' from the '
Transition' containment reference list |
MDWEList<Transition> |
getTransitions()
Returns the value of the 'Transition' containment reference list.
|
boolean |
isRedefinitionContextValid(Region redefined)
The query isRedefinitionContextValid() specifies whether the redefinition contexts of a region are properly related to the redefinition
contexts of the specified region to allow this element to redefine the other.
|
Classifier |
redefinitionContext()
The redefinition context of a region is the nearest containing statemachine
result = let sm = containingStateMachine() in
if sm.context->isEmpty() or sm.general->notEmpty() then
sm
else
sm.context
endif
|
void |
setExtendedRegion(Region value)
Sets the value of the '
Extended Region ' reference |
void |
setState(State value)
Sets the value of the '
State ' container reference |
void |
setStateMachine(StateMachine value)
Sets the value of the '
State Machine ' container reference |
boolean |
validateDeepHistoryVertex(DiagnosticChain diagnostics,
Map context)
A region can have at most one deep history vertex
self.subvertex->select (v | v.oclIsKindOf(Pseudostate))->
select(p : Pseudostate | p.kind = #deepHistory)->size() <= 1
|
boolean |
validateInitialVertex(DiagnosticChain diagnostics,
Map context)
A region can have at most one initial vertex
self.subvertex->select (v | v.oclIsKindOf(Pseudostate))->
select(p : Pseudostate | p.kind = #initial)->size() <= 1
|
boolean |
validateOwned(DiagnosticChain diagnostics,
Map context)
If a Region is owned by a StateMachine, then it cannot also be owned by a State and vice versa.
|
boolean |
validateShallowHistoryVertex(DiagnosticChain diagnostics,
Map context)
A region can have at most one shallow history vertex
self.subvertex->select(v | v.oclIsKindOf(Pseudostate))->
select(p : Pseudostate | p.kind = #shallowHistory)->size() <= 1
|
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
getRedefinedElement, getRedefinedElement, getRedefinedElements, getRedefinitionContext, getRedefinitionContext, getRedefinitionContexts, isConsistentWith, isLeaf, isRedefinitionContextValid, setIsLeaf, validateRedefinitionConsistent, validateRedefinitionContextValid
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
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
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
getEAnnotation, getEAnnotations
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
eAdapters, eDeliver, eNotify, eSetDeliver
MDWEList<Vertex> getSubvertices()
Vertex
.
It is bidirectional and its opposite is 'Container
'.
The set of vertices that are owned by this region.
UMLPackage.getRegion_Subvertex()
,
Vertex.getContainer()
Vertex createSubvertex(String name, EClass eClass)
Vertex
, with the specified 'Name', and appends it to the '
Subvertex' containment reference list.
name
- The 'Name' for the new Vertex
, or null
.eClass
- The Ecore class of the Vertex
to create.Vertex
.getSubvertices()
State createState(String name)
Sub State
for the current Region, called 'name'.name
- the name of the created StateFinalState createFinalState(String name)
Sub Final State
for the current Region, called 'name'.name
- the name of the created Final StatePseudostate createPseudostate(String name, PseudostateKind kind)
Sub Pseudo State
for the current Region, called 'name'.name
- the name of the created Pseudo Statethe
- kind of the Pseudo StatePseudostateKind
Vertex getSubvertex(String name)
Vertex
with the specified 'Name' from the 'Subvertex
' containment reference list.
name
- The 'Name' of the Vertex
to retrieve, or null
.Vertex
with the specified 'Name', or null
.getSubvertices()
Vertex getSubvertex(String name, boolean ignoreCase, EClass eClass, boolean createOnDemand)
Vertex
with the specified 'Name' from the 'Subvertex
' containment reference list.
name
- The 'Name' of the Vertex
to retrieve, or null
.ignoreCase
- Whether to ignore case in String
comparisons.eClass
- The Ecore class of the Vertex
to retrieve, or null
.createOnDemand
- Whether to create a Vertex
on demand if not found.Vertex
with the specified 'Name', or null
.getSubvertices()
MDWEList<Transition> getTransitions()
Transition
.
It is bidirectional and its opposite is 'Container
'.
The set of transitions owned by the region. Note that internal transitions are owned by a region, but applies to the source state.
UMLPackage.getRegion_Transition()
,
Transition.getContainer()
Transition createTransition(String name, EClass eClass)
Transition
, with the specified 'Name', and appends it to the '
Transition' containment reference list.
name
- The 'Name' for the new Transition
, or null
.eClass
- The Ecore class of the Transition
to create.Transition
.getTransitions()
Transition createTransition(String name)
Transition
, with the specified 'Name', and appends it to the '
Transition' containment reference list.
name
- The 'Name' for the new Transition
, or null
.Transition
.getTransitions()
Transition getTransition(String name)
Transition
with the specified 'Name' from the '
Transition' containment reference list.
name
- The 'Name' of the Transition
to retrieve, or null
.Transition
with the specified 'Name', or null
.getTransitions()
Transition getTransition(String name, boolean ignoreCase, EClass eClass, boolean createOnDemand)
Transition
with the specified 'Name' from the '
Transition' containment reference list.
name
- The 'Name' of the Transition
to retrieve, or null
.ignoreCase
- Whether to ignore case in String
comparisons.eClass
- The Ecore class of the Transition
to retrieve, or null
.createOnDemand
- Whether to create a Transition
on demand if not found.Transition
with the specified 'Name', or null
.getTransitions()
State getState()
Region
'.
The State that owns the Region. If a Region is owned by a State, then it cannot also be owned by a StateMachine.
setState(State)
,
UMLPackage.getRegion_State()
,
State.getRegions()
void setState(State value)
State
' container reference.
value
- the new value of the 'State' container reference.getState()
Region getExtendedRegion()
setExtendedRegion(Region)
,
UMLPackage.getRegion_ExtendedRegion()
void setExtendedRegion(Region value)
Extended Region
' reference.
value
- the new value of the 'Extended Region' reference.getExtendedRegion()
StateMachine getStateMachine()
Region
'.
The StateMachine that owns the Region. If a Region is owned by a StateMachine, then it cannot also be owned by a State.
setStateMachine(StateMachine)
,
UMLPackage.getRegion_StateMachine()
,
StateMachine.getRegions()
void setStateMachine(StateMachine value)
State Machine
' container reference.
value
- the new value of the 'State Machine' container reference.getStateMachine()
boolean validateInitialVertex(DiagnosticChain diagnostics, Map context)
boolean validateDeepHistoryVertex(DiagnosticChain diagnostics, Map context)
boolean validateShallowHistoryVertex(DiagnosticChain diagnostics, Map context)
boolean validateOwned(DiagnosticChain diagnostics, Map context)
Classifier redefinitionContext()
boolean isRedefinitionContextValid(Region redefined)
StateMachine containingStateMachine()
boolean belongsToPSM()