Class ScanningEventBus<E,S,C>

java.lang.Object
org.apache.pekko.event.japi.ScanningEventBus<E,S,C>
All Implemented Interfaces:
EventBus<E,S,C>

public abstract class ScanningEventBus<E,S,C> extends Object implements EventBus<E,S,C>
Java API: See documentation for pekko.event.ScanningClassification E is the Event type S is the Subscriber type C is the Classifier type
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected abstract int
    Provides a total ordering of Classifiers (think java.util.Comparator.compare)
    protected abstract int
    Provides a total ordering of Subscribers (think java.util.Comparator.compare)
    protected abstract boolean
    matches(C classifier, E event)
    Returns whether the specified Classifier matches the specified Event
    void
    publish(E event)
    Publishes the specified Event to this bus
    protected abstract void
    publish(E event, S subscriber)
    Publishes the specified Event to the specified Subscriber
    boolean
    subscribe(S subscriber, C to)
    Attempts to register the subscriber to the specified Classifier
    void
    unsubscribe(S subscriber)
    Attempts to deregister the subscriber from all Classifiers it may be subscribed to
    boolean
    unsubscribe(S subscriber, C from)
    Attempts to deregister the subscriber from the specified Classifier

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ScanningEventBus

      public ScanningEventBus()
  • Method Details

    • compareClassifiers

      protected abstract int compareClassifiers(C a, C b)
      Provides a total ordering of Classifiers (think java.util.Comparator.compare)
    • compareSubscribers

      protected abstract int compareSubscribers(S a, S b)
      Provides a total ordering of Subscribers (think java.util.Comparator.compare)
    • matches

      protected abstract boolean matches(C classifier, E event)
      Returns whether the specified Classifier matches the specified Event
    • publish

      protected abstract void publish(E event, S subscriber)
      Publishes the specified Event to the specified Subscriber
    • publish

      public void publish(E event)
      Description copied from interface: EventBus
      Publishes the specified Event to this bus
      Specified by:
      publish in interface EventBus<E,S,C>
    • subscribe

      public boolean subscribe(S subscriber, C to)
      Description copied from interface: EventBus
      Attempts to register the subscriber to the specified Classifier
      Specified by:
      subscribe in interface EventBus<E,S,C>
      Returns:
      true if successful and false if not (because it was already subscribed to that Classifier, or otherwise)
    • unsubscribe

      public boolean unsubscribe(S subscriber, C from)
      Description copied from interface: EventBus
      Attempts to deregister the subscriber from the specified Classifier
      Specified by:
      unsubscribe in interface EventBus<E,S,C>
      Returns:
      true if successful and false if not (because it wasn't subscribed to that Classifier, or otherwise)
    • unsubscribe

      public void unsubscribe(S subscriber)
      Description copied from interface: EventBus
      Attempts to deregister the subscriber from all Classifiers it may be subscribed to
      Specified by:
      unsubscribe in interface EventBus<E,S,C>