Class EventManager

java.lang.Object
org.polyfrost.oneconfig.api.event.v1.EventManager

public final class EventManager extends Object
Manages all events from OneConfig
  • Field Details

  • Method Details

    • register

      public static <E extends Event> EventHandler<E> register(Class<E> cls, Consumer<E> handler)
      Convenience method for registering an event handler
      Equal to INSTANCE.register(EventHandler.of(Class, Consumer))
    • register

      public static <E extends Event> EventHandler<E> register(Class<E> cls, Runnable handler)
    • register

      public static <E extends Event> EventHandler<E> register(kotlin.reflect.KClass<E> cls, Consumer<E> handler)
      Convenience method for registering an event handler
      Equal to INSTANCE.register(EventHandler.of(Class, Consumer))
    • getRegisteredHandlersDebugTable

      public String getRegisteredHandlersDebugTable()
    • register

      public void register(Object object)
      Registers an object to the event manager

      Set removable to true if you want to unregister these events later

      Parameters:
      object - The object to register
    • register

      public void register(Object object, boolean removable)
      Register an object to the event manager
      Parameters:
      removable - whether this object's event handlers can be removed
    • register

      @SafeVarargs public final void register(EventHandler<? extends Event>... handlers)
    • register

      public void register(EventHandler<?> handler)
      Register an event handler
      Parameters:
      handler - The handler to register
      Throws:
      IllegalArgumentException - if the handler's event class is not a concrete, postable event type
    • unregister

      @SafeVarargs public final void unregister(EventHandler<? extends Event>... handlers)
    • unregister

      public boolean unregister(EventHandler<?> handler)
    • unregister

      public boolean unregister(Object object)
      Remove the event handlers that were provided by the given object
      This method only works if the object was registered with removable true
    • registerCollector

      public void registerCollector(EventCollector collector)
    • post

      public <E extends Event> void post(E event)
      Posts an event to any registered listeners
      Parameters:
      event - The event to post