Package me.wouterkistemaker.eventmanager
Class EventManager
java.lang.Object
java.lang.Thread
me.wouterkistemaker.eventmanager.EventManager
- All Implemented Interfaces:
Runnable
An event manager. Event managers handle the lifecycle of events and listeners.
This implementation is completely synchronous, meaning it has only one thread.
(the instance itself is a thread) Thus, concurrency issues are not a concern.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Thread
Thread.BuilderPREVIEW, Thread.State, Thread.UncaughtExceptionHandler
-
Field Summary
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<T extends Handleable>
voidcallEvent
(T event) Calls an event to this event manager, adding it to the event queue.void
Deprecated, for removal: This API element is subject to removal in a future version.<T extends Handleable>
voidpriorityCallEvent
(T event) Priority calls an event to this event manager, adding it to the head of the event queue.void
register
(EventListener eventListener) Registers an event listener to this event manager.void
run()
Starts this event manager, entering an infinite loop processing events until interrupted.void
unregister
(EventListener eventListener) Unregisters an event listener from this event manager.Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, isVirtual, join, join, join, join, ofPlatform, ofVirtual, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, sleep, start, startVirtualThread, stop, suspend, threadId, toString, yield
-
Constructor Details
-
EventManager
public EventManager()
-
-
Method Details
-
run
public void run()Starts this event manager, entering an infinite loop processing events until interrupted. -
forceStop
Deprecated, for removal: This API element is subject to removal in a future version.Deprecated method. This delegates toThread.interrupt()
. -
register
Registers an event listener to this event manager.- Parameters:
eventListener
- The listener to register to this event manager
-
unregister
Unregisters an event listener from this event manager.- Parameters:
eventListener
- The listener to unregister from this event manager- Since:
- 1.1
-
callEvent
Calls an event to this event manager, adding it to the event queue. The event will be processed on a FILO (first-in-last-out) basis.- Type Parameters:
T
- The type of event to call to this manager- Parameters:
event
- The event to call to this manager
-
priorityCallEvent
Priority calls an event to this event manager, adding it to the head of the event queue. The event will be processed on a FIFO (first-in-first-out) basis.- Type Parameters:
T
- The type of event to call to this manager- Parameters:
event
- The event to call to this manager
-