LocalCommandBus

Local Command Bus interface for handling commands within the same JVM instance.

This interface extends both CommandBus and LocalMessageBus, providing synchronous command processing capabilities within a single application instance. Commands are processed locally without network communication.

See also

Inheritors

Properties

Link copied to clipboard
open override val topicKind: TopicKind

The topic kind for command messages, always returns TopicKind.COMMAND

Functions

Link copied to clipboard
open override fun close()

Closes the message bus and releases any resources. Default implementation does nothing.

Link copied to clipboard

Wraps a LocalCommandBus with metrics collection capabilities. Returns a MetricLocalCommandBus that collects metrics on command operations.

Link copied to clipboard
abstract fun receive(namedAggregates: Set<NamedAggregate>): Flux<ServerCommandExchange<*>>

Receives messages for the specified named aggregates.

Link copied to clipboard
abstract fun send(message: CommandMessage<*>): Mono<Void>

Sends a message through the message bus.

Link copied to clipboard
abstract fun subscriberCount(namedAggregate: NamedAggregate): Int

Returns the number of subscribers for the specified named aggregate.