akka.event.japi
Class LookupEventBus<E,S,C>

java.lang.Object
  extended by akka.event.japi.LookupEventBus<E,S,C>
All Implemented Interfaces:
EventBus<E,S,C>

public abstract class LookupEventBus<E,S,C>
extends java.lang.Object
implements EventBus<E,S,C>

Java API: See documentation for LookupClassification E is the Event type S is the Subscriber type C is the Classifier type


Constructor Summary
LookupEventBus()
           
 
Method Summary
protected abstract  C classify(E event)
          Returns the Classifier associated with the given Event
protected abstract  int compareSubscribers(S a, S b)
          Provides a total ordering of Subscribers (think java.util.Comparator.compare)
protected abstract  int mapSize()
          This is a size hint for the number of Classifiers you expect to have (use powers of 2)
 void publish(E event)
          Publishes the specified Event to this bus
protected abstract  void publish(E event, S subscriber)
          Publishes the given Event to the given 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 Detail

LookupEventBus

public LookupEventBus()
Method Detail

mapSize

protected abstract int mapSize()
This is a size hint for the number of Classifiers you expect to have (use powers of 2)


compareSubscribers

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


classify

protected abstract C classify(E event)
Returns the Classifier associated with the given Event


publish

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


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>

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>