Package com.sodius.mdw.metamodel.uml21
Interface LoopNode
-
- All Superinterfaces:
Action,ActivityGroup,ActivityNode,Comparable<Object>,Element,org.eclipse.emf.ecore.EModelElement,org.eclipse.emf.ecore.EObject,ExecutableNode,MDWEObject,MDWObject,NamedElement,Namespace,org.eclipse.emf.common.notify.Notifier,RedefinableElement,StructuredActivityNode
public interface LoopNode extends StructuredActivityNode
A representation of the model object 'Loop Node'. A loop node is a structured activity node that represents a loop with setup, test, and body sections.The following features are supported:
- See Also:
UMLPackage.getLoopNode()
-
-
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 InputPincreateLoopVariableInput(String name, Type type)Creates a newInputPin, with the specified 'Name', and 'Type', and appends it to the 'Loop Variable Input' containment reference list.InputPincreateLoopVariableInput(String name, Type type, org.eclipse.emf.ecore.EClass eClass)Creates a newInputPin, with the specified 'Name', and 'Type', and appends it to the 'Loop Variable Input' containment reference list.OutputPincreateResult(String name, Type type)Creates a newOutputPin, with the specified 'Name', and 'Type', and appends it to the 'Result' containment reference list.OutputPingetBodyOutput(String name, Type type)Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Body Output' reference list.OutputPingetBodyOutput(String name, Type type, boolean ignoreCase)Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Body Output' reference list.MDWEList<OutputPin>getBodyOutputs()Returns the value of the 'Body Output' reference list.ExecutableNodegetBodyPart(String name)Retrieves the firstExecutableNodewith the specified 'Name' from the ' Body Part' reference list.ExecutableNodegetBodyPart(String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)Retrieves the firstExecutableNodewith the specified 'Name' from the ' Body Part' reference list.MDWEList<ExecutableNode>getBodyParts()Returns the value of the 'Body Part' reference list.OutputPingetDecider()Returns the value of the 'Decider' reference.OutputPingetLoopVariable(String name, Type type)Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Loop Variable' reference list.OutputPingetLoopVariable(String name, Type type, boolean ignoreCase)Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Loop Variable' reference list.InputPingetLoopVariableInput(String name, Type type)Retrieves the firstInputPinwith the specified 'Name', and 'Type' from the 'Loop Variable Input' containment reference list.InputPingetLoopVariableInput(String name, Type type, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass, boolean createOnDemand)Retrieves the firstInputPinwith the specified 'Name', and 'Type' from the 'Loop Variable Input' containment reference list.MDWEList<InputPin>getLoopVariableInputs()Returns the value of the 'Loop Variable Input' containment reference list.MDWEList<OutputPin>getLoopVariables()Returns the value of the 'Loop Variable' reference list.OutputPingetResult(String name, Type type)Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Result' containment reference list.OutputPingetResult(String name, Type type, boolean ignoreCase, boolean createOnDemand)Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Result' containment reference list.MDWEList<OutputPin>getResults()Returns the value of the 'Result' containment reference list.ExecutableNodegetSetupPart(String name)Retrieves the firstExecutableNodewith the specified 'Name' from the ' Setup Part' reference list.ExecutableNodegetSetupPart(String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)Retrieves the firstExecutableNodewith the specified 'Name' from the ' Setup Part' reference list.MDWEList<ExecutableNode>getSetupParts()Returns the value of the 'Setup Part' reference list.ExecutableNodegetTest(String name)Retrieves the firstExecutableNodewith the specified 'Name' from the ' Test' reference list.ExecutableNodegetTest(String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)Retrieves the firstExecutableNodewith the specified 'Name' from the ' Test' reference list.MDWEList<ExecutableNode>getTests()Returns the value of the 'Test' reference list.booleanisTestedFirst()Returns the value of the 'Is Tested First' attribute.voidsetDecider(OutputPin value)Sets the value of the 'Decider' reference.voidsetIsTestedFirst(boolean value)Sets the value of the 'Is Tested First' attribute.booleanvalidateBodyOutputPins(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)The bodyOutput pins are output pins on actions in the body of the loop node.booleanvalidateInputEdges(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)Loop variable inputs must not have outgoing edges.booleanvalidateResultNoIncoming(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)The result output pins have no incoming edges.-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.Action
createLocalPostcondition, createLocalPostcondition, createLocalPrecondition, createLocalPrecondition, getContext, getInput, getInput, getInputs, getLocalPostcondition, getLocalPostcondition, getLocalPostconditions, getLocalPrecondition, getLocalPrecondition, getLocalPreconditions, getOutput, getOutput, getOutputs
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.ActivityGroup
getContainedEdge, getContainedEdge, getContainedEdges, getContainedNode, getContainedNode, getContainedNodes, getInActivity, getSubgroups, getSuperGroup, setInActivity, validateGroupOwned, validateNodesAndEdges, validateNotContained
-
Methods inherited from interface com.sodius.mdw.metamodel.uml21.ActivityNode
getActivity, getIncoming, getIncoming, getIncomings, getInGroups, getInInterruptibleRegions, getInPartition, getInPartition, getInPartitions, getInStructuredNode, getOutgoing, getOutgoing, getOutgoings, getRedefinedNode, getRedefinedNode, getRedefinedNodes, setActivity, setInStructuredNode, validateOwned, validateOwnedStructuredNode
-
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.metamodel.uml21.ExecutableNode
createHandler, getHandlers
-
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.StructuredActivityNode
createEdge, createNode, createStructuredNodeInput, createStructuredNodeInput, createStructuredNodeOutput, createVariable, getEdge, getEdge, getEdges, getNode, getNode, getNodes, getStructuredNodeInput, getStructuredNodeInput, getStructuredNodeInputs, getStructuredNodeOutput, getStructuredNodeOutput, getStructuredNodeOutputs, getVariable, getVariable, getVariables, isMustIsolate, setMustIsolate, validateEdges
-
-
-
-
Method Detail
-
isTestedFirst
boolean isTestedFirst()
Returns the value of the 'Is Tested First' attribute. The default value is"false". If true, the test is performed before the first execution of the body. If false, the body is executed once before the test is performed.- Returns:
- the value of the 'Is Tested First' attribute.
- See Also:
setIsTestedFirst(boolean),UMLPackage.getLoopNode_IsTestedFirst()
-
setIsTestedFirst
void setIsTestedFirst(boolean value)
Sets the value of the 'Is Tested First' attribute.- Parameters:
value- the new value of the 'Is Tested First' attribute.- See Also:
isTestedFirst()
-
getBodyParts
MDWEList<ExecutableNode> getBodyParts()
Returns the value of the 'Body Part' reference list. The list contents are of typeExecutableNode. The set of nodes and edges that perform the repetitive computations of the loop. The body section is executed as long as the test section produces a true value.- Returns:
- the value of the 'Body Part' reference list.
- See Also:
UMLPackage.getLoopNode_BodyPart()
-
getBodyPart
ExecutableNode getBodyPart(String name)
Retrieves the firstExecutableNodewith the specified 'Name' from the ' Body Part' reference list.- Parameters:
name- The 'Name' of theExecutableNodeto retrieve, ornull.- Returns:
- The first
ExecutableNodewith the specified 'Name', ornull. - See Also:
getBodyParts()
-
getBodyPart
ExecutableNode getBodyPart(String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)
Retrieves the firstExecutableNodewith the specified 'Name' from the ' Body Part' reference list.- Parameters:
name- The 'Name' of theExecutableNodeto retrieve, ornull.ignoreCase- Whether to ignore case inStringcomparisons.eClass- The Ecore class of theExecutableNodeto retrieve, ornull.- Returns:
- The first
ExecutableNodewith the specified 'Name', ornull. - See Also:
getBodyParts()
-
getSetupParts
MDWEList<ExecutableNode> getSetupParts()
Returns the value of the 'Setup Part' reference list. The list contents are of typeExecutableNode. The set of nodes and edges that initialize values or perform other setup computations for the loop.- Returns:
- the value of the 'Setup Part' reference list.
- See Also:
UMLPackage.getLoopNode_SetupPart()
-
getSetupPart
ExecutableNode getSetupPart(String name)
Retrieves the firstExecutableNodewith the specified 'Name' from the ' Setup Part' reference list.- Parameters:
name- The 'Name' of theExecutableNodeto retrieve, ornull.- Returns:
- The first
ExecutableNodewith the specified 'Name', ornull. - See Also:
getSetupParts()
-
getSetupPart
ExecutableNode getSetupPart(String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)
Retrieves the firstExecutableNodewith the specified 'Name' from the ' Setup Part' reference list.- Parameters:
name- The 'Name' of theExecutableNodeto retrieve, ornull.ignoreCase- Whether to ignore case inStringcomparisons.eClass- The Ecore class of theExecutableNodeto retrieve, ornull.- Returns:
- The first
ExecutableNodewith the specified 'Name', ornull. - See Also:
getSetupParts()
-
getDecider
OutputPin getDecider()
Returns the value of the 'Decider' reference. An output pin within the test fragment the value of which is examined after execution of the test to determine whether to execute the loop body.- Returns:
- the value of the 'Decider' reference.
- See Also:
setDecider(OutputPin),UMLPackage.getLoopNode_Decider()
-
setDecider
void setDecider(OutputPin value)
Sets the value of the 'Decider' reference.- Parameters:
value- the new value of the 'Decider' reference.- See Also:
getDecider()
-
getTests
MDWEList<ExecutableNode> getTests()
Returns the value of the 'Test' reference list. The list contents are of typeExecutableNode. The set of nodes, edges, and designated value that compute a Boolean value to determine if another execution of the body will be performed.- Returns:
- the value of the 'Test' reference list.
- See Also:
UMLPackage.getLoopNode_Test()
-
getTest
ExecutableNode getTest(String name)
Retrieves the firstExecutableNodewith the specified 'Name' from the ' Test' reference list.- Parameters:
name- The 'Name' of theExecutableNodeto retrieve, ornull.- Returns:
- The first
ExecutableNodewith the specified 'Name', ornull. - See Also:
getTests()
-
getTest
ExecutableNode getTest(String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)
Retrieves the firstExecutableNodewith the specified 'Name' from the ' Test' reference list.- Parameters:
name- The 'Name' of theExecutableNodeto retrieve, ornull.ignoreCase- Whether to ignore case inStringcomparisons.eClass- The Ecore class of theExecutableNodeto retrieve, ornull.- Returns:
- The first
ExecutableNodewith the specified 'Name', ornull. - See Also:
getTests()
-
getResults
MDWEList<OutputPin> getResults()
Returns the value of the 'Result' containment reference list. The list contents are of typeOutputPin. A list of output pins that constitute the data flow output of the entire loop.- Returns:
- the value of the 'Result' containment reference list.
- See Also:
UMLPackage.getLoopNode_Result()
-
createResult
OutputPin createResult(String name, Type type)
Creates a newOutputPin, with the specified 'Name', and 'Type', and appends it to the 'Result' containment reference list.- Parameters:
name- The 'Name' for the newOutputPin, ornull.type- The 'Type' for the newOutputPin, ornull.- Returns:
- The new
OutputPin. - See Also:
getResults()
-
getResult
OutputPin getResult(String name, Type type)
Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Result' containment reference list.- Parameters:
name- The 'Name' of theOutputPinto retrieve, ornull.type- The 'Type' of theOutputPinto retrieve, ornull.- Returns:
- The first
OutputPinwith the specified 'Name', and 'Type', ornull. - See Also:
getResults()
-
getResult
OutputPin getResult(String name, Type type, boolean ignoreCase, boolean createOnDemand)
Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Result' containment reference list.- Parameters:
name- The 'Name' of theOutputPinto retrieve, ornull.type- The 'Type' of theOutputPinto retrieve, ornull.ignoreCase- Whether to ignore case inStringcomparisons.createOnDemand- Whether to create aOutputPinon demand if not found.- Returns:
- The first
OutputPinwith the specified 'Name', and 'Type', ornull. - See Also:
getResults()
-
getLoopVariables
MDWEList<OutputPin> getLoopVariables()
Returns the value of the 'Loop Variable' reference list. The list contents are of typeOutputPin. A list of output pins that hold the values of the loop variables during an execution of the loop. When the test fails, the values are movied to the result pins of the loop.- Returns:
- the value of the 'Loop Variable' reference list.
- See Also:
UMLPackage.getLoopNode_LoopVariable()
-
getLoopVariable
OutputPin getLoopVariable(String name, Type type)
Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Loop Variable' reference list.- Parameters:
name- The 'Name' of theOutputPinto retrieve, ornull.type- The 'Type' of theOutputPinto retrieve, ornull.- Returns:
- The first
OutputPinwith the specified 'Name', and 'Type', ornull. - See Also:
getLoopVariables()
-
getLoopVariable
OutputPin getLoopVariable(String name, Type type, boolean ignoreCase)
Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Loop Variable' reference list.- Parameters:
name- The 'Name' of theOutputPinto retrieve, ornull.type- The 'Type' of theOutputPinto retrieve, ornull.ignoreCase- Whether to ignore case inStringcomparisons.- Returns:
- The first
OutputPinwith the specified 'Name', and 'Type', ornull. - See Also:
getLoopVariables()
-
getBodyOutputs
MDWEList<OutputPin> getBodyOutputs()
Returns the value of the 'Body Output' reference list. The list contents are of typeOutputPin. A list of output pins within the body fragment the values of which are moved to the loop variable pins after completion of execution of the body, before the next iteration of the loop begins or before the loop exits.- Returns:
- the value of the 'Body Output' reference list.
- See Also:
UMLPackage.getLoopNode_BodyOutput()
-
getBodyOutput
OutputPin getBodyOutput(String name, Type type)
Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Body Output' reference list.- Parameters:
name- The 'Name' of theOutputPinto retrieve, ornull.type- The 'Type' of theOutputPinto retrieve, ornull.- Returns:
- The first
OutputPinwith the specified 'Name', and 'Type', ornull. - See Also:
getBodyOutputs()
-
getBodyOutput
OutputPin getBodyOutput(String name, Type type, boolean ignoreCase)
Retrieves the firstOutputPinwith the specified 'Name', and 'Type' from the 'Body Output' reference list.- Parameters:
name- The 'Name' of theOutputPinto retrieve, ornull.type- The 'Type' of theOutputPinto retrieve, ornull.ignoreCase- Whether to ignore case inStringcomparisons.- Returns:
- The first
OutputPinwith the specified 'Name', and 'Type', ornull. - See Also:
getBodyOutputs()
-
getLoopVariableInputs
MDWEList<InputPin> getLoopVariableInputs()
Returns the value of the 'Loop Variable Input' containment reference list. The list contents are of typeInputPin. A list of values that are moved into the loop variable pins before the first iteration of the loop.- Returns:
- the value of the 'Loop Variable Input' containment reference list.
- See Also:
UMLPackage.getLoopNode_LoopVariableInput()
-
createLoopVariableInput
InputPin createLoopVariableInput(String name, Type type, org.eclipse.emf.ecore.EClass eClass)
Creates a newInputPin, with the specified 'Name', and 'Type', and appends it to the 'Loop Variable Input' containment reference list.- Parameters:
name- The 'Name' for the newInputPin, ornull.type- The 'Type' for the newInputPin, ornull.eClass- The Ecore class of theInputPinto create.- Returns:
- The new
InputPin. - See Also:
getLoopVariableInputs()
-
createLoopVariableInput
InputPin createLoopVariableInput(String name, Type type)
Creates a newInputPin, with the specified 'Name', and 'Type', and appends it to the 'Loop Variable Input' containment reference list.- Parameters:
name- The 'Name' for the newInputPin, ornull.type- The 'Type' for the newInputPin, ornull.- Returns:
- The new
InputPin. - See Also:
getLoopVariableInputs()
-
getLoopVariableInput
InputPin getLoopVariableInput(String name, Type type)
Retrieves the firstInputPinwith the specified 'Name', and 'Type' from the 'Loop Variable Input' containment reference list.- Parameters:
name- The 'Name' of theInputPinto retrieve, ornull.type- The 'Type' of theInputPinto retrieve, ornull.- Returns:
- The first
InputPinwith the specified 'Name', and 'Type', ornull. - See Also:
getLoopVariableInputs()
-
getLoopVariableInput
InputPin getLoopVariableInput(String name, Type type, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass, boolean createOnDemand)
Retrieves the firstInputPinwith the specified 'Name', and 'Type' from the 'Loop Variable Input' containment reference list.- Parameters:
name- The 'Name' of theInputPinto retrieve, ornull.type- The 'Type' of theInputPinto retrieve, ornull.ignoreCase- Whether to ignore case inStringcomparisons.eClass- The Ecore class of theInputPinto retrieve, ornull.createOnDemand- Whether to create aInputPinon demand if not found.- Returns:
- The first
InputPinwith the specified 'Name', and 'Type', ornull. - See Also:
getLoopVariableInputs()
-
validateInputEdges
boolean validateInputEdges(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)Loop variable inputs must not have outgoing edges. true
-
validateBodyOutputPins
boolean validateBodyOutputPins(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)The bodyOutput pins are output pins on actions in the body of the loop node. true
-
validateResultNoIncoming
boolean validateResultNoIncoming(org.eclipse.emf.common.util.DiagnosticChain diagnostics, Map context)The result output pins have no incoming edges. true
-
-