All Classes and Interfaces

Class
Description
Base unchecked exception for all BabelQueue failures.
The additive block appended to an Envelope when a message is dead-lettered.
Builds the additive dead_letter block for an Envelope.
The canonical BabelQueue wire message: a strict, language-neutral JSON shape ({job, trace_id, data, meta, attempts}) that every SDK produces and consumes identically — no language-specific serialization on the wire.
Builds, encodes and decodes the canonical BabelQueue envelope — the single Java implementation of the wire format.
A consume handler: processes one decoded Envelope.
Optionally implemented alongside PolyglotMessage to continue an existing distributed trace instead of minting a fresh one.
The produce-side out-of-band header seam for Tracing.publish(io.opentelemetry.api.trace.Tracer, String, java.util.Map, String, HeaderSender) — a Sender that also receives a Map<String, String> of out-of-band transport headers to carry beside the frozen envelope (GR-1), never inside it.
Wraps a Handler so a message whose meta.id was already processed successfully is skipped instead of run again (ADR-0022) — the Java mirror of the PHP Idempotent::wrap, Go idempotency.Wrap, Python wrap, and Node Wrap helpers.
Process-local reference OutboxStore backed by a map — for tests and single-process demos.
Process-local, thread-safe Store backed by a concurrent set.
Raised when a message's data does not match the JSON Schema registered for its URN (ADR-0024).
In-memory SchemaProvider, for tests and for embedding schemas in code.
The immutable per-message metadata block of a Envelope.
The write side of the transactional outbox (ADR-0029): turn a BabelQueue Envelope into a stored outbox row, so the message is persisted atomically with the business data and a separate OutboxRelay publishes it later.
One pending row read back from an OutboxStore for the OutboxRelay to publish.
The read/publish side of the transactional outbox (ADR-0029): drain pending rows the Outbox writer committed and forward each onto the broker through the OutboxTransport seam, marking every row published or failed.
Sleeps for a number of milliseconds between a failed publish and the next attempt.
Summary of an OutboxRelay run: how many pending rows were published and how many failed (and were left pending for a later retry).
The persistence seam for the transactional outbox (ADR-0029) — the durable "outbox" table that an Outbox writer fills and an OutboxRelay drains.
The minimal publish-only broker seam the OutboxRelay forwards through — publish one already-encoded envelope onto a queue.
Validates a message's data block against a per-URN JSON Schema (ADR-0024).
A message that can be produced as a polyglot envelope.
DLQ redrive tooling — safe replay off the dead-letter queue (ADR-0026).
An optional Redrive.Transport capability: publish a body together with out-of-band transport headers (e.g.
A reserved DLQ message: its raw body, a transport-specific handle used to ack it, and any out-of-band transport headers (e.g.
The minimal transport surface Redrive.redrive(com.babelqueue.Redrive.Transport, java.lang.String, com.babelqueue.Redrive.Options) needs, implemented over any broker.
Replay-Bypass — a side-effect guard for DLQ replay (ADR-0027).
An action that may throw — the external side of a handler.
A source of per-URN data schemas, keyed on the message URN (ADR-0024).
Optional per-URN data schema validation for a babelqueue producer or consumer (ADR-0024).
A pluggable record of message ids that have already been processed, keyed on the envelope's meta.id.
Optional OpenTelemetry tracing for a babelqueue producer or consumer — the Java mirror of the Go babelqueue-go/otel, Python babelqueue.otel and Node @babelqueue/core/otel helpers.
Raised when no handler is mapped for a message URN.
What a consumer does with a message whose URN has no registered handler.