blob: 0e904cb8f057ec161d3bb79a02a40eea28e02ca9 [file] [log] [blame]
/*
* Copyright (c) 2003, 2004 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM - initial API and implementation
*
* $Id: Duration.java,v 1.10 2005/06/15 20:06:01 khussey Exp $
*/
package org.eclipse.uml2;
import org.eclipse.emf.common.util.EList;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Duration</b></em>'.
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
* A duration defines a value specification that specifies the temporal distance between two time expressions that specify time instants.
* <!-- end-model-doc -->
*
* <p>
* The following features are supported:
* <ul>
* <li>{@link org.eclipse.uml2.Duration#isFirstTime <em>First Time</em>}</li>
* <li>{@link org.eclipse.uml2.Duration#getEvents <em>Event</em>}</li>
* </ul>
* </p>
*
* @see org.eclipse.uml2.UML2Package#getDuration()
* @model
* @generated
*/
public interface Duration extends ValueSpecification{
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String copyright = "Copyright (c) IBM Corporation and others."; //$NON-NLS-1$
/**
* Returns the value of the '<em><b>First Time</b></em>' attribute.
* The default value is <code>"True"</code>.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>First Time</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* If the duration is between times of two NamedElements, there are two Boolean attributes, one for the start of the duration and one for the end of the duration. For each of these it holds that firstTime is true if the time information is associated with the first point in time of the NamedElement referenced by event, and false if it represents the last point in time of the NamedElement. If there is only one NamedElement referenced by event, then this attribute is irrelevant. The default value is true.
* <!-- end-model-doc -->
* @return the value of the '<em>First Time</em>' attribute.
* @see #setFirstTime(boolean)
* @see org.eclipse.uml2.UML2Package#getDuration_FirstTime()
* @model default="True" dataType="org.eclipse.uml2.Boolean"
* @generated
*/
boolean isFirstTime();
/**
* Sets the value of the '{@link org.eclipse.uml2.Duration#isFirstTime <em>First Time</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>First Time</em>' attribute.
* @see #isFirstTime()
* @generated
*/
void setFirstTime(boolean value);
/**
* Returns the value of the '<em><b>Event</b></em>' reference list.
* The list contents are of type {@link org.eclipse.uml2.NamedElement}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Event</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Refers to the specification(s) that describes the starting TimeExpression and the ending TimeExpression of the Duration. If only one NamedElement is referenced, the duration is from the first point in time of that NamedElement until the last point in time of that NamedElement.
* <!-- end-model-doc -->
* @return the value of the '<em>Event</em>' reference list.
* @see org.eclipse.uml2.UML2Package#getDuration_Event()
* @model type="org.eclipse.uml2.NamedElement" upper="2" ordered="false"
* @generated
*/
EList getEvents();
/**
* Retrieves the {@link org.eclipse.uml2.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Event</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.NamedElement} to retrieve.
* @return The {@link org.eclipse.uml2.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
* @see #getEvents()
* @generated
*/
NamedElement getEvent(String name);
} // Duration