public class EventDispatcher extends Object
Can be used in a reactive manner by calling on(Class)
giving the proper
Event
class as argument. Uses an underlying
FluxProcessor
that must be supplied on construction, as well as a
Scheduler
to define subscriber thread affinity.
Each event can be consumed using the following pattern:
dispatcher.on(MessageCreatedEvent.class) .subscribe(event -> event.getMessage());
Constructor and Description |
---|
EventDispatcher(FluxProcessor<Event,Event> processor,
Scheduler scheduler,
int shardIndex)
Creates a new event dispatcher using the given processor and thread model.
|
public EventDispatcher(FluxProcessor<Event,Event> processor, Scheduler scheduler, int shardIndex)
processor
- a FluxProcessor of Event types, used to bridge gateway events to the dispatcher subscribersscheduler
- a Scheduler to ensure a certain thread model on each published signalshardIndex
- the shard ID for logger name purposes