public interface EventManager
Modifier and Type | Method and Description |
---|---|
void |
addListener(Object listener,
String methodName,
Class<?> eventParameterClass,
EventSubject subject)
Register an
EventListener for events sent by any sender. |
void |
addListener(Object listener,
String methodName,
Class<?> eventParameterClass,
EventSubject subject,
Object sender)
Register an
EventListener for events sent by a specific sender. |
void |
addNonBlockingListener(Object listener,
String methodName,
Class<?> eventParameterClass,
EventSubject subject) |
void |
addNonBlockingListener(Object listener,
String methodName,
Class<?> eventParameterClass,
EventSubject subject,
Object sender) |
boolean |
isSingleThreaded()
Returns true if this EventManager is single-threaded.
|
void |
postEvent(EventObject event,
EventSubject subject)
Sends an event to all registered objects about a particular subject.
|
void |
postNonBlockingEvent(EventObject event,
EventSubject subject)
Sends an event to all registered objects about a particular subject.
|
boolean |
removeAllListeners(EventSubject subject)
Removes all listeners for a given subject.
|
boolean |
removeListener(Object listener)
Unregister the specified listener from all event subjects handled by this manager
instance.
|
boolean |
removeListener(Object listener,
EventSubject subject)
Unregister the specified listener for the events about the given subject.
|
boolean |
removeListener(Object listener,
EventSubject subject,
Object sender)
Unregister the specified listener for the events about the given subject and the
given sender.
|
boolean isSingleThreaded()
void addListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)
EventListener
for events sent by any sender.RuntimeException
- if methodName
is not found.void addNonBlockingListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)
void addListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)
EventListener
for events sent by a specific sender.listener
- the object to be notified about eventsmethodName
- the name of the listener method to be invokedeventParameterClass
- the class of the single event argument passed to
methodName
subject
- the event subject that the listener is interested insender
- the object whose events the listener is interested in;
null
means 'any sender'.RuntimeException
- if methodName
is not foundvoid addNonBlockingListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)
boolean removeListener(Object listener)
listener
- the object to be unregisteredtrue
if listener
could be removed for any
existing subjects, else returns false
.boolean removeAllListeners(EventSubject subject)
boolean removeListener(Object listener, EventSubject subject)
listener
- the object to be unregisteredsubject
- the subject from which the listener is to be unregisteredtrue
if listener
could be removed for the given
subject, else returns false
.boolean removeListener(Object listener, EventSubject subject, Object sender)
listener
- the object to be unregisteredsubject
- the subject from which the listener is to be unregisteredsender
- the object whose events the listener was interested in;
null
means 'any sender'.true
if listener
could be removed for the given
subject, else returns false
.void postEvent(EventObject event, EventSubject subject)
event
- the event to be posted to the observerssubject
- the subject about which observers will be notifiedIllegalArgumentException
- if event or subject are nullvoid postNonBlockingEvent(EventObject event, EventSubject subject)
event
- the event to be posted to the observerssubject
- the subject about which observers will be notifiedIllegalArgumentException
- if event or subject are nullCopyright © 2001–2019 Apache Cayenne. All rights reserved.