Skip to main content

Module message_assembler

Module message_assembler 

Source
Expand description

Protocol-level message assembly hooks.

A MessageAssembler parses protocol-specific frame headers to distinguish “first” frames from “continuation” frames. The hook operates above transport fragmentation and feeds the streaming request pipeline once the connection actor integrates it (see ADR 0002).

§Message key multiplexing (8.2.3)

The MessageAssemblyState type manages multiple concurrent assemblies keyed by MessageKey, enabling interleaved frame streams from different logical messages on the same connection.

§Continuity validation (8.2.4)

The MessageSeries type validates frame ordering when protocols supply sequence numbers via ContinuationFrameHeader::sequence. It detects:

  • Out-of-order frames (sequence gaps)
  • Duplicate frames (already-processed sequences)
  • Frames arriving after the series is complete

Re-exports§

pub use error::MessageAssemblyError;
pub use error::MessageSeriesError;
pub use error::MessageSeriesStatus;
pub use series::MessageSeries;
pub use state::MessageAssemblyState;
pub use types::AssembledMessage;
pub use types::CorrelationId;
pub use types::EnvelopeId;
pub use types::EnvelopeRouting;
pub use types::FirstFrameInput;
pub use types::FirstFrameInputError;

Modules§

error
Error and status types for protocol-level message assembly.
series
Ordering tracker for protocol-level message frame series.
state
Stateful tracker for multiple concurrent message assemblies.
types
Public types for message assembly inputs and outputs.

Structs§

ContinuationFrameHeader
Header metadata for continuation frames.
FirstFrameHeader
Header metadata for the first frame in a message series.
FrameSequence
Optional sequence number for continuation frames.
MessageKey
Identifies a logical message being assembled from multiple frames.
ParsedFrameHeader
Result of parsing a frame header from payload bytes.

Enums§

FrameHeader
Parsed per-frame header information.

Traits§

MessageAssembler
Hook trait for protocol-specific multi-frame request parsing.