public class EventDispatcher extends java.lang.Object implements IEventDispatcher
IEventDispatcher
class implementation.Modifier and Type | Field and Description |
---|---|
private java.util.concurrent.CopyOnWriteArrayList<EventListener> |
listeners_
Thread-safe array of every handled listeners_.
|
Constructor and Description |
---|
EventDispatcher() |
Modifier and Type | Method and Description |
---|---|
void |
add_listener(java.lang.String et,
IEventHandler h)
Adds a new listener.
|
void |
dispatch_event(IEvent e)
Dispatches an event.
|
void |
remove_listener(java.lang.String et,
IEventHandler h)
Removes a listener of a specific type from a given handler.
|
void |
remove_listeners_for_event(java.lang.String et)
Removes all listeners for a given event type.
|
void |
remove_listeners_for_handler(IEventHandler h)
Remove all listeners for a given handler.
|
void |
remove_listeners()
Removes every listeners from the
listeners_ list. |
private final java.util.concurrent.CopyOnWriteArrayList<EventListener> listeners_
public void add_listener(java.lang.String et, IEventHandler h)
add_listener
in interface IEventDispatcher
et
- The event typeh
- An IEventHandler
implementationpublic void remove_listeners_for_event(java.lang.String et)
remove_listeners_for_event
in interface IEventDispatcher
et
- The event typepublic void remove_listeners_for_handler(IEventHandler h)
remove_listeners_for_handler
in interface IEventDispatcher
h
- An IEventHandler
object implementationpublic void remove_listener(java.lang.String et, IEventHandler h)
remove_listener
in interface IEventDispatcher
et
- The event typeh
- An IEventHandler
implementationpublic void remove_listeners()
listeners_
list.remove_listeners
in interface IEventDispatcher
public void dispatch_event(IEvent e)
dispatch_event
in interface IEventDispatcher
e
- An IEvent
object's implementation.