javax.ejb
Interface Timer

All Known Implementing Classes:
EjbTimer

public interface Timer

The Timer interface contains information about a timer that was created through the EJB Timer Service.


Method Summary
 void cancel()
          Cause the timer and all its associated expiration notifications to be Canceled.
 TimerHandle getHandle()
          Get a serializable handle to the timer.
 java.io.Serializable getInfo()
          Get the information associated with the timer at the time of creation.
 java.util.Date getNextTimeout()
          Get the point in time at which the next timer expiration is scheduled to occur.
 ScheduleExpression getSchedule()
          Get the schedule expression corresponding to this timer.
 long getTimeRemaining()
          Get the number of milliseconds that will elapse before the next scheduled timer expiration.
 boolean isCalendarTimer()
          Query whether this timer is a calendar-based timer.
 boolean isPersistent()
          Query whether this timer has persistent semantics.
 

Method Detail

cancel

void cancel()
            throws java.lang.IllegalStateException,
                   NoSuchObjectLocalException,
                   EJBException
Cause the timer and all its associated expiration notifications to be Canceled.

Throws:
java.lang.IllegalStateException - If this method is invoked while the instance is in a state that does not allow access to this method.
NoSuchObjectLocalException - If invoked on a timer that has expired or has been canceled.
EJBException - If this method could not complete due to a system-level failure.

getHandle

TimerHandle getHandle()
                      throws java.lang.IllegalStateException,
                             NoSuchObjectLocalException,
                             EJBException
Get a serializable handle to the timer. This handle can be used at a later time to re-obtain the timer reference.

Returns:
A serializable handle to the timer.
Throws:
java.lang.IllegalStateException - If this method is invoked while the instance is in a state that does not allow access to this method.
NoSuchObjectLocalException - If invoked on a timer that has expired or has been canceled.
EJBException - If this method could not complete due to a system-level failure.

getInfo

java.io.Serializable getInfo()
                             throws java.lang.IllegalStateException,
                                    NoSuchObjectLocalException,
                                    EJBException
Get the information associated with the timer at the time of creation.

Returns:
The Serializable object that was passed in at timer creation, or null if the info argument passed in at timer creation was null.
Throws:
java.lang.IllegalStateException - If this method is invoked while the instance is in a state that does not allow access to this method.
NoSuchObjectLocalException - If invoked on a timer that has expired or has been canceled.
EJBException - If this method could not complete due to a system-level failure.

getNextTimeout

java.util.Date getNextTimeout()
                              throws java.lang.IllegalStateException,
                                     NoSuchObjectLocalException,
                                     EJBException
Get the point in time at which the next timer expiration is scheduled to occur.

Returns:
The point in time at which the next timer expiration is scheduled to occur.
Throws:
java.lang.IllegalStateException - If this method is invoked while the instance is in a state that does not allow access to this method.
NoSuchObjectLocalException - If invoked on a timer that has expired or has been canceled.
EJBException - If this method could not complete due to a system-level failure.

getTimeRemaining

long getTimeRemaining()
                      throws java.lang.IllegalStateException,
                             NoSuchObjectLocalException,
                             EJBException
Get the number of milliseconds that will elapse before the next scheduled timer expiration.

Returns:
The number of milliseconds that will elapse before the next scheduled timer expiration.
Throws:
java.lang.IllegalStateException - If this method is invoked while the instance is in a state that does not allow access to this method.
NoSuchObjectLocalException - If invoked on a timer that has expired or has been canceled.
EJBException - If this method could not complete due to a system-level failure.

getSchedule

ScheduleExpression getSchedule()
                               throws java.lang.IllegalStateException,
                                      NoSuchObjectLocalException,
                                      EJBException
Get the schedule expression corresponding to this timer.

Returns:
Schedule expression corresponding to this timer.
Throws:
java.lang.IllegalStateException - If this method is invoked while the instance is in a state that does not allow access to this method. Also thrown if invoked on a timer that was created with one of the non-ScheduleExpression TimerService.createTimer APIs.
NoSuchObjectLocalException - If invoked on a timer that has expired or has been canceled.
EJBException - If this method could not complete due to a system-level failure.

isCalendarTimer

boolean isCalendarTimer()
                        throws java.lang.IllegalStateException,
                               NoSuchObjectLocalException,
                               EJBException
Query whether this timer is a calendar-based timer.

Returns:
true if this timer is a calendar-based timer.
Throws:
java.lang.IllegalStateException - If this method is invoked while the instance is in a state that does not allow access to this method.
NoSuchObjectLocalException - If invoked on a timer that has expired or has been cancelled.
EJBException - If this method could not complete due to a system-level failure.

isPersistent

boolean isPersistent()
                     throws java.lang.IllegalStateException,
                            NoSuchObjectLocalException,
                            EJBException
Query whether this timer has persistent semantics.

Returns:
true if this timer has persistent guarantees.
Throws:
java.lang.IllegalStateException - If this method is invoked while the instance is in a state that does not allow access to this method.
NoSuchObjectLocalException - If invoked on a timer that has expired or has been canceled.
EJBException - If this method could not complete due to a system-level failure.