com.vaadin.event
Class EventRouter

java.lang.Object
  extended by com.vaadin.event.EventRouter
All Implemented Interfaces:
MethodEventSource, Serializable

public class EventRouter
extends Object
implements MethodEventSource

EventRouter class implementing the inheritable event listening model. For more information on the event model see the package documentation.

Since:
3.0
Version:
7.0.0.alpha3
Author:
Vaadin Ltd.
See Also:
Serialized Form

Constructor Summary
EventRouter()
           
 
Method Summary
 void addListener(Class<?> eventType, Object object, Method method)
           Registers a new event listener with the specified activation method to listen events generated by this component.
 void addListener(Class<?> eventType, Object object, String methodName)
           Registers a new listener with the specified activation method to listen events generated by this component.
 void fireEvent(EventObject event)
          Sends an event to all registered listeners.
 Collection<?> getListeners(Class<?> eventType)
          Returns all listeners that match or extend the given event type.
 boolean hasListeners(Class<?> eventType)
          Checks if the given Event type is listened by a listener registered to this router.
 void removeAllListeners()
          Removes all listeners from event router.
 void removeListener(Class<?> eventType, Object target)
          Removes all registered listeners matching the given parameters.
 void removeListener(Class<?> eventType, Object target, Method method)
          Removes one registered listener method.
 void removeListener(Class<?> eventType, Object target, 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(Class<?> eventType,
                        Object object,
                        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 inheritable event mechanism see the com.vaadin.event package documentation.

Specified by:
addListener in interface MethodEventSource
Parameters:
eventType - the 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(Class<?> eventType,
                        Object object,
                        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 inheritable event mechanism see the com.vaadin.event package documentation.

Specified by:
addListener in interface MethodEventSource
Parameters:
eventType - the 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(Class<?> eventType,
                           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 inheritable event mechanism see the com.vaadin.event package documentation.

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

removeListener

public void removeListener(Class<?> eventType,
                           Object target,
                           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 inheritable event mechanism see the com.vaadin.event package documentation.

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

removeListener

public void removeListener(Class<?> eventType,
                           Object target,
                           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 the target, and unless exactly one match is found, java.lang.IllegalArgumentException is thrown.

For more information on the inheritable event mechanism see the com.vaadin.event package documentation.

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

removeAllListeners

public void removeAllListeners()
Removes all listeners from event router.


fireEvent

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

Parameters:
event - the Event to be sent to all listeners.

hasListeners

public boolean hasListeners(Class<?> eventType)
Checks if the given Event type is listened by a listener registered to this router.

Parameters:
eventType - the event type to be checked
Returns:
true if a listener is registered for the given event type

getListeners

public Collection<?> getListeners(Class<?> eventType)
Returns all listeners that match or extend the given event type.

Parameters:
eventType - The type of event to return listeners for.
Returns:
A collection with all registered listeners. Empty if no listeners are found.


Copyright © 2000-2011 Vaadin Ltd. All Rights Reserved.