## org.eclipse.uml2.uml
Interface AddVariableValueAction

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

    public interface AddVariableValueAction

extends WriteVariableAction

A representation of the model object 'Add Variable Value Action'. An add variable value action is a write variable action for adding values to a variable.

The following features are supported:

- `Is Replace All`
- `Insert At`

See Also:
  `UMLPackage.getAddVariableValueAction()`

Field Summary

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

Method Summary
`InputPin` `createInsertAt(java.lang.String name, Type type)` Creates a new `InputPin`,with the specified 'Name', and 'Type', and sets the 'Insert At' containment reference
`InputPin` `createInsertAt(java.lang.String name, Type type, org.eclipse.emf.ecore.EClass eClass)` Creates a new `InputPin`, with the specified 'Name', and 'Type', and sets the 'Insert At' containment reference
`InputPin` `getInsertAt()` Returns the value of the 'Insert At' containment reference.
`boolean` `isReplaceAll()` Returns the value of the 'Is Replace All' attribute.
`void` `setInsertAt(InputPin value)` Sets the value of the '`Insert At`' containment reference
`void` `setIsReplaceAll(boolean value)` Sets the value of the '`Is Replace All`' attribute
`boolean` `validateSingleInputPin(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` Actions adding values to ordered variables must have a single input pin for the insertion point with type UnlimtedNatural and multiplicity of 1..1, otherwise the action has no input pin for the insertion point.

Methods inherited from interface org.eclipse.uml2.uml.WriteVariableAction
`createValue, createValue, getValue, setValue, validateMultiplicity, validateSameType`

Methods inherited from interface org.eclipse.uml2.uml.VariableAction
`getVariable, setVariable, validateScopeOfVariable`

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`

Method Detail

### isReplaceAll

    boolean isReplaceAll()

  Returns the value of the 'Is Replace All' attribute. The default value is `"false"`. Specifies whether existing values of the variable should be removed before adding the new value.

  Returns:
    the value of the 'Is Replace All' attribute.
  See Also:
    `setIsReplaceAll(boolean)`, `UMLPackage.getAddVariableValueAction_IsReplaceAll()`

### setIsReplaceAll

    void setIsReplaceAll(boolean value)

  Sets the value of the '`Is Replace All`' attribute.

  Parameters:
    `value` - the new value of the 'Is Replace All' attribute.
  See Also:
    `isReplaceAll()`

### getInsertAt

    InputPin getInsertAt()

  Returns the value of the 'Insert At' containment reference.

  This feature subsets the following features:

  - '`Input`'
  Gives the position at which to insert a new value or move an existing value in ordered variables. The types is UnlimitedINatural, but the value cannot be zero. This pin is omitted for unordered variables.

  Returns:
    the value of the 'Insert At' containment reference.
  See Also:
    `setInsertAt(InputPin)`, `UMLPackage.getAddVariableValueAction_InsertAt()`

### setInsertAt

    void setInsertAt(InputPin value)

  Sets the value of the '`Insert At`' containment reference.

  Parameters:
    `value` - the new value of the 'Insert At' containment reference.
  See Also:
    `getInsertAt()`

### createInsertAt

    InputPin createInsertAt(java.lang.String name,
                            Type type,
                            org.eclipse.emf.ecore.EClass eClass)

  Creates a new `InputPin`, with the specified 'Name', and 'Type', and sets the 'Insert At' containment reference.

  Parameters:
    `name` - The 'Name' for the new `InputPin`, or `null`.
    `type` - The 'Type' for the new `InputPin`, or `null`.
    `eClass` - The Ecore class of the `InputPin` to create.
  Returns:
    The new `InputPin`.
  See Also:
    `getInsertAt()`

### createInsertAt

    InputPin createInsertAt(java.lang.String name,
                            Type type)

  Creates a new `InputPin`,with the specified 'Name', and 'Type', and sets the 'Insert At' containment reference.

  Parameters:
    `name` - The 'Name' for the new `InputPin`, or `null`.
    `type` - The 'Type' for the new `InputPin`, or `null`.
  Returns:
    The new `InputPin`.
  See Also:
    `getInsertAt()`

### validateSingleInputPin

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

  Actions adding values to ordered variables must have a single input pin for the insertion point with type UnlimtedNatural and multiplicity of 1..1, otherwise the action has no input pin for the insertion point. let insertAtPins : Collection = self.insertAt in if self.variable.ordering = #unordered then insertAtPins->size() = 0 else let insertAtPin : InputPin = insertAt->asSequence()->first() in insertAtPins->size() = 1 and insertAtPin.type = UnlimitedNatural and insertAtPin.multiplicity.is(1,1)) endif

  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.