| /******************************************************************************* |
| * Copyright (c) 2009 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 Corporation - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.jst.javaee.ejb; |
| |
| import java.util.List; |
| |
| import javax.xml.datatype.XMLGregorianCalendar; |
| |
| import org.eclipse.jst.javaee.core.Description; |
| import org.eclipse.jst.javaee.core.JavaEEObject; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * A representation of the model object '<em><b>Timer Type</b></em>'. |
| * <!-- end-user-doc --> |
| * |
| * <!-- begin-model-doc --> |
| * |
| * |
| * The timerType specifies an enterprise bean timer. Each |
| * timer is automatically created by the container upon |
| * deployment. Timer callbacks occur based on the |
| * schedule attributes. All callbacks are made to the |
| * timeout-method associated with the timer. |
| * |
| * A timer can have an optional start and/or end date. If |
| * a start date is specified, it takes precedence over the |
| * associated timer schedule such that any matching |
| * expirations prior to the start time will not occur. |
| * Likewise, no matching expirations will occur after any |
| * end date. Start/End dates are specified using the |
| * XML Schema dateTime type, which follows the ISO-8601 |
| * standard for date(and optional time-within-the-day) |
| * representation. |
| * |
| * An optional flag can be used to control whether |
| * this timer has persistent(true) delivery semantics or |
| * non-persistent(false) delivery semantics. If not specified, |
| * the value defaults to persistent(true). |
| * |
| * A time zone can optionally be associated with a timer. |
| * If specified, the timer's schedule is evaluated in the context |
| * of that time zone, regardless of the default time zone in which |
| * the container is executing. Time zones are specified as an |
| * ID string. The set of required time zone IDs is defined by |
| * the Zone Name(TZ) column of the public domain zoneinfo database. |
| * |
| * An optional info string can be assigned to the timer and |
| * retrieved at runtime through the Timer.getInfo() method. |
| * |
| * The timerType can only be specified on stateless session |
| * beans, singleton session beans, and message-driven beans. |
| * |
| * @since Java EE 6, EJB 3.1 |
| * |
| * <!-- end-model-doc --> |
| * |
| * <p> |
| * The following features are supported: |
| * <ul> |
| * <li>{@link org.eclipse.jst.javaee.ejb.TimerType#getDescription <em>Description</em>}</li> |
| * <li>{@link org.eclipse.jst.javaee.ejb.TimerType#getSchedule <em>Schedule</em>}</li> |
| * <li>{@link org.eclipse.jst.javaee.ejb.TimerType#getStart <em>Start</em>}</li> |
| * <li>{@link org.eclipse.jst.javaee.ejb.TimerType#getEnd <em>End</em>}</li> |
| * <li>{@link org.eclipse.jst.javaee.ejb.TimerType#getTimeoutMethod <em>Timeout Method</em>}</li> |
| * <li>{@link org.eclipse.jst.javaee.ejb.TimerType#isPersistent <em>Persistent</em>}</li> |
| * <li>{@link org.eclipse.jst.javaee.ejb.TimerType#getTimezone <em>Timezone</em>}</li> |
| * <li>{@link org.eclipse.jst.javaee.ejb.TimerType#getInfo <em>Info</em>}</li> |
| * <li>{@link org.eclipse.jst.javaee.ejb.TimerType#getId <em>Id</em>}</li> |
| * </ul> |
| * </p> |
| * |
| * @see org.eclipse.jst.javaee.ejb.internal.metadata.EjbPackage#getTimerType() |
| * @extends JavaEEObject |
| * @generated |
| */ |
| public interface TimerType extends JavaEEObject { |
| /** |
| * Returns the value of the '<em><b>Description</b></em>' containment reference list. |
| * The list contents are of type {@link org.eclipse.jst.javaee.core.Description}. |
| * <!-- begin-user-doc --> |
| * <p> |
| * If the meaning of the '<em>Description</em>' containment reference list isn't clear, |
| * there really should be more of a description here... |
| * </p> |
| * <!-- end-user-doc --> |
| * @return the value of the '<em>Description</em>' containment reference list. |
| * @see org.eclipse.jst.javaee.ejb.internal.metadata.EjbPackage#getTimerType_Description() |
| * @generated |
| */ |
| List<Description> getDescription(); |
| |
| /** |
| * Returns the value of the '<em><b>Schedule</b></em>' containment reference. |
| * <!-- begin-user-doc --> |
| * <p> |
| * If the meaning of the '<em>Schedule</em>' containment reference isn't clear, |
| * there really should be more of a description here... |
| * </p> |
| * <!-- end-user-doc --> |
| * @return the value of the '<em>Schedule</em>' containment reference. |
| * @see #setSchedule(TimerScheduleType) |
| * @see org.eclipse.jst.javaee.ejb.internal.metadata.EjbPackage#getTimerType_Schedule() |
| * @generated |
| */ |
| TimerScheduleType getSchedule(); |
| |
| /** |
| * Sets the value of the '{@link org.eclipse.jst.javaee.ejb.TimerType#getSchedule <em>Schedule</em>}' containment reference. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @param value the new value of the '<em>Schedule</em>' containment reference. |
| * @see #getSchedule() |
| * @generated |
| */ |
| void setSchedule(TimerScheduleType value); |
| |
| /** |
| * Returns the value of the '<em><b>Start</b></em>' attribute. |
| * <!-- begin-user-doc --> |
| * <p> |
| * If the meaning of the '<em>Start</em>' attribute isn't clear, |
| * there really should be more of a description here... |
| * </p> |
| * <!-- end-user-doc --> |
| * @return the value of the '<em>Start</em>' attribute. |
| * @see #setStart(XMLGregorianCalendar) |
| * @see org.eclipse.jst.javaee.ejb.internal.metadata.EjbPackage#getTimerType_Start() |
| * @generated |
| */ |
| XMLGregorianCalendar getStart(); |
| |
| /** |
| * Sets the value of the '{@link org.eclipse.jst.javaee.ejb.TimerType#getStart <em>Start</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @param value the new value of the '<em>Start</em>' attribute. |
| * @see #getStart() |
| * @generated |
| */ |
| void setStart(XMLGregorianCalendar value); |
| |
| /** |
| * Returns the value of the '<em><b>End</b></em>' attribute. |
| * <!-- begin-user-doc --> |
| * <p> |
| * If the meaning of the '<em>End</em>' attribute isn't clear, |
| * there really should be more of a description here... |
| * </p> |
| * <!-- end-user-doc --> |
| * @return the value of the '<em>End</em>' attribute. |
| * @see #setEnd(XMLGregorianCalendar) |
| * @see org.eclipse.jst.javaee.ejb.internal.metadata.EjbPackage#getTimerType_End() |
| * @generated |
| */ |
| XMLGregorianCalendar getEnd(); |
| |
| /** |
| * Sets the value of the '{@link org.eclipse.jst.javaee.ejb.TimerType#getEnd <em>End</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @param value the new value of the '<em>End</em>' attribute. |
| * @see #getEnd() |
| * @generated |
| */ |
| void setEnd(XMLGregorianCalendar value); |
| |
| /** |
| * Returns the value of the '<em><b>Timeout Method</b></em>' containment reference. |
| * <!-- begin-user-doc --> |
| * <p> |
| * If the meaning of the '<em>Timeout Method</em>' containment reference isn't clear, |
| * there really should be more of a description here... |
| * </p> |
| * <!-- end-user-doc --> |
| * @return the value of the '<em>Timeout Method</em>' containment reference. |
| * @see #setTimeoutMethod(NamedMethodType) |
| * @see org.eclipse.jst.javaee.ejb.internal.metadata.EjbPackage#getTimerType_TimeoutMethod() |
| * @generated |
| */ |
| NamedMethodType getTimeoutMethod(); |
| |
| /** |
| * Sets the value of the '{@link org.eclipse.jst.javaee.ejb.TimerType#getTimeoutMethod <em>Timeout Method</em>}' containment reference. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @param value the new value of the '<em>Timeout Method</em>' containment reference. |
| * @see #getTimeoutMethod() |
| * @generated |
| */ |
| void setTimeoutMethod(NamedMethodType value); |
| |
| /** |
| * Returns the value of the '<em><b>Persistent</b></em>' attribute. |
| * <!-- begin-user-doc --> |
| * <p> |
| * If the meaning of the '<em>Persistent</em>' attribute isn't clear, |
| * there really should be more of a description here... |
| * </p> |
| * <!-- end-user-doc --> |
| * @return the value of the '<em>Persistent</em>' attribute. |
| * @see #isSetPersistent() |
| * @see #unsetPersistent() |
| * @see #setPersistent(boolean) |
| * @see org.eclipse.jst.javaee.ejb.internal.metadata.EjbPackage#getTimerType_Persistent() |
| * @generated |
| */ |
| boolean isPersistent(); |
| |
| /** |
| * Sets the value of the '{@link org.eclipse.jst.javaee.ejb.TimerType#isPersistent <em>Persistent</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @param value the new value of the '<em>Persistent</em>' attribute. |
| * @see #isSetPersistent() |
| * @see #unsetPersistent() |
| * @see #isPersistent() |
| * @generated |
| */ |
| void setPersistent(boolean value); |
| |
| /** |
| * Unsets the value of the '{@link org.eclipse.jst.javaee.ejb.TimerType#isPersistent <em>Persistent</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #isSetPersistent() |
| * @see #isPersistent() |
| * @see #setPersistent(boolean) |
| * @generated |
| */ |
| void unsetPersistent(); |
| |
| /** |
| * Returns whether the value of the '{@link org.eclipse.jst.javaee.ejb.TimerType#isPersistent <em>Persistent</em>}' attribute is set. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @return whether the value of the '<em>Persistent</em>' attribute is set. |
| * @see #unsetPersistent() |
| * @see #isPersistent() |
| * @see #setPersistent(boolean) |
| * @generated |
| */ |
| boolean isSetPersistent(); |
| |
| /** |
| * Returns the value of the '<em><b>Timezone</b></em>' attribute. |
| * <!-- begin-user-doc --> |
| * <p> |
| * If the meaning of the '<em>Timezone</em>' attribute isn't clear, |
| * there really should be more of a description here... |
| * </p> |
| * <!-- end-user-doc --> |
| * @return the value of the '<em>Timezone</em>' attribute. |
| * @see #setTimezone(String) |
| * @see org.eclipse.jst.javaee.ejb.internal.metadata.EjbPackage#getTimerType_Timezone() |
| * @generated |
| */ |
| String getTimezone(); |
| |
| /** |
| * Sets the value of the '{@link org.eclipse.jst.javaee.ejb.TimerType#getTimezone <em>Timezone</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @param value the new value of the '<em>Timezone</em>' attribute. |
| * @see #getTimezone() |
| * @generated |
| */ |
| void setTimezone(String value); |
| |
| /** |
| * Returns the value of the '<em><b>Info</b></em>' attribute. |
| * <!-- begin-user-doc --> |
| * <p> |
| * If the meaning of the '<em>Info</em>' attribute isn't clear, |
| * there really should be more of a description here... |
| * </p> |
| * <!-- end-user-doc --> |
| * @return the value of the '<em>Info</em>' attribute. |
| * @see #setInfo(String) |
| * @see org.eclipse.jst.javaee.ejb.internal.metadata.EjbPackage#getTimerType_Info() |
| * @generated |
| */ |
| String getInfo(); |
| |
| /** |
| * Sets the value of the '{@link org.eclipse.jst.javaee.ejb.TimerType#getInfo <em>Info</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @param value the new value of the '<em>Info</em>' attribute. |
| * @see #getInfo() |
| * @generated |
| */ |
| void setInfo(String value); |
| |
| /** |
| * Returns the value of the '<em><b>Id</b></em>' attribute. |
| * <!-- begin-user-doc --> |
| * <p> |
| * If the meaning of the '<em>Id</em>' attribute isn't clear, |
| * there really should be more of a description here... |
| * </p> |
| * <!-- end-user-doc --> |
| * @return the value of the '<em>Id</em>' attribute. |
| * @see #setId(String) |
| * @see org.eclipse.jst.javaee.ejb.internal.metadata.EjbPackage#getTimerType_Id() |
| * @generated |
| */ |
| String getId(); |
| |
| /** |
| * Sets the value of the '{@link org.eclipse.jst.javaee.ejb.TimerType#getId <em>Id</em>}' attribute. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @param value the new value of the '<em>Id</em>' attribute. |
| * @see #getId() |
| * @generated |
| */ |
| void setId(String value); |
| |
| } // TimerType |