public class EventBus<T extends EntityHolder>
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static interface |
EventBus.Runner |
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
DEFAULT_NAME |
static EventBus.Runner |
DEFAULT_RUNNER |
static EventBus.Runner |
RUNNER_MULTI_THREAD |
static EventBus.Runner |
RUNNER_SINGLE_THREAD |
| Constructor and Description |
|---|
EventBus() |
EventBus(java.lang.String eventBusName) |
| Modifier and Type | Method and Description |
|---|---|
void |
clear()
Will call
EntityHolder.finish() on each holder before clear eventBus. |
static void |
clearAll()
Will call
EntityHolder.finish() on each holder before clear eventBus. |
static java.util.List<EventBus<? extends EntityHolder>> |
fetchEventBusesList()
Collects and returns list of all defined event buses.
|
java.util.List<T> |
fetchHoldersList()
Collects and returns list of all holders registered in event bus.
|
static EventBus<? extends EntityHolder> |
getEventBus(java.lang.String eventBusName) |
java.lang.String |
getEventBusName() |
T |
getHolder(java.lang.String type) |
java.util.Map<java.lang.String,T> |
getHolders()
Returns the map of holders in event bus.
|
static java.util.Map<java.lang.String,? extends EntityHolder> |
getHolders(java.lang.String eventBusName) |
java.util.List<? extends EntityHolder> |
getHoldersList() |
static java.util.List<? extends EntityHolder> |
getHoldersList(java.lang.String eventBusName) |
static EventBus<? extends EntityHolder> |
getOrCreate() |
static EventBus<? extends EntityHolder> |
getOrCreate(java.lang.String eventBusName) |
EventBus.Runner |
getRunner() |
static void |
inspect(java.lang.String eventName)
Provides the possibility for deep inspection of event specified.
|
void |
post(java.lang.String eventName)
Events poster.
|
void |
post(java.lang.String eventName,
java.lang.Object eventObject)
Events poster.
|
static void |
post(java.lang.String eventBusName,
java.lang.String eventName,
java.lang.Object eventObject)
Events poster.
|
static void |
postAll(java.lang.Runnable runnable)
Will post runnable to each holder in each event bus using the same queue as events.
|
static void |
postAll(java.lang.String eventName)
Will post runnable to each holder in each event bus defined.
|
static void |
postAll(java.lang.String eventName,
java.lang.Object eventObject)
Will post event/object to each holder in each event bus defined.
|
void |
postRunnable(java.lang.Runnable runnable)
Will post runnable in the same queue with events.
|
static void |
postRunnable(java.lang.String eventBusName,
java.lang.Runnable runnable)
Will post runnable in the same queue with events.
|
void |
register(T holder)
Registers the holder in event bus.
|
T |
registerIfAbsent(T holder)
Registers the holder in event bus only if it is not registered.
|
void |
registerOrUpdate(T holder)
Registers the holder in event bus or updates if it already exists.
|
static void |
setLoggingLevel(java.util.logging.Level loggingLevel) |
static void |
setMainRunner(EventBus.Runner runner)
Redefines the default runner and overrides runners in all existing buses.
|
void |
setRunner(EventBus.Runner runner)
Changes the runner for event bus.
|
void |
unregister(java.lang.String type)
Unregisters the holder from event bus by its type.
|
void |
unregister(T holder)
Unregisters the holder from event bus.
|
void |
update(T holder)
Updates the holder and keeps its order in the queue.
|
public static final java.lang.String DEFAULT_NAME
public static final EventBus.Runner DEFAULT_RUNNER
public static final EventBus.Runner RUNNER_MULTI_THREAD
public static final EventBus.Runner RUNNER_SINGLE_THREAD
public EventBus()
throws java.util.TooManyListenersException
java.util.TooManyListenersExceptionpublic EventBus(java.lang.String eventBusName)
throws java.util.TooManyListenersException
java.util.TooManyListenersExceptionpublic static void clearAll()
EntityHolder.finish() on each holder before clear eventBus.public static java.util.List<EventBus<? extends EntityHolder>> fetchEventBusesList()
public static EventBus<? extends EntityHolder> getEventBus(java.lang.String eventBusName)
public static java.util.Map<java.lang.String,? extends EntityHolder> getHolders(java.lang.String eventBusName)
public static java.util.List<? extends EntityHolder> getHoldersList(java.lang.String eventBusName)
public static void setLoggingLevel(java.util.logging.Level loggingLevel)
public static EventBus<? extends EntityHolder> getOrCreate()
public static EventBus<? extends EntityHolder> getOrCreate(java.lang.String eventBusName)
public static void inspect(java.lang.String eventName)
eventName - any not empty event name, i.e. "event1"public static void post(java.lang.String eventBusName,
java.lang.String eventName,
java.lang.Object eventObject)
EventBus.Runner.eventBusName - name of event bus that must process this eventeventName - any not empty event name, i.e. "event1"eventObject - any object that will be sent together with event namepublic static void postAll(java.lang.String eventName,
java.lang.Object eventObject)
eventName - any not empty event name, i.e. "event1"eventObject - any object that will be sent together with event namepublic static void postAll(java.lang.String eventName)
eventName - any not empty event name, i.e. "event1"public static void postAll(java.lang.Runnable runnable)
runnable - redefine Runnablepublic static void postRunnable(java.lang.String eventBusName,
java.lang.Runnable runnable)
eventBusName - name of target event busrunnable - redefine Runnablepublic static void setMainRunner(EventBus.Runner runner)
runner - EventBus.Runner, default value is DEFAULT_RUNNER.public void clear()
EntityHolder.finish() on each holder before clear eventBus.public java.util.List<T> fetchHoldersList()
public java.lang.String getEventBusName()
public T getHolder(java.lang.String type)
public java.util.Map<java.lang.String,T> getHolders()
public java.util.List<? extends EntityHolder> getHoldersList()
public EventBus.Runner getRunner()
public void setRunner(EventBus.Runner runner)
runner - EventBus.Runner, default value is DEFAULT_RUNNER.public void post(java.lang.String eventName)
EventBus.Runner.eventName - any not empty event name, i.e. "event1"public void post(java.lang.String eventName,
java.lang.Object eventObject)
EventBus.Runner.eventName - any not empty event name, i.e. "event1"eventObject - any object that will be sent together with event namepublic void postRunnable(java.lang.Runnable runnable)
runnable - redefine Runnablepublic void register(T holder)
holder - must implement EntityHolder, may be an instance of AbstractEntityHolderpublic void registerOrUpdate(T holder)
holder - must implement EntityHolder, may be an instance of AbstractEntityHolderpublic T registerIfAbsent(T holder)
holder - must implement EntityHolder, may be an instance of AbstractEntityHolderpublic void update(T holder)
holder - must implement EntityHolder, may be an instance of AbstractEntityHolderpublic void unregister(java.lang.String type)
type - typepublic void unregister(T holder)
holder - must implement EntityHolder, may be an instance of AbstractEntityHolder