src.server
Class EventHandler

java.lang.Object
  extended byjava.lang.Thread
      extended bysrc.server.EventHandler
All Implemented Interfaces:
java.lang.Runnable

public class EventHandler
extends java.lang.Thread

Class to handle server triggered events. Modules can register events with the event handler which will then be triggered with the specified periodicity.

Version:
2005-apr-23

Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
EventHandler(int minimumInterval)
          Constructor for EventHandler.
 
Method Summary
 boolean deregisterEvent(EventReceiver receiver, java.lang.String eventId)
          Deregisters an event.
static EventHandler getInstance()
          Get instance of this singleton class.
 boolean registerEvent(EventReceiver receiver, java.lang.String eventId, java.util.Date runStart, int interval)
          Register an event.
 void run()
          Thread runner method.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

EventHandler

public EventHandler(int minimumInterval)
Constructor for EventHandler.

Parameters:
minimumInterval - The handler's update resolution. Intervals lower than this will not work as intended.
Method Detail

getInstance

public static EventHandler getInstance()
Get instance of this singleton class.

Returns:
The singleton instance.

registerEvent

public boolean registerEvent(EventReceiver receiver,
                             java.lang.String eventId,
                             java.util.Date runStart,
                             int interval)
Register an event.

Parameters:
receiver - The receiver to which the event should be sent when it's triggered.
eventId - A piece of data which will be sent to the module when this event is registered.
runStart - The next time this event should be run (ie. the starting time).
interval - The interval in minutes for which to run this event, may be 0 to indicate one time event.
Returns:
True if the registration was successful, false otherwise.

deregisterEvent

public boolean deregisterEvent(EventReceiver receiver,
                               java.lang.String eventId)
Deregisters an event.

Parameters:
receiver - The receiver for which this event has been registered.
eventId - The id of the event (as was specified in the registerEvent).
Returns:
True if the deregistration was successfil, false otheriwse.

run

public void run()
Thread runner method.