Namespace PatternKit.Messaging.Reliability
Classes
- DeadLetterChannel<TPayload>
Captures failed or undeliverable messages with operational metadata and replay handoff support.
- DeadLetterChannel<TPayload>.Builder
Dead-letter channel fluent builder.
- DeadLetterMessage<TPayload>
Captured failed message with operational failure metadata.
- DeadLetterReplayResult<TPayload>
Replay handoff result for a dead-lettered message.
- GuaranteedDeliveryLease<TPayload>
A lease returned when a guaranteed-delivery message is received for processing.
- GuaranteedDeliveryQueue<TPayload>
Durable queue facade for the Guaranteed Delivery enterprise integration pattern.
- GuaranteedDeliveryRecord<TPayload>
Stored message record used by the Guaranteed Delivery pattern.
- IdempotencyClaim
Result returned when an idempotency key is claimed.
- IdempotentReceiverResult<TResult>
Result returned by an idempotent receiver.
- IdempotentReceiver<TPayload, TResult>
Decorates a message handler with idempotency-key claim, completion, and duplicate handling.
- IdempotentReceiver<TPayload, TResult>.Builder
Fluent builder for IdempotentReceiver<TPayload, TResult>.
- InMemoryDeadLetterStore<TPayload>
In-memory dead-letter store suitable for tests, samples, and embedded applications.
- InMemoryGuaranteedDeliveryStore<TPayload>
Thread-safe in-memory store for tests, demos, and single-process applications.
- InMemoryIdempotencyStore
Thread-safe in-memory idempotency store for tests, demos, and single-process applications.
- InMemoryIdempotencyStoreWithTtl
Thread-safe in-memory idempotency store with optional per-key TTL and periodic eviction.
- InMemoryOutboxStore<TPayload>
Thread-safe in-memory implementation of IOutboxStore<TPayload> for tests, demos, and single-process applications.
- InMemoryOutbox<TPayload>
Thread-safe in-memory outbox for tests, demos, and single-process applications.
- InboxProcessor<TPayload, TResult>
Inbox processor that applies an idempotent receiver around a message handler.
- MessageExpirationResult<TPayload>
Result returned by a message-expiration evaluation.
- MessageExpiration<TPayload>
Stamps and evaluates message expiration metadata so stale messages can be rejected before processing.
- MessageExpiration<TPayload>.Builder
Fluent builder for MessageExpiration<TPayload>.
- OutboxDispatcher<TPayload>
Pluggable dispatch loop helper for the Transactional Outbox pattern. Combines an IOutboxStore<TPayload> with an IOutboxDispatcher<TPayload> to provide a reusable relay loop.
- OutboxMessage<TPayload>
In-process outbox record that can be persisted by application code before dispatch.
- OutboxStoreExtensions
Convenience extension methods for IOutboxStore<TPayload>.
Interfaces
- IDeadLetterStore<TPayload>
Store abstraction for durable dead-letter records.
- IGuaranteedDeliveryStore<TPayload>
Backing store contract for guaranteed-delivery queues.
- IIdempotencyStore
Pluggable idempotency key store used by idempotent receivers and inbox processors.
- IIdempotencyStoreWithTtl
Extends IIdempotencyStore with optional per-key TTL and periodic eviction.
- IOutboxDispatcher<TPayload>
Dispatches outbox records to an application-owned transport, queue, or handler.
- IOutboxStore<TPayload>
Pluggable backing store for the Transactional Outbox pattern. Implement this interface to provide durable outbox storage (e.g., relational database, file system).
Enums
- DuplicateMessagePolicy
Defines how an idempotent receiver handles a duplicate idempotency key.
- GuaranteedDeliveryStatus
Status for a guaranteed-delivery record.
- IdempotencyEntryStatus
Describes the stored state of an idempotency key.
- IdempotentReceiverStatus
Describes the outcome of an idempotent receiver invocation.
- MissingIdempotencyKeyPolicy
Defines how an idempotent receiver handles messages without an idempotency key.
Delegates
- DeadLetterIdFactory<TPayload>
Creates a dead-letter id from the failed message and failure reason.
- IdempotentReceiver<TPayload, TResult>.KeySelector
Extracts an idempotency key from a message and context.
- IdempotentReceiver<TPayload, TResult>.MessageHandler
Async handler protected by the idempotent receiver.