T - event implementation storing the data for sharing during exchange or parallel coordination of an event.public final class AggregateEventHandler<T> extends java.lang.Object implements EventHandler<T>, LifecycleAware
EventHandlers that get called in sequence for each event.| Constructor and Description |
|---|
AggregateEventHandler(EventHandler<T>... eventHandlers)
Construct an aggregate collection of
EventHandlers to be called in sequence. |
| Modifier and Type | Method and Description |
|---|---|
void |
onEvent(T event,
long sequence,
boolean endOfBatch)
Called when a publisher has published an event to the
RingBuffer. |
void |
onShutdown()
Called once just before the thread is shutdown.
|
void |
onStart()
Called once on thread start before first event is available.
|
@SafeVarargs public AggregateEventHandler(EventHandler<T>... eventHandlers)
EventHandlers to be called in sequence.eventHandlers - to be called in sequence.public void onEvent(T event, long sequence, boolean endOfBatch) throws java.lang.Exception
EventHandlerRingBuffer. The BatchEventProcessor will
read messages from the RingBuffer in batches, where a batch is all of the events available to be
processed without having to wait for any new event to arrive. This can be useful for event handlers that need
to do slower operations like I/O as they can group together the data from multiple events into a single
operation. Implementations should ensure that the operation is always performed when endOfBatch is true as
the time between that message an the next one is inderminate.onEvent in interface EventHandler<T>event - published to the RingBuffersequence - of the event being processedendOfBatch - flag to indicate if this is the last event in a batch from the RingBufferjava.lang.Exception - if the EventHandler would like the exception handled further up the chain.public void onStart()
LifecycleAwareonStart in interface LifecycleAwarepublic void onShutdown()
LifecycleAwareCalled once just before the thread is shutdown.
Sequence event processing will already have stopped before this method is called. No events will be processed after this message.
onShutdown in interface LifecycleAwareCopyright © 2011 - 2018 LMAX Ltd. All Rights Reserved.