Skip to main content

Crate ruststream_sqs_sns

Crate ruststream_sqs_sns 

Source
Expand description

Amazon SQS broker implementation for RustStream, with SNS fan-out publishing.

Handlers, routers, codecs, and middleware come from the framework; this crate supplies the transport over the official aws-sdk-sqs and aws-sdk-sns clients.

  • Deleting a message is the acknowledgement, zeroing its visibility is the requeue, and a retry with a delay sets the visibility timeout to that delay - the framework’s deferred retry is native, not emulated.
  • A handler outliving the visibility timeout is protected by crate-owned background extension for as long as it holds the message.
  • The queue’s redrive policy provides dead-lettering; FIFO message group ids map onto the partition key.
  • SNS appears only as a publisher (fan-out to queues and other endpoints), as a distinct SnsPublish policy.

Structs§

ConnectedSqsBroker
The typed witness that connect succeeded: holds the live SDK clients directly.
SnsPublish
The publish policy for SnsPublisher: names the SNS fan-out mode as a distinct policy type, so direct queue publishing and topic fan-out never mix silently.
SnsPublisher
Publishes notifications to SNS topics for fan-out (the destination is a topic name or ARN; names resolve through the idempotent CreateTopic).
SqsBroker
An Amazon SQS broker (with SNS fan-out publishing) for the RustStream messaging framework.
SqsMessage
A message delivered by an SqsSubscriber.
SqsPublish
The publish policy for SqsPublisher: pure declaration, constructible anywhere, paired with the connected broker by the runtime after connect.
SqsPublisher
Publishes messages directly to SQS queues (name or URL as the destination).
SqsQueue
A subscription descriptor for one SQS queue.
SqsSubscriber
A subscription to one SQS queue; yields SqsMessages.

Enums§

SqsError
Errors returned by the Amazon SQS/SNS broker.

Constants§

PARTITION_KEY_HEADER
Header carrying the partition key, mapped onto the FIFO message group id.
RECEIVE_COUNT_HEADER
Header exposing the approximate receive count on received messages.