event library

Classes

ConcreteEvent<E>
A concrete event is the originating event in a call. So generally, this is the event that gets processed at the level where the event originated.
Event<E>
An event is the basic way we pass data into the system to solicit a response.
InterstateEvent<E>
An InterstateEvent wraps another event as it travels DOWN the tree. So the originating event is a ConcreteEvent. If that event should propagate down, we wrap it in an InterstateEvent. This allows for a paper trail as the event travels, and it allows us to figure out if a particular Interstate has processed an event or not.