## org.eclipse.uml2.uml
Interface DurationObservation

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

    public interface DurationObservation

extends Observation

A representation of the model object 'Duration Observation'. A duration observation is a reference to a duration during an execution. It points out the element(s) in the model to observe and whether the observations are when this model element is entered or when it is exited.

The following features are supported:

- `Event`
- `First Event`

See Also:
  `UMLPackage.getDurationObservation()`

Field Summary

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

Method Summary
`NamedElement` `getEvent(java.lang.String name)` Retrieves the first `NamedElement` with the specified 'Name' from the 'Event' reference list
`NamedElement` `getEvent(java.lang.String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)` Retrieves the first `NamedElement` with the specified 'Name' from the 'Event' reference list
`org.eclipse.emf.common.util.EList<NamedElement>` `getEvents()` Returns the value of the 'Event' reference list.
`org.eclipse.emf.common.util.EList<java.lang.Boolean>` `getFirstEvents()` Returns the value of the 'First Event' attribute list.
`boolean` `validateFirstEventMultiplicity(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` The multiplicity of firstEvent must be 2 if the multiplicity of event is 2.

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, eInvoke, 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, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset`

Methods inherited from interface org.eclipse.emf.common.notify.Notifier
`eAdapters, eDeliver, eNotify, eSetDeliver`

Method Detail

### getEvents

    org.eclipse.emf.common.util.EList<NamedElement> getEvents()

  Returns the value of the 'Event' reference list. The list contents are of type `NamedElement`. The observation is determined by the entering or exiting of the event element during execution.

  Returns:
    the value of the 'Event' reference list.
  See Also:
    `UMLPackage.getDurationObservation_Event()`

### getEvent

    NamedElement getEvent(java.lang.String name)

  Retrieves the first `NamedElement` with the specified 'Name' from the 'Event' reference list.

  Parameters:
    `name` - The 'Name' of the `NamedElement` to retrieve, or `null`.
  Returns:
    The first `NamedElement` with the specified 'Name', or `null`.
  See Also:
    `getEvents()`

### getEvent

    NamedElement getEvent(java.lang.String name,
                          boolean ignoreCase,
                          org.eclipse.emf.ecore.EClass eClass)

  Retrieves the first `NamedElement` with the specified 'Name' from the 'Event' reference list.

  Parameters:
    `name` - The 'Name' of the `NamedElement` to retrieve, or `null`.
    `ignoreCase` - Whether to ignore case in `String` comparisons.
    `eClass` - The Ecore class of the `NamedElement` to retrieve, or `null`.
  Returns:
    The first `NamedElement` with the specified 'Name', or `null`.
  See Also:
    `getEvents()`

### getFirstEvents

    org.eclipse.emf.common.util.EList<java.lang.Boolean> getFirstEvents()

  Returns the value of the 'First Event' attribute list. The list contents are of type `Boolean`. The value of firstEvent[i] is related to event[i] (where i is 1 or 2). If firstEvent[i] is true, then the corresponding observation event is the first time instant the execution enters event[i]. If firstEvent[i] is false, then the corresponding observation event is the time instant the execution exits event[i]. Default value is true applied when event[i] refers an element that represents only one time instant.

  Returns:
    the value of the 'First Event' attribute list.
  See Also:
    `UMLPackage.getDurationObservation_FirstEvent()`

### validateFirstEventMultiplicity

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

  The multiplicity of firstEvent must be 2 if the multiplicity of event is 2. Otherwise the multiplicity of firstEvent is 0. if (event->size() = 2) then (firstEvent->size() = 2) else (firstEvent->size() = 0)

  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.