Package org.firebirdsql.gds.ng.listeners
Class AbstractListenerDispatcher<TListener>
java.lang.Object
org.firebirdsql.gds.ng.listeners.AbstractListenerDispatcher<TListener>
- Type Parameters:
TListener- Listener type
- All Implemented Interfaces:
Iterable<TListener>
- Direct Known Subclasses:
AsynchronousChannelListenerDispatcher,DatabaseListenerDispatcher,ServiceListenerDispatcher,StatementListenerDispatcher,TransactionListenerDispatcher
Dispatcher to maintain a list of listeners of type
TListener- Since:
- 3.0
- Author:
- Mark Rotteveel
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal voidaddListener(TListener listener) Adds the supplied listener to this dispatcher as a strongly referenced listener.final voidaddWeakListener(TListener listener) Adds the supplied listener to this dispatcher as a weakly referenced listener.final booleaniterator()final voidRemoves all listeners from this dispatcher.final voidremoveListener(TListener listener) Removes the supplied listener from this dispatcher (both weak and strong).final voidshutdown()Shuts down this dispatcher and removes all listeners.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
AbstractListenerDispatcher
public AbstractListenerDispatcher()
-
-
Method Details
-
addListener
Adds the supplied listener to this dispatcher as a strongly referenced listener.A call to this method has no effect after
shutdown()has been called.- Parameters:
listener- Listener object
-
addWeakListener
Adds the supplied listener to this dispatcher as a weakly referenced listener.A call to this method has no effect after
shutdown()has been called.Attempts to add a listener that is already strongly referenced will be ignored.
- Parameters:
listener- Listener object
-
removeListener
Removes the supplied listener from this dispatcher (both weak and strong).- Parameters:
listener- Listener object
-
removeAllListeners
public final void removeAllListeners()Removes all listeners from this dispatcher. -
shutdown
public final void shutdown()Shuts down this dispatcher and removes all listeners.After shutdown calls to
addListener(Object)are ignored. -
isShutdown
public final boolean isShutdown()- Returns:
truewhen this dispatcher has been shut down.
-
iterator
-