Package com.hammurapi.eventbus

Show UML class diagram
This package contains interfaces and classes which define event bus and provide foundation for implementations.

See:
          Description

Interface Summary
AbstractEventBus.DerivationEx<K> Helper interface for snapshot taking.
AbstractEventBus.Handle<E,P extends Comparable<P>,C,K> Event handle.
AbstractEventBus.Snapshot<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Interface to output bus structure for troubleshooting.
AbstractEventBus.StateSnapshot<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> This snapshot also outputs bus state.
AbstractEventBus.StoreEntry<E,P extends Comparable<P>,C,K> Store entry complements store handle to provide functionality of event handle.
Derivation<E,P extends Comparable<P>,C> Information about how conclusion was derived.
EventBus<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Event bus asynchronously dispatches events to registered handlers.
EventBus.Handle<E,P extends Comparable<P>,C> The primary purpose of Handle in the event bus is to be a synchronization object.
EventDispatchContext<E,P extends Comparable<P>,C,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Context of event dispatching.
EventDispatchJoinContext<E,P extends Comparable<P>,C,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>>  
EventHandler<E,P extends Comparable<P>,C,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Event handler.
EventHandlerBase<E,P extends Comparable<P>,C> Event handler base.
EventHandlerWrapper<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Wrapper interface.
EventStore<E,P extends Comparable<P>,C,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Store of events (working memory).
InferenceContext<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Context propagated through inference processing.
InferenceFilter<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Inference filter is used to accept or reject inference commands posted by handlers to prevent inference loops and infinite inference.
JavaBinder<E,C,K,H extends EventBus.Handle<E,Integer,C>,S extends EventStore<E,Integer,C,H,S>,B extends EventBus<E,Integer,C,K,H,S>,I extends C> Interface for binding Java classes with annotated methods to event bus.
JoinEventHandler<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Wrapper interface.
Matcher<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Implementations of this interface match handlers to events.
Matcher.HandlerManager<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Interface for live batch update of handlers.
Resettable Instances with handler methods which maintain state shall implement this method to reset state.
 

Class Summary
AbstractEventBus<E,P extends Comparable<P>,C,K,H extends AbstractEventBus.Handle<E,P,C,K>,S extends EventStore<E,P,C,H,S>> Event bus dispatches events to event handlers.
AbstractEventHandler<E,P extends Comparable<P>,C,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Base class for event handlers.
CompositeContext<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>>  
CompositeInferenceFilter<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Composite inference filter consists of several inference filters which are invoked one after another.
DerivationLoopFilter<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Discards post commands with derivation loops, i.e.
DispatchNetworkDotSnapshot<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Outputs dispatch network in DOT format.
DuplicatesFilter<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Discards post commands with events already present in event store.
EventDispatchJoinContextFilter<E,P extends Comparable<P>,C,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>>  
EventHandlerFilter<E,P extends Comparable<P>,C,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> This class delegates to another event handler.
EventHandlerWrapperFilter<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Wrapper interface.
HandleExtractor<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Extracts event from handle.
InferenceChainLengthFilter<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Discards events with length of inference chain greater than specified threshold, issues warning.
InferenceCommand<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Events posted by handlers are wrapped into instances of this class.
Introspector<E,C,K,H extends EventBus.Handle<E,Integer,C>,S extends EventStore<E,Integer,C,H,S>,B extends EventBus<E,Integer,C,K,H,S>> This class introspects instances passed to it and creates event handlers from classes annotated with Handler annotation.
IntrospectorBase<E,C> Base class for Introspector and compiler.
IntrospectorBase.IntrospectionResult<E,C>  
JavaBinderCompiler This class generates source code for Java binding class.
JavaBinderCompiler.ConvertersBundle  
JavaBinderCompiler.JavaExtractorEntry  
MappedHandlePredicate<T,P extends Comparable<P>,C,K,H extends EventBus.Handle<T,P,C>,S extends EventStore<T,P,C,H,S>>  
Mapper<E> Mapper maps events from one array to another.
MappingEventHandler<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> Handler which maps input tuples like {{E1, E2, E5}, {E4, E3}} to {E1, E2, E3, E4, E5}
PostCommand<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>>  
PredicateChainingMatcher<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>>  
PredicateCostCardinalityComparator<E,C> Comparator to sort join predicates.
PredicatedInferenceNode<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>>  
ReflectiveEventHandler<E,C,H extends EventBus.Handle<E,Integer,C>,S extends EventStore<E,Integer,C,H,S>>  
ReflectiveEventHandlerFactory<E,C,H extends EventBus.Handle<E,Integer,C>,S extends EventStore<E,Integer,C,H,S>> This class adds a single method to the base class - it creates predicate/handler pairs from
RemoveCommand<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>>  
RetractCommand<E,P extends Comparable<P>,C,K,H extends EventBus.Handle<E,P,C>,S extends EventStore<E,P,C,H,S>> This command is posted to execution when event is removed from the bus and there are remove handlers matching the event.
 

Enum Summary
EventHandlerBase.Mode Event handler mode.
InferencePolicy Inference policy defines how new events (conclusions) posted by handlers are dispatched.
 

Exception Summary
DispatchNetworkException This exception is thrown in the case of problems with constructing event dispatch network.
EventBusException  
EventDispatchException This exception is thrown in the case of problems dispatching event to handlers.
EventDispatchMultiCauseException This exception is thrown from Handle.join() in the case of multiple exceptions thrown during dispatching of the event to handlers.
 

Annotation Types Summary
Handler Annotation to mark reflective handler methods.
Observer Annotation to mark observer methods.
 

Package com.hammurapi.eventbus Description

This package contains interfaces and classes which define event bus and provide foundation for implementations.

See Also:
Event Bus page in Hammurapi Group Documentation Library