Package com.fren_gor.eventManagerAPI
Class EventManager
java.lang.Object
com.fren_gor.eventManagerAPI.EventManager
Class to register many event listeners using only one listener per event.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
clearEventListener
(@NotNull Class<? extends Event> event) Remove every listener to an event without unregistering its bukkitListener
.void
disable()
Unregister every registered bukkitListener
and disable the event manager.Gets the plugin which is used to register the listeners.boolean
Returns if the event manager is enabled and can register or listen to events.<E extends Event>
voidRegister a listener to anEvent
withEventPriority.NORMAL
priority.<E extends Event>
voidregister
(@NotNull Object listener, @NotNull Class<E> event, @NotNull EventPriority priority, @NotNull Consumer<E> consumer) Register a listener to anEvent
with a certain priority.void
unregister
(@NotNull Object listener) Unregister every event from a specified listener.void
unregisterEvent
(@NotNull Class<? extends Event> event) Unregister every listener to an event and try to unregister its bukkitListener
.
-
Constructor Details
-
EventManager
Create an EventManager.- Parameters:
plugin
- The plugin which will be used to register events.- Throws:
IllegalArgumentException
- IfPlugin
is null or not enabled.
-
-
Method Details
-
register
public <E extends Event> void register(@NotNull @NotNull Object listener, @NotNull @NotNull Class<E> event, @NotNull @NotNull Consumer<E> consumer) throws IllegalStateException, IllegalArgumentException Register a listener to anEvent
withEventPriority.NORMAL
priority.A new bukkit
Listener
will be registered iff no other event with the same type and priority has been registered before.- Parameters:
listener
- The listener. It can be every object.event
- The event to listen to.consumer
- The code to be run when the event is called.- Throws:
IllegalStateException
- If theEventManager
is disabled. SeeisEnabled()
.IllegalArgumentException
- If any argument is null or thePlugin
is disabled. SeePlugin.isEnabled()
.
-
register
public <E extends Event> void register(@NotNull @NotNull Object listener, @NotNull @NotNull Class<E> event, @NotNull @NotNull EventPriority priority, @NotNull @NotNull Consumer<E> consumer) throws IllegalStateException, IllegalArgumentException Register a listener to anEvent
with a certain priority.A new bukkit
Listener
will be registered iff no other event with the same type and priority has been registered before.- Parameters:
listener
- The listener. It can be every object.event
- The event to listen to.priority
- The event priority.consumer
- The code to be run when the event is called.- Throws:
IllegalStateException
- If theEventManager
is disabled. SeeisEnabled()
.IllegalArgumentException
- If any argument is null or thePlugin
is disabled. SeePlugin.isEnabled()
.
-
unregister
public void unregister(@NotNull @NotNull Object listener) throws IllegalStateException, IllegalArgumentException Unregister every event from a specified listener.- Parameters:
listener
- The listener to be unregister.- Throws:
IllegalStateException
- If theEventManager
is disabled. SeeisEnabled()
.IllegalArgumentException
- If listener is null.
-
clearEventListener
public void clearEventListener(@NotNull @NotNull Class<? extends Event> event) throws IllegalStateException, IllegalArgumentException Remove every listener to an event without unregistering its bukkitListener
.- Parameters:
event
- The event's class.- Throws:
IllegalStateException
- If theEventManager
is disabled. SeeisEnabled()
.IllegalArgumentException
- If event class is null.
-
unregisterEvent
public void unregisterEvent(@NotNull @NotNull Class<? extends Event> event) throws IllegalStateException, IllegalArgumentException Unregister every listener to an event and try to unregister its bukkitListener
.- Parameters:
event
- The event's class.- Throws:
IllegalStateException
- If theEventManager
is disabled. SeeisEnabled()
.IllegalArgumentException
- If event class is null.
-
disable
public void disable()Unregister every registered bukkitListener
and disable the event manager. -
getPlugin
Gets the plugin which is used to register the listeners.- Returns:
- The plugin which owns this
EventManager
.
-
isEnabled
public boolean isEnabled()Returns if the event manager is enabled and can register or listen to events.To disable the event manager and unregister every registered listener see
disable()
.- Returns:
- true if the event manager is enabled, false otherwise.
-