org.millstone.base.event
Class EventRouter

java.lang.Object
  |
  +--org.millstone.base.event.EventRouter
All Implemented Interfaces:
MethodEventSource

public class EventRouter
extends java.lang.Object
implements MethodEventSource

Event router class implementing the MillStone inheritable event listening model. For more information on the event model see the org.millstone.base.event.

Since:
3.0
Version:
3.0.3
Author:
IT Mill Ltd.

Constructor Summary
EventRouter()
           
 
Method Summary
 void addListener(java.lang.Class eventType, java.lang.Object object, java.lang.reflect.Method method)
          Registers a new event listener with the specified activation method to listen events generated by this component.
 void addListener(java.lang.Class eventType, java.lang.Object object, java.lang.String methodName)
          Registers a new listener with the specified activation method to listen events generated by this component.
 void fireEvent(java.util.EventObject event)
          Send an event to all registered listeners.
 void removeAllListeners()
          Remove all listeners from event router
 void removeListener(java.lang.Class eventType, java.lang.Object target)
          Removes all registered listeners matching the given parameters.
 void removeListener(java.lang.Class eventType, java.lang.Object target, java.lang.reflect.Method method)
          Removes one registered listener method.
 void removeListener(java.lang.Class eventType, java.lang.Object target, java.lang.String methodName)
          Removes one registered listener method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EventRouter

public EventRouter()
Method Detail

addListener

public void addListener(java.lang.Class eventType,
                        java.lang.Object object,
                        java.lang.reflect.Method method)
Description copied from interface: MethodEventSource

Registers a new event listener with the specified activation method to listen events generated by this component. If the activation method does not have any arguments the event object will not be passed to it when it's called.

For more information on the MillStone inheritable event mechanism see the org.millstone.base.event.

Specified by:
addListener in interface MethodEventSource
Parameters:
eventType - type of the listened event. Events of this type or its subclasses activate the listener.
object - the object instance who owns the activation method
method - the activation method

addListener

public void addListener(java.lang.Class eventType,
                        java.lang.Object object,
                        java.lang.String methodName)
Description copied from interface: MethodEventSource

Registers a new listener with the specified activation method to listen events generated by this component. If the activation method does not have any arguments the event object will not be passed to it when it's called.

This version of addListener gets the name of the activation method as a parameter. The actual method is reflected from object, and unless exactly one match is found, java.lang.IllegalArgumentException is thrown.

For more information on the MillStone inheritable event mechanism see the org.millstone.base.event.

Specified by:
addListener in interface MethodEventSource
Parameters:
eventType - type of the listened event. Events of this type or its subclasses activate the listener.
object - the object instance who owns the activation method
methodName - the name of the activation method

removeListener

public void removeListener(java.lang.Class eventType,
                           java.lang.Object target)
Description copied from interface: MethodEventSource
Removes all registered listeners matching the given parameters. Since this method receives the event type and the listener object as parameters, it will unregister all object's methods that are registered to listen to events of type eventType generated by this component.

For more information on the MillStone inheritable event mechanism see the org.millstone.base.event.

Specified by:
removeListener in interface MethodEventSource
Parameters:
eventType - exact event type the object listens to
target - target object that has registered to listen to events of type eventType with one or more methods

removeListener

public void removeListener(java.lang.Class eventType,
                           java.lang.Object target,
                           java.lang.reflect.Method method)
Description copied from interface: MethodEventSource
Removes one registered listener method. The given method owned by the given object will no longer be called when the specified events are generated by this component.

For more information on the MillStone inheritable event mechanism see the org.millstone.base.event.

Specified by:
removeListener in interface MethodEventSource
Parameters:
eventType - exact event type the object listens to
target - target object that has registered to listen to events of type eventType with one or more methods
method - the method owned by target that's registered to listen to events of type eventType

removeListener

public void removeListener(java.lang.Class eventType,
                           java.lang.Object target,
                           java.lang.String methodName)
Description copied from interface: MethodEventSource

Removes one registered listener method. The given method owned by the given object will no longer be called when the specified events are generated by this component.

This version of removeListener gets the name of the activation method as a parameter. The actual method is reflected from target, and unless exactly one match is found, java.lang.IllegalArgumentException is thrown.

For more information on the MillStone inheritable event mechanism see the org.millstone.base.event.

Specified by:
removeListener in interface MethodEventSource
Parameters:
eventType - exact event type the object listens to
target - target object that has registered to listen to events of type eventType with one or more methods
methodName - name of the method owned by target that's registered to listen to events of type eventType

removeAllListeners

public void removeAllListeners()
Remove all listeners from event router


fireEvent

public void fireEvent(java.util.EventObject event)
Send an event to all registered listeners. The listeners will decide if the activation method should be called or not.

Parameters:
event - Event to be sent to all listeners


Copyright © 2000,2001,2002 IT Mill Ltd. All Rights Reserved.