Class EventBusRegistry<KeyType, EventType extends IBaseEvent<KeyType>, ConsumerMapType extends EventBusRegistry.EventConsumerMap<EventType, ?, ?>>

java.lang.Object
com.hypixel.hytale.event.EventBusRegistry<KeyType, EventType, ConsumerMapType>
Type Parameters:
KeyType - The key type filter for this event call.
EventType - The event type.
ConsumerMapType - The consumer map type.
Direct Known Subclasses:
AsyncEventBusRegistry, SyncEventBusRegistry

public abstract class EventBusRegistry<KeyType, EventType extends IBaseEvent<KeyType>, ConsumerMapType extends EventBusRegistry.EventConsumerMap<EventType, ?, ?>> extends Object
The base event bus registry for managing event consumers and dispatching events.
  • Constructor Details

  • Method Details

    • getEventClass

      @Nonnull public Class<EventType> getEventClass()
      Returns:
      the event class for this event bus registry.
    • isTimeEvents

      public boolean isTimeEvents()
      Returns:
      true if events are timed, false otherwise.
    • setTimeEvents

      public void setTimeEvents(boolean timeEvents)
      Called to set whether to time events dispatched through this registry.
      Parameters:
      timeEvents - Whether to time events.
    • shutdown

      public void shutdown()
      Called to shut down this event bus registry.
    • isAlive

      public boolean isAlive()
      Returns:
      true if this event bus registry is alive, false otherwise.
    • register

      public abstract EventRegistration<KeyType, EventType> register(short priority, @Nullable KeyType key, @Nonnull Consumer<EventType> consumer)
      Called to register an event consumer.
      Parameters:
      priority - The priority of the consumer.
      key - The key to filter events by.
      consumer - The event consumer.
      Returns:
      the event registration.
    • registerGlobal

      public abstract EventRegistration<KeyType, EventType> registerGlobal(short priority, @Nonnull Consumer<EventType> consumer)
      Called to register a global event consumer.
      Parameters:
      priority - The priority of the consumer.
      consumer - The event consumer.
      Returns:
      the event registration.
    • registerUnhandled

      public abstract EventRegistration<KeyType, EventType> registerUnhandled(short priority, @Nonnull Consumer<EventType> consumer)
      Called to register an unhandled event consumer.
      Parameters:
      priority - The priority of the consumer.
      consumer - The event consumer.
      Returns:
      the event registration.
    • dispatchFor

      public abstract IEventDispatcher<EventType, ?> dispatchFor(KeyType key)
      Called to get an event dispatcher for the specified key.
      Parameters:
      key - The key to filter events by.
      Returns:
      the event dispatcher.