## org.eclipse.uml2.uml
Interface TemplateParameter

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

All Known Subinterfaces:
  ClassifierTemplateParameter, ConnectableElementTemplateParameter, OperationTemplateParameter

    public interface TemplateParameter

extends Element

A representation of the model object 'Template Parameter'. A template parameter exposes a parameterable element as a formal template parameter of a template.

The following features are supported:

- `Signature`
- `Parametered Element`
- `Owned Parametered Element`
- `Default`
- `Owned Default`

See Also:
  `UMLPackage.getTemplateParameter()`

Method Summary
`ParameterableElement` `createOwnedDefault(org.eclipse.emf.ecore.EClass eClass)` Creates a new `ParameterableElement` and sets the 'Owned Default' containment reference
`ParameterableElement` `createOwnedParameteredElement(org.eclipse.emf.ecore.EClass eClass)` Creates a new `ParameterableElement` and sets the 'Owned Parametered Element' containment reference
`ParameterableElement` `getDefault()` Returns the value of the 'Default' reference
`ParameterableElement` `getOwnedDefault()` Returns the value of the 'Owned Default' containment reference
`ParameterableElement` `getOwnedParameteredElement()` Returns the value of the 'Owned Parametered Element' containment reference.
`ParameterableElement` `getParameteredElement()` Returns the value of the 'Parametered Element' reference.
`TemplateSignature` `getSignature()` Returns the value of the 'Signature' container reference.
`void` `setDefault(ParameterableElement value)` Sets the value of the '`Default`' reference
`void` `setOwnedDefault(ParameterableElement value)` Sets the value of the '`Owned Default`' containment reference
`void` `setOwnedParameteredElement(ParameterableElement value)` Sets the value of the '`Owned Parametered Element`' containment reference
`void` `setParameteredElement(ParameterableElement value)` Sets the value of the '`Parametered Element`' reference
`void` `setSignature(TemplateSignature value)` Sets the value of the '`Signature`' container reference
`boolean` `validateMustBeCompatible(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` The default must be compatible with the formal template parameter.

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

### getSignature

    TemplateSignature getSignature()

  Returns the value of the 'Signature' container reference. It is bidirectional and its opposite is '`Owned Parameter`'. The template signature that owns this template parameter.

  Returns:
    the value of the 'Signature' container reference.
  See Also:
    `setSignature(TemplateSignature)`, `UMLPackage.getTemplateParameter_Signature()`, `TemplateSignature.getOwnedParameters()`

### setSignature

    void setSignature(TemplateSignature value)

  Sets the value of the '`Signature`' container reference.

  Parameters:
    `value` - the new value of the 'Signature' container reference.
  See Also:
    `getSignature()`

### getOwnedParameteredElement

    ParameterableElement getOwnedParameteredElement()

  Returns the value of the 'Owned Parametered Element' containment reference. It is bidirectional and its opposite is '`Owning Template Parameter`'. The element that is owned by this template parameter.

  Returns:
    the value of the 'Owned Parametered Element' containment reference.
  See Also:
    `setOwnedParameteredElement(ParameterableElement)`, `UMLPackage.getTemplateParameter_OwnedParameteredElement()`, `ParameterableElement.getOwningTemplateParameter()`

### setOwnedParameteredElement

    void setOwnedParameteredElement(ParameterableElement value)

  Sets the value of the '`Owned Parametered Element`' containment reference.

  Parameters:
    `value` - the new value of the 'Owned Parametered Element' containment reference.
  See Also:
    `getOwnedParameteredElement()`

### createOwnedParameteredElement

    ParameterableElement createOwnedParameteredElement(org.eclipse.emf.ecore.EClass eClass)

  Creates a new `ParameterableElement` and sets the 'Owned Parametered Element' containment reference.

  Parameters:
    `eClass` - The Ecore class of the `ParameterableElement` to create.
  Returns:
    The new `ParameterableElement`.
  See Also:
    `getOwnedParameteredElement()`

### getDefault

    ParameterableElement getDefault()

  Returns the value of the 'Default' reference. The element that is the default for this formal template parameter.

  Returns:
    the value of the 'Default' reference.
  See Also:
    `setDefault(ParameterableElement)`, `UMLPackage.getTemplateParameter_Default()`

### setDefault

    void setDefault(ParameterableElement value)

  Sets the value of the '`Default`' reference.

  Parameters:
    `value` - the new value of the 'Default' reference.
  See Also:
    `getDefault()`

### getOwnedDefault

    ParameterableElement getOwnedDefault()

  Returns the value of the 'Owned Default' containment reference. The element that is owned by this template parameter for the purpose of providing a default.

  Returns:
    the value of the 'Owned Default' containment reference.
  See Also:
    `setOwnedDefault(ParameterableElement)`, `UMLPackage.getTemplateParameter_OwnedDefault()`

### setOwnedDefault

    void setOwnedDefault(ParameterableElement value)

  Sets the value of the '`Owned Default`' containment reference.

  Parameters:
    `value` - the new value of the 'Owned Default' containment reference.
  See Also:
    `getOwnedDefault()`

### createOwnedDefault

    ParameterableElement createOwnedDefault(org.eclipse.emf.ecore.EClass eClass)

  Creates a new `ParameterableElement` and sets the 'Owned Default' containment reference.

  Parameters:
    `eClass` - The Ecore class of the `ParameterableElement` to create.
  Returns:
    The new `ParameterableElement`.
  See Also:
    `getOwnedDefault()`

### getParameteredElement

    ParameterableElement getParameteredElement()

  Returns the value of the 'Parametered Element' reference. It is bidirectional and its opposite is '`Template Parameter`'. The element exposed by this template parameter.

  Returns:
    the value of the 'Parametered Element' reference.
  See Also:
    `setParameteredElement(ParameterableElement)`, `UMLPackage.getTemplateParameter_ParameteredElement()`, `ParameterableElement.getTemplateParameter()`

### setParameteredElement

    void setParameteredElement(ParameterableElement value)

  Sets the value of the '`Parametered Element`' reference.

  Parameters:
    `value` - the new value of the 'Parametered Element' reference.
  See Also:
    `getParameteredElement()`

### validateMustBeCompatible

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

  The default must be compatible with the formal template parameter. default->notEmpty() implies default->isCompatibleWith(parameteredElement)

  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.