package sale.events;

import sale.*;

/**
  * An event to be fired by implementations of the {@link sale.Timer Timer} interface.
  *
  * @author Stephan Gambke
  * @version 2.0 11/06/1999
  * @since v2.0
  */
public class TimerEvent extends java.util.EventObject {

  /**
    * The time to be reported.
    *
    * @serial
    */
  private Object m_oTime;

  /**
    * The time stamp assigned at creation time.
    *
    * @serial
    */
  private Object m_oTimeStamp;

  /**
    * Create a new TimerEvent
    *
    * @param tSource the source of this event
    */
  public TimerEvent(Timer tSource) {
    super (tSource);

    m_oTime = tSource.getTime();
    m_oTimeStamp = tSource.getTimeStamp();
  }

  /**
    * @return an Object representing the time this event occured
    *
    ** @override Never
    */
  public Object getTime() {return m_oTime;}

  /**
    * Return the time stamp for this event.
    *
    * <p>Thus, two TimerEvents can always be ordered according to their time of creation.</p>
    *
    * @override Never
    */
  public Object getTimeStamp() {return m_oTimeStamp;}
}