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
.Constructor and Description |
---|
EventRouter() |
Modifier and Type | Method and Description |
---|---|
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.
|
void |
fireEvent(EventObject event,
ErrorHandler errorHandler)
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.
|
public void addListener(Class<?> eventType, Object object, Method method)
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
.
addListener
in interface MethodEventSource
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.public void addListener(Class<?> eventType, Object object, String methodName)
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
.
addListener
in interface MethodEventSource
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.public void removeListener(Class<?> eventType, Object target)
MethodEventSource
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
.
removeListener
in interface MethodEventSource
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.public void removeListener(Class<?> eventType, Object target, Method method)
MethodEventSource
For more information on the inheritable event mechanism see the
com.vaadin.event package documentation
.
removeListener
in interface MethodEventSource
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.public void removeListener(Class<?> eventType, Object target, String methodName)
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
.
removeListener
in interface MethodEventSource
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
.public void removeAllListeners()
public void fireEvent(EventObject event)
event
- the Event to be sent to all listeners.public void fireEvent(EventObject event, ErrorHandler errorHandler)
If an error handler is set, the processing of other listeners will continue after the error handler method call unless the error handler itself throws an exception.
event
- the Event to be sent to all listeners.errorHandler
- error handler to use to handle any exceptions thrown by
listeners or null to let the exception propagate to the
caller, preventing further listener callspublic boolean hasListeners(Class<?> eventType)
eventType
- the event type to be checkedpublic Collection<?> getListeners(Class<?> eventType)
eventType
- The type of event to return listeners for.Copyright © 2019 Vaadin Ltd. All rights reserved.