Interface EventManager


public interface EventManager
Manager for plugin event listener registration and lifecycle.

Preferred approach: Create a Listener class with @EventHandler annotated methods:


public class MyListener implements Listener {

    @EventHandler(priority = EventPriority.NORMAL)
    public void onMessage(MessageReceivedEvent event) {
        // Handle message
    }
}

// Register in your @Plugin class:
@OnEnable
public void onEnable(PluginContext context) {
    context.registerListener(new MyListener());
}

Plugins can also register typed PluginEventListener instances programmatically for more control.

  • Method Details

    • registerListener

      void registerListener(Listener listener, String pluginName)
      Registers all event handlers in a listener object. Methods annotated with EventHandler will be automatically registered.
      Parameters:
      listener - the listener object containing event handler methods
      pluginName - the name of the plugin registering the listener
    • registerEventListener

      <T extends net.dv8tion.jda.api.events.GenericEvent> void registerEventListener(PluginEventListener<T> listener, String pluginName)
      Registers a single typed event listener.
      Type Parameters:
      T - the event type
      Parameters:
      listener - the event listener
      pluginName - the name of the plugin registering the listener
    • unregisterListeners

      void unregisterListeners(String pluginName)
      Unregisters all listeners for a specific plugin.
      Parameters:
      pluginName - the name of the plugin
    • unregisterListener

      void unregisterListener(Listener listener)
      Unregisters a specific listener object.
      Parameters:
      listener - the listener to unregister
    • unregisterEventListener

      <T extends net.dv8tion.jda.api.events.GenericEvent> void unregisterEventListener(PluginEventListener<T> listener)
      Unregisters a specific typed event listener.
      Type Parameters:
      T - the event type
      Parameters:
      listener - the event listener to unregister
    • getListenerCount

      int getListenerCount(String pluginName)
      Gets the number of registered listeners for a plugin.
      Parameters:
      pluginName - the plugin name
      Returns:
      the number of registered listeners
    • getTotalHandlerCount

      int getTotalHandlerCount()
      Gets the total number of registered event handlers.
      Returns:
      the total number of event handlers