Interface EventManagerAPI
public interface EventManagerAPI
-
Method Summary
Modifier and TypeMethodDescriptionGets the asynchronous executor used for running event handlers asynchronously.void
Registers a class as a listener.void
registerListener
(Class<? extends CloudEvent> eventClass, CloudListener listener, int priority) Registers a specific listener for a specific event class with a given priority.void
trigger
(CloudEvent event) Triggers a specific event and invokes the listeners associated with it.void
unregister
(Class<?> clazz) Unregisters a class from being used as a listener.void
unregisterListener
(Class<? extends CloudEvent> eventClass, CloudListener listener) Unregisters a specific listener for a specific event class.
-
Method Details
-
register
Registers a class as a listener.Only classes that implement
CloudListener
are allowed to be registered. The class must have methods annotated withCloudHandler
that handleCloudEvent
instances.- Parameters:
clazz
- The class of the listener to register.
-
registerListener
Registers a specific listener for a specific event class with a given priority.Listeners are executed based on their priority, with higher priority listeners being called first.
- Parameters:
eventClass
- The event class to register the listener for.listener
- The listener to register.priority
- The priority of the listener.
-
unregister
Unregisters a class from being used as a listener.This will remove all methods that are annotated with
CloudHandler
from the registered event classes.- Parameters:
clazz
- The class to unregister as a listener.
-
unregisterListener
Unregisters a specific listener for a specific event class.- Parameters:
eventClass
- The event class to unregister the listener from.listener
- The listener to unregister.
-
trigger
Triggers a specific event and invokes the listeners associated with it.Listeners can be executed synchronously or asynchronously based on their configuration.
- Parameters:
event
- The event to trigger.
-
getAsyncExecutor
ExecutorService getAsyncExecutor()Gets the asynchronous executor used for running event handlers asynchronously.- Returns:
- The
ExecutorService
used for async event handling.
-