Event Listener. Implementations of this interface can handle events dispatched to an EventHandler.
An Event Listener expresses interest in handling some set of Event types by implementing getTypes() to return the Event type names that it should handle. The EventHandler is responsible for dispatching incoming Events to registered listeners. The default implementation of the EventHandler is the EventService EJB Session Bean.
Any Events dispatched to the EventHandler are sent to registered EventListeners handleEvent() method. Implement this method to do the action required when the event occurs. The EventService implementation processes these handleEvent methods synchronously (although in no particular order). Thus, every effort must be made to have the handleEvent methods as efficient as possible. If some action is to take a significant amount of time or other resources, consider making handleEvent asynchronous via some service such as JMS.
NOTE: All implementations of EventListener are required to
have a no-args constructor - i.e. so that new EventListener()
will work.
EventListener implementations should implement equals() is such a way that multiple listeners will not be added to the same handler. Simple listeners (where any instance of the class is equivalent to any other) may want to use the following implementaion.
public boolean equals( Object theOther ) { // Consider listeners of the same class as equivalent return theOther != null && theOther.getClass() == this.getClass(); }
Related Topics
DebugEventListener
, BehaviorTrackingListener
Method Summary |
public |
|
public void |
|
Method Detail |
public String
[] getTypes()
This method lets the EventListener advertise what types
it is interested in.
It is used by the EventHandler to dispatch
only Events with a matching type to this EventListener.
To listen on all events, implement this method to return
a String[1] containing EventConstants.TYPE_ALL.
Must not return null or return null in any element.
public void handleEvent(Event
theEvent)
Implement this method to "do the action" that is required when
an event is dispatched to the EventHandler.
This method will be called whenever an Event's type matches
one of the types returned by getTypes().