Interface ListenerRegistry
- All Superinterfaces:
Registry
Owns both the plugin's own event listeners and the ones registered with the platform.
-
Method Summary
Modifier and TypeMethodDescription@NonNull Map<Class<? extends Event>, EnumMap<Event.Priority, List<UnaryOperator<Event>>>> Every registered plugin listener, grouped by event and priority.@NonNull Map<Event.Priority, List<UnaryOperator<Event>>> getPulseListeners(Class<? extends Event> event) The listeners for one event, grouped by priority.voidRegisters a listener by type, creating it through dependency injection.voidregister(Class<?> clazzListener, Event.Priority eventPriority) Registers a listener by type at a given priority.voidregister(Class<? extends Event> eventClass, Event.Priority priority, UnaryOperator<Event> handler) Registers a single handler for one event.voidregister(PulseListener pulseListener) Registers an already built listener.voidRegisters the listeners the plugin always needs.voidregisterPermanent(PulseListener pulseListener) Registers a listener that survives reloads, for listeners owned by other plugins.voidRemoves every listener, including the permanent ones.
-
Method Details
-
getPulseListeners
@NonNull Map<Class<? extends Event>, EnumMap<Event.Priority, List<UnaryOperator<Event>>>> getPulseListeners()Every registered plugin listener, grouped by event and priority.- Returns:
- the listeners
-
getPulseListeners
@NonNull Map<Event.Priority, List<UnaryOperator<Event>>> getPulseListeners(Class<? extends Event> event) The listeners for one event, grouped by priority.- Parameters:
event- the event type- Returns:
- the listeners, empty if none are registered
-
registerPermanent
Registers a listener that survives reloads, for listeners owned by other plugins.- Parameters:
pulseListener- the listener
-
register
Registers a listener by type, creating it through dependency injection.- Parameters:
clazzListener- the listener type
-
register
Registers a listener by type at a given priority.- Parameters:
clazzListener- the listener typeeventPriority- when it runs relative to the others
-
register
Registers an already built listener.- Parameters:
pulseListener- the listener
-
register
void register(Class<? extends Event> eventClass, Event.Priority priority, UnaryOperator<Event> handler) Registers a single handler for one event.- Parameters:
eventClass- the event typepriority- when it runs relative to the othershandler- handles the event and returns the possibly modified one
-
unregisterAll
void unregisterAll()Removes every listener, including the permanent ones. -
registerDefaultListeners
void registerDefaultListeners()Registers the listeners the plugin always needs.
-