Class EventManager

java.lang.Object
com.tenio.common.logger.AbstractLogger
com.tenio.common.logger.SystemLogger
com.tenio.core.event.implement.EventManager

@NotThreadSafe public final class EventManager extends com.tenio.common.logger.SystemLogger
This class for managing events and these subscribers.
  • Method Details

    • newInstance

      public static EventManager newInstance()
    • emit

      public Object emit(ServerEvent event, Object... params)
      Emit an event with its parameters.
      Parameters:
      event - see ServerEvent
      params - a list parameters of this event
      Returns:
      the event result (the response of its subscribers), see Object or null
      See Also:
    • on

      public void on(ServerEvent event, Subscriber subscriber)
      Add a subscriber's handler.
      Parameters:
      event - see ServerEvent
      subscriber - see Subscriber
    • subscribe

      public void subscribe()
      Collect all subscribers and these corresponding events.
    • hasSubscriber

      public boolean hasSubscriber(ServerEvent event)
      Check if an event has any subscribers or not.
      Parameters:
      event - see ServerEvent
      Returns:
      true if an event has any subscribers
    • clear

      public void clear()
      Clear all subscribers and these corresponding events.