## org.eclipse.uml2.uml
Interface InteractionConstraint

All Superinterfaces:
  Constraint, Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject, NamedElement, org.eclipse.emf.common.notify.Notifier, PackageableElement, ParameterableElement

    public interface InteractionConstraint

extends Constraint

A representation of the model object 'Interaction Constraint'. An interaction constraint is a Boolean expression that guards an operand in a combined fragment.

The following features are supported:

- `Minint`
- `Maxint`

See Also:
  `UMLPackage.getInteractionConstraint()`

Field Summary

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

Method Summary
`ValueSpecification` `createMaxint(java.lang.String name, Type type, org.eclipse.emf.ecore.EClass eClass)` Creates a new `ValueSpecification`, with the specified 'Name', and 'Type', and sets the 'Maxint' containment reference
`ValueSpecification` `createMinint(java.lang.String name, Type type, org.eclipse.emf.ecore.EClass eClass)` Creates a new `ValueSpecification`, with the specified 'Name', and 'Type', and sets the 'Minint' containment reference
`ValueSpecification` `getMaxint()` Returns the value of the 'Maxint' containment reference.
`ValueSpecification` `getMinint()` Returns the value of the 'Minint' containment reference.
`void` `setMaxint(ValueSpecification value)` Sets the value of the '`Maxint`' containment reference
`void` `setMinint(ValueSpecification value)` Sets the value of the '`Minint`' containment reference
`boolean` `validateDynamicVariables(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` The dynamic variables that take part in the constraint must be owned by the ConnectableElement corresponding to the covered Lifeline.
`boolean` `validateGlobalData(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` The constraint may contain references to global data or write-once data.
`boolean` `validateMaxintGreaterEqualMinint(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` If maxint is specified, then minint must be specified and the evaluation of maxint must be >= the evaluation of minint true
`boolean` `validateMaxintPositive(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` If maxint is specified, then the expression must evaluate to a positive integer.
`boolean` `validateMinintMaxint(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` Minint/maxint can only be present if the InteractionConstraint is associated with the operand of a loop CombinedFragment.
`boolean` `validateMinintNonNegative(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` If minint is specified, then the expression must evaluate to a non-negative integer.

Methods inherited from interface org.eclipse.uml2.uml.Constraint
`createSpecification, getConstrainedElements, getContext, getSpecification, setContext, setSpecification, validateBooleanValue, validateNoSideEffects, validateNotAppliedToSelf, validateNotApplyToSelf, validateValueSpecificationBoolean`

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.ParameterableElement
`getOwningTemplateParameter, getTemplateParameter, isCompatibleWith, isTemplateParameter, setOwningTemplateParameter, setTemplateParameter`

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

### getMinint

    ValueSpecification getMinint()

  Returns the value of the 'Minint' containment reference.

  This feature subsets the following features:

  - '`Owned Element`'
  The minimum number of iterations of a loop

  Returns:
    the value of the 'Minint' containment reference.
  See Also:
    `setMinint(ValueSpecification)`, `UMLPackage.getInteractionConstraint_Minint()`

### setMinint

    void setMinint(ValueSpecification value)

  Sets the value of the '`Minint`' containment reference.

  Parameters:
    `value` - the new value of the 'Minint' containment reference.
  See Also:
    `getMinint()`

### createMinint

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

  Creates a new `ValueSpecification`, with the specified 'Name', and 'Type', and sets the 'Minint' containment reference.

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

### getMaxint

    ValueSpecification getMaxint()

  Returns the value of the 'Maxint' containment reference.

  This feature subsets the following features:

  - '`Owned Element`'
  The maximum number of iterations of a loop

  Returns:
    the value of the 'Maxint' containment reference.
  See Also:
    `setMaxint(ValueSpecification)`, `UMLPackage.getInteractionConstraint_Maxint()`

### setMaxint

    void setMaxint(ValueSpecification value)

  Sets the value of the '`Maxint`' containment reference.

  Parameters:
    `value` - the new value of the 'Maxint' containment reference.
  See Also:
    `getMaxint()`

### createMaxint

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

  Creates a new `ValueSpecification`, with the specified 'Name', and 'Type', and sets the 'Maxint' containment reference.

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

### validateDynamicVariables

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

  The dynamic variables that take part in the constraint must be owned by the ConnectableElement corresponding to the covered Lifeline. true

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

### validateGlobalData

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

  The constraint may contain references to global data or write-once data. true

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

### validateMinintMaxint

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

  Minint/maxint can only be present if the InteractionConstraint is associated with the operand of a loop CombinedFragment. true

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

### validateMinintNonNegative

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

  If minint is specified, then the expression must evaluate to a non-negative integer. true

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

### validateMaxintPositive

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

  If maxint is specified, then the expression must evaluate to a positive integer. true

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

### validateMaxintGreaterEqualMinint

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

  If maxint is specified, then minint must be specified and the evaluation of maxint must be >= the evaluation of minint 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.