Class QueueDrivenEventManager

java.lang.Object
com.inductiveautomation.perspective.gateway.event.QueueDrivenEventManager
All Implemented Interfaces:
EventManager

public class QueueDrivenEventManager extends Object implements EventManager
  • Constructor Details

  • Method Details

    • subscribe

      @Nonnull public <E> EventManager.Subscription subscribe(@Nonnull Class<E> eventType, @Nonnull Consumer<E> eventConsumer)
      Description copied from interface: EventManager
      Create a subscription for the given event type. Events of this type will be delivered to the given consumer until the EventManager.Subscription.unsubscribe() method is called.
      Specified by:
      subscribe in interface EventManager
      Parameters:
      eventType - The type of event to subscribe to.
      eventConsumer - The listener which will be invoked with any events of the given type that are posted to this event manager. Consumer will always be invoked on the session's queue.
      Returns:
      A Subscription object that serves as an un-subscribe callback method.
    • post

      public <E> void post(@Nonnull E event)
      Description copied from interface: EventManager
      Post an event to all subscribers of the given event type. Subscribers will receive notification on-queue. If the calling thread is already executing on-queue, then delivery will happen synchronously, otherwise, this call will return immediately and notification will happen asynchronously on the execution queue.
      Specified by:
      post in interface EventManager
      Parameters:
      event - The event to post. The type of this object will determine which listeners are notified.
    • post

      public <E> void post(@Nonnull Class<E> eventType, @Nonnull E event)
      Description copied from interface: EventManager
      Post an event object and specify the precise type of listeners to deliver to. Useful for when you are posting a subclass or implementation of the type being listened to
      Specified by:
      post in interface EventManager