LocalMessageBus

interface LocalMessageBus<M : Message<*, *>, E : MessageExchange<*, M>> : MessageBus<M, E>

A local message bus that operates within a single JVM instance.

This interface extends MessageBus and provides additional functionality for monitoring subscriber counts in a local context.

Type Parameters

M

The type of message being handled, must extend Message

E

The type of message exchange, must extend MessageExchange

Inheritors

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
abstract fun receive(subscription: MessageSubscription): Flux<E>

Receives messages for the specified subscription.

Link copied to clipboard
open fun receiver(subscription: MessageSubscription): MessageReceiver<E>

Creates a single message source with an explicit transport readiness boundary.

Link copied to clipboard

Creates the message source owned by a me.ahoo.wow.runtime.WowRuntime dispatcher.

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

Sends a message through the message bus.

Link copied to clipboard
open fun sendIfSubscribed(message: M): Mono<Boolean>

Attempts local delivery only while a processing subscriber is routable.

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

Returns the number of subscribers for the specified named aggregate.