## org.eclipse.uml2.uml
Interface LinkEndCreationData

All Superinterfaces:
  Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject, LinkEndData, org.eclipse.emf.common.notify.Notifier

    public interface LinkEndCreationData

extends LinkEndData

A representation of the model object 'Link End Creation Data'. A link end creation data is not an action. It is an element that identifies links. It identifies one end of a link to be created by a create link action.

The following features are supported:

- `Is Replace All`
- `Insert At`

See Also:
  `UMLPackage.getLinkEndCreationData()`

Method Summary
`InputPin` `getInsertAt()` Returns the value of the 'Insert At' reference
`boolean` `isReplaceAll()` Returns the value of the 'Is Replace All' attribute.
`void` `setInsertAt(InputPin value)` Sets the value of the '`Insert At`' reference
`void` `setIsReplaceAll(boolean value)` Sets the value of the '`Is Replace All`' attribute
`boolean` `validateCreateLinkAction(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` LinkEndCreationData can only be end data for CreateLinkAction or one of its specializations.
`boolean` `validateSingleInputPin(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` Link end creation data for ordered association ends must have a single input pin for the insertion point with type UnlimitedNatural and multiplicity of 1..1, otherwise the action has no input pin for the insertion point.

Methods inherited from interface org.eclipse.uml2.uml.LinkEndData
`createQualifier, getEnd, getQualifiers, getValue, setEnd, setValue, validateEndObjectInputPin, validateMultiplicity, validatePropertyIsAssociationEnd, validateQualifiers, validateSameType`

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, eInvoke, 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 the existing links emanating from the object on this end should be destroyed before creating a new link.

  Returns:
    the value of the 'Is Replace All' attribute.
  See Also:
    `setIsReplaceAll(boolean)`, `UMLPackage.getLinkEndCreationData_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' reference. Specifies where the new link should be inserted for ordered association ends, or where an existing link should be moved to. The type of the input is UnlimitedNatural, but the input cannot be zero. This pin is omitted for association ends that are not ordered.

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

### setInsertAt

    void setInsertAt(InputPin value)

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

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

### validateCreateLinkAction

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

  LinkEndCreationData can only be end data for CreateLinkAction or one of its specializations. self.LinkAction.oclIsKindOf(CreateLinkAction)

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

### validateSingleInputPin

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

  Link end creation data for ordered association ends must have a single input pin for the insertion point with type UnlimitedNatural and multiplicity of 1..1, otherwise the action has no input pin for the insertion point. let insertAtPins : Collection = self.insertAt in if self.end.ordering = #unordered then insertAtPins->size() = 0 else let insertAtPin : InputPin = insertAts->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.