Package org.apache.cayenne.event
Class NoopEventManager
java.lang.Object
org.apache.cayenne.event.NoopEventManager
- All Implemented Interfaces:
EventManager
public class NoopEventManager extends Object implements EventManager
- Since:
- 4.1
-
Constructor Summary
Constructors Constructor Description NoopEventManager() -
Method Summary
Modifier and Type Method Description voidaddListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)Register anEventListenerfor events sent by any sender.voidaddListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)Register anEventListenerfor events sent by a specific sender.voidaddNonBlockingListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)voidaddNonBlockingListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)booleanisSingleThreaded()Returns true if this EventManager is single-threaded.voidpostEvent(EventObject event, EventSubject subject)Sends an event to all registered objects about a particular subject.voidpostNonBlockingEvent(EventObject event, EventSubject subject)Sends an event to all registered objects about a particular subject.booleanremoveAllListeners(EventSubject subject)Removes all listeners for a given subject.booleanremoveListener(Object listener)Unregister the specified listener from all event subjects handled by this manager instance.booleanremoveListener(Object listener, EventSubject subject)Unregister the specified listener for the events about the given subject.booleanremoveListener(Object listener, EventSubject subject, Object sender)Unregister the specified listener for the events about the given subject and the given sender.
-
Constructor Details
-
NoopEventManager
public NoopEventManager()
-
-
Method Details
-
isSingleThreaded
public boolean isSingleThreaded()Description copied from interface:EventManagerReturns true if this EventManager is single-threaded. If so it will throw an exception on any attempt to register an unblocking listener or dispatch a non-blocking event.- Specified by:
isSingleThreadedin interfaceEventManager
-
addListener
public void addListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)Description copied from interface:EventManagerRegister anEventListenerfor events sent by any sender.- Specified by:
addListenerin interfaceEventManager
-
addNonBlockingListener
public void addNonBlockingListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)- Specified by:
addNonBlockingListenerin interfaceEventManager
-
addListener
public void addListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)Description copied from interface:EventManagerRegister anEventListenerfor events sent by a specific sender.- Specified by:
addListenerin interfaceEventManager- Parameters:
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 tomethodNamesubject- the event subject that the listener is interested insender- the object whose events the listener is interested in;nullmeans 'any sender'.
-
addNonBlockingListener
public void addNonBlockingListener(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)- Specified by:
addNonBlockingListenerin interfaceEventManager
-
removeListener
Description copied from interface:EventManagerUnregister the specified listener from all event subjects handled by this manager instance.- Specified by:
removeListenerin interfaceEventManager- Parameters:
listener- the object to be unregistered- Returns:
trueiflistenercould be removed for any existing subjects, else returnsfalse.
-
removeAllListeners
Description copied from interface:EventManagerRemoves all listeners for a given subject.- Specified by:
removeAllListenersin interfaceEventManager
-
removeListener
Description copied from interface:EventManagerUnregister the specified listener for the events about the given subject.- Specified by:
removeListenerin interfaceEventManager- Parameters:
listener- the object to be unregisteredsubject- the subject from which the listener is to be unregistered- Returns:
trueiflistenercould be removed for the given subject, else returnsfalse.
-
removeListener
Description copied from interface:EventManagerUnregister the specified listener for the events about the given subject and the given sender.- Specified by:
removeListenerin interfaceEventManager- Parameters:
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;nullmeans 'any sender'.- Returns:
trueiflistenercould be removed for the given subject, else returnsfalse.
-
postEvent
Description copied from interface:EventManagerSends an event to all registered objects about a particular subject. Event is sent synchronously, so the sender thread is blocked until all the listeners finish processing the event.- Specified by:
postEventin interfaceEventManager- Parameters:
event- the event to be posted to the observerssubject- the subject about which observers will be notified
-
postNonBlockingEvent
Description copied from interface:EventManagerSends an event to all registered objects about a particular subject. Event is queued by EventManager, releasing the sender thread, and is later dispatched in a separate thread.- Specified by:
postNonBlockingEventin interfaceEventManager- Parameters:
event- the event to be posted to the observerssubject- the subject about which observers will be notified
-