AggregateCommandDispatcher

constructor(name: String = "-", aggregateMetadata: AggregateMetadata<C, S>, messageFlux: Flux<ServerCommandExchange<*>>, parallelism: Int = MessageParallelism.DEFAULT_PARALLELISM, commandHandler: CommandHandler, scheduler: Scheduler, messageReadiness: Mono<Void> = Mono.empty(), processingAdmission: () -> Unit = {}, processingQuiescence: () -> Unit = {})

Parameters

name

The name of this dispatcher.

messageFlux

The flux of command exchanges to process.

parallelism

The level of parallelism for message processing.

commandHandler

The command handler for processing commands.

scheduler

The scheduler for handling messages.

messageReadiness

Completion of asynchronous message-source setup when this dispatcher is registered directly with a runtime.

processingAdmission

Explicit transport-processing gate opened by start.

processingQuiescence

Logical transport gate closed by quiesce.

Type Parameters

C

The type of the command aggregate root.

S

The type of the state aggregate.