SnapshotDispatcher

class SnapshotDispatcher(val name: String, val namedAggregates: Set<NamedAggregate> = MetadataSearcher.namedAggregateType.keys.toSet(), snapshotHandler: SnapshotHandler, stateEventBus: StateEventBus, parallelism: Int = MessageParallelism.DEFAULT_PARALLELISM, schedulerSupplier: AggregateSchedulerSupplier = DefaultAggregateSchedulerSupplier(SNAPSHOT_PROCESSOR_NAME)) : AbstractDispatcher<StateEventExchange<*>> , MessageDispatcher

Constructors

Link copied to clipboard
constructor(name: String, namedAggregates: Set<NamedAggregate> = MetadataSearcher.namedAggregateType.keys.toSet(), snapshotHandler: SnapshotHandler, stateEventBus: StateEventBus, parallelism: Int = MessageParallelism.DEFAULT_PARALLELISM, schedulerSupplier: AggregateSchedulerSupplier = DefaultAggregateSchedulerSupplier(SNAPSHOT_PROCESSOR_NAME))

Properties

Link copied to clipboard
open override val name: String

named like applicationName.SnapshotDispatcher

Functions

Link copied to clipboard
open override fun close()

Closes the dispatcher and all its aggregate dispatchers.

Link copied to clipboard
open override fun newAggregateDispatcher(namedAggregate: NamedAggregate, messageFlux: Flux<StateEventExchange<*>>): MessageDispatcher

Creates a new message dispatcher for a specific named aggregate.

Link copied to clipboard
open override fun receiveMessage(namedAggregate: NamedAggregate): Flux<StateEventExchange<*>>

Creates a flux of messages for the specified named aggregate.

Link copied to clipboard
open override fun run()

Starts the dispatcher by running all aggregate dispatchers.