Skip to main content

Crate ruststream_amqp

Crate ruststream_amqp 

Source
Expand description

AMQP 1.0 broker implementation for RustStream.

One protocol crate for the whole AMQP 1.0 family: ActiveMQ Artemis, RabbitMQ 4.x (its AMQP 1.0 stack, distinct from the 0.9.1 protocol ruststream-lapin speaks), Azure Service Bus, and every other broker speaking the ISO-standard protocol. Handlers, routers, codecs, and middleware come from the framework; this crate supplies the transport over fe2o3-amqp.

  • Acknowledgement maps to protocol dispositions: ack accepts, nack(requeue = true) releases, nack(requeue = false) rejects (the broker’s dead-letter policy applies).
  • Request/reply is native: reply-to, correlation-id, and a dynamic receiver link.
  • Headers ride application-properties (well-known ones the properties section), so no envelope format is invented and non-Rust peers see plain AMQP messages.
  • Back-pressure is the protocol’s own credit-based flow control, surfaced as the AmqpAddress::credit prefetch.

Structs§

AmqpAddress
A subscription descriptor for an AMQP 1.0 address.
AmqpBroker
An AMQP 1.0 broker for the RustStream messaging framework.
AmqpMessage
A message delivered by an AmqpSubscriber.
AmqpPublish
The publish policy for AmqpPublisher: pure declaration, constructible anywhere, paired with the connected broker by the runtime after connect.
AmqpPublisher
Publishes messages to AMQP addresses, one sender link per address, attached lazily on the shared publisher session.
AmqpSubscriber
A subscription to one AMQP address; yields AmqpMessages.
ConnectedAmqpBroker
The typed witness that connect succeeded: holds the live connection directly.
Sasl
How the broker authenticates the connection, mapped onto the client’s SASL profiles.

Enums§

AmqpError
Errors returned by the AMQP 1.0 broker.
Settle
Delivery guarantee of a subscription.

Constants§

DEFAULT_CREDIT
Default protocol-level credit (prefetch) granted to a subscription.
PARTITION_KEY_HEADER
Header carrying the partition key, mapped onto the AMQP group-id property.