## org.eclipse.uml2.uml
Interface ExpansionRegion

All Superinterfaces:
  Action, ActivityGroup, ActivityNode, Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject, ExecutableNode, NamedElement, Namespace, org.eclipse.emf.common.notify.Notifier, RedefinableElement, StructuredActivityNode

    public interface ExpansionRegion

extends StructuredActivityNode

A representation of the model object 'Expansion Region'. An expansion region is a structured activity region that executes multiple times corresponding to elements of an input collection.

The following features are supported:

- `Mode`
- `Input Element`
- `Output Element`

See Also:
  `UMLPackage.getExpansionRegion()`

Field Summary

Fields inherited from interface org.eclipse.uml2.uml.NamedElement
`SEPARATOR`

Method Summary
`ExpansionNode` `getInputElement(java.lang.String name, Type type)` Retrieves the first `ExpansionNode` with the specified 'Name', and 'Type' from the 'Input Element' reference list
`ExpansionNode` `getInputElement(java.lang.String name, Type type, boolean ignoreCase)` Retrieves the first `ExpansionNode` with the specified 'Name', and 'Type' from the 'Input Element' reference list
`org.eclipse.emf.common.util.EList<ExpansionNode>` `getInputElements()` Returns the value of the 'Input Element' reference list.
`ExpansionKind` `getMode()` Returns the value of the 'Mode' attribute.
`ExpansionNode` `getOutputElement(java.lang.String name, Type type)` Retrieves the first `ExpansionNode` with the specified 'Name', and 'Type' from the 'Output Element' reference list
`ExpansionNode` `getOutputElement(java.lang.String name, Type type, boolean ignoreCase)` Retrieves the first `ExpansionNode` with the specified 'Name', and 'Type' from the 'Output Element' reference list
`org.eclipse.emf.common.util.EList<ExpansionNode>` `getOutputElements()` Returns the value of the 'Output Element' reference list.
`void` `setMode(ExpansionKind value)` Sets the value of the '`Mode`' attribute
`boolean` `validateExpansionNodes(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` An ExpansionRegion must have one or more argument ExpansionNodes and zero or more result ExpansionNodes.

Methods inherited from interface org.eclipse.uml2.uml.StructuredActivityNode
`createEdge, createNode, createVariable, getEdge, getEdge, getEdges, getNode, getNode, getNodes, getVariable, getVariable, getVariables, isMustIsolate, setMustIsolate, validateEdges`

Methods inherited from interface org.eclipse.uml2.uml.Action
`createLocalPostcondition, createLocalPostcondition, createLocalPrecondition, createLocalPrecondition, getContext, getInput, getInput, getInputs, getLocalPostcondition, getLocalPostcondition, getLocalPostconditions, getLocalPrecondition, getLocalPrecondition, getLocalPreconditions, getOutput, getOutput, getOutputs`

Methods inherited from interface org.eclipse.uml2.uml.ExecutableNode
`createHandler, getHandlers`

Methods inherited from interface org.eclipse.uml2.uml.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 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`

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.ActivityGroup
`getContainedEdge, getContainedEdge, getContainedEdges, getContainedNode, getContainedNode, getContainedNodes, getInActivity, getSubgroups, getSuperGroup, setInActivity, validateGroupOwned, validateNodesAndEdges, validateNotContained`

Method Detail

### getMode

    ExpansionKind getMode()

  Returns the value of the 'Mode' attribute. The default value is `"iterative"`. The literals are from the enumeration `ExpansionKind`. The way in which the executions interact: parallel: all interactions are independent iterative: the interactions occur in order of the elements stream: a stream of values flows into a single execution

  Returns:
    the value of the 'Mode' attribute.
  See Also:
    `ExpansionKind`, `setMode(ExpansionKind)`, `UMLPackage.getExpansionRegion_Mode()`

### setMode

    void setMode(ExpansionKind value)

  Sets the value of the '`Mode`' attribute.

  Parameters:
    `value` - the new value of the 'Mode' attribute.
  See Also:
    `ExpansionKind`, `getMode()`

### getInputElements

    org.eclipse.emf.common.util.EList<ExpansionNode> getInputElements()

  Returns the value of the 'Input Element' reference list. The list contents are of type `ExpansionNode`. It is bidirectional and its opposite is '`Region As Input`'. An object node that holds a separate element of the input collection during each of the multiple executions of the region.

  Returns:
    the value of the 'Input Element' reference list.
  See Also:
    `UMLPackage.getExpansionRegion_InputElement()`, `ExpansionNode.getRegionAsInput()`

### getInputElement

    ExpansionNode getInputElement(java.lang.String name,
                                  Type type)

  Retrieves the first `ExpansionNode` with the specified 'Name', and 'Type' from the 'Input Element' reference list.

  Parameters:
    `name` - The 'Name' of the `ExpansionNode` to retrieve, or `null`.
    `type` - The 'Type' of the `ExpansionNode` to retrieve, or `null`.
  Returns:
    The first `ExpansionNode` with the specified 'Name', and 'Type', or `null`.
  See Also:
    `getInputElements()`

### getInputElement

    ExpansionNode getInputElement(java.lang.String name,
                                  Type type,
                                  boolean ignoreCase)

  Retrieves the first `ExpansionNode` with the specified 'Name', and 'Type' from the 'Input Element' reference list.

  Parameters:
    `name` - The 'Name' of the `ExpansionNode` to retrieve, or `null`.
    `type` - The 'Type' of the `ExpansionNode` to retrieve, or `null`.
    `ignoreCase` - Whether to ignore case in `String` comparisons.
  Returns:
    The first `ExpansionNode` with the specified 'Name', and 'Type', or `null`.
  See Also:
    `getInputElements()`

### getOutputElements

    org.eclipse.emf.common.util.EList<ExpansionNode> getOutputElements()

  Returns the value of the 'Output Element' reference list. The list contents are of type `ExpansionNode`. It is bidirectional and its opposite is '`Region As Output`'. An object node that accepts a separate element of the output collection during each of the multiple executions of the region. The values are formed into a collection that is available when the execution of the region is complete.

  Returns:
    the value of the 'Output Element' reference list.
  See Also:
    `UMLPackage.getExpansionRegion_OutputElement()`, `ExpansionNode.getRegionAsOutput()`

### getOutputElement

    ExpansionNode getOutputElement(java.lang.String name,
                                   Type type)

  Retrieves the first `ExpansionNode` with the specified 'Name', and 'Type' from the 'Output Element' reference list.

  Parameters:
    `name` - The 'Name' of the `ExpansionNode` to retrieve, or `null`.
    `type` - The 'Type' of the `ExpansionNode` to retrieve, or `null`.
  Returns:
    The first `ExpansionNode` with the specified 'Name', and 'Type', or `null`.
  See Also:
    `getOutputElements()`

### getOutputElement

    ExpansionNode getOutputElement(java.lang.String name,
                                   Type type,
                                   boolean ignoreCase)

  Retrieves the first `ExpansionNode` with the specified 'Name', and 'Type' from the 'Output Element' reference list.

  Parameters:
    `name` - The 'Name' of the `ExpansionNode` to retrieve, or `null`.
    `type` - The 'Type' of the `ExpansionNode` to retrieve, or `null`.
    `ignoreCase` - Whether to ignore case in `String` comparisons.
  Returns:
    The first `ExpansionNode` with the specified 'Name', and 'Type', or `null`.
  See Also:
    `getOutputElements()`

### validateExpansionNodes

    boolean validateExpansionNodes(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                   java.util.Map<java.lang.Object,java.lang.Object> context)

  An ExpansionRegion must have one or more argument ExpansionNodes and zero or more result ExpansionNodes. true

  Parameters:
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.

Copyright 2003, 2007 IBM Corporation and others. All Rights Reserved.