InMemoryTransport

A Transport inside one JVM with broker semantics: every consumer group on a topic receives each record, and the members of a group share them round-robin. Records go through their encoded form, so a bus over it exercises the same encode, decode and validation as one over Kafka or Redis.

Nothing is retained: a record published while a topic has no open receiver is dropped, and acknowledgement is a no-op. It suits tests and single-process setups that want the distributed code path. The local, object-passing buses (InMemoryCommandBus and the event buses) remain what local-first delivery uses.

Constructors

Link copied to clipboard
constructor()

Functions

Link copied to clipboard
open override fun open(group: String, topics: Set<String>): TransportReceiver

Joins consumer group on topics. Each call is one logical consumer: members of one group share the records, different groups each receive all of them.

Link copied to clipboard
open override fun send(message: TransportMessage): Mono<Void>

Publishes message to its topic. The returned Mono completes once the broker has accepted it.