Package-level declarations
Types
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.
The topic that carries one kind of message of an aggregate on one backend. Topic names are frozen wire format: Kafka wow.<context>.<aggregate>.command, Redis <context>.<aggregate>:command, and likewise per kind.
A message broker as Wow uses it: strings in, strings out.
The distributed command bus over a Transport.
The receive stream's error for TransportDecodeFailureAction.FAIL. It names the record and the cause's type but carries neither the cause nor the payload, since a decoder's message can quote the payload.
A record that TransportMessageBus could not decode: its payload is missing or not a messageType, or its key or topic does not match the decoded message.
What the bus does with an undecodable record once TransportDecodeFailureHandler has seen it.
Decides what happens to a record the bus cannot decode. An error from handle fails the receive stream like TransportDecodeFailureAction.FAIL.
The distributed domain event bus over a Transport.
How a Transport reacts when its receive stream fails, the same for every backend.
A distributed message bus over a Transport: the one place that names topics, encodes and decodes messages, validates received records and builds exchanges, whatever the broker.
The consumer Transport.open returns.
A record whose payload decodes but whose key or topic does not match the decoded message: it was published under another aggregate's key or topic.
The distributed state event bus over a Transport.
Functions
This naming computed once per aggregate, which holds because a topic depends only on the context and aggregate names. At most maxAggregates aggregates are kept, so records naming arbitrary aggregates cannot grow it without bound; beyond that a topic is computed on every call.