Interface IGuaranteedDeliveryStore<TPayload>
- Namespace
- PatternKit.Messaging.Reliability
- Assembly
- PatternKit.Core.dll
Backing store contract for guaranteed-delivery queues.
public interface IGuaranteedDeliveryStore<TPayload>
Type Parameters
TPayload
Methods
AcknowledgeAsync(string, CancellationToken)
ValueTask AcknowledgeAsync(string id, CancellationToken cancellationToken = default)
Parameters
idstringcancellationTokenCancellationToken
Returns
DeadLetterAsync(string, string?, CancellationToken)
ValueTask DeadLetterAsync(string id, string? error = null, CancellationToken cancellationToken = default)
Parameters
idstringerrorstringcancellationTokenCancellationToken
Returns
EnqueueAsync(Message<TPayload>, string?, DateTimeOffset?, CancellationToken)
ValueTask<GuaranteedDeliveryRecord<TPayload>> EnqueueAsync(Message<TPayload> message, string? id = null, DateTimeOffset? enqueuedAt = null, CancellationToken cancellationToken = default)
Parameters
messageMessage<TPayload>idstringenqueuedAtDateTimeOffset?cancellationTokenCancellationToken
Returns
- ValueTask<GuaranteedDeliveryRecord<TPayload>>
ReleaseAsync(string, string?, CancellationToken)
ValueTask ReleaseAsync(string id, string? error = null, CancellationToken cancellationToken = default)
Parameters
idstringerrorstringcancellationTokenCancellationToken
Returns
SnapshotAsync(CancellationToken)
ValueTask<IReadOnlyList<GuaranteedDeliveryRecord<TPayload>>> SnapshotAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
- ValueTask<IReadOnlyList<GuaranteedDeliveryRecord<TPayload>>>
TryLeaseAsync(TimeSpan, int, DateTimeOffset, CancellationToken)
ValueTask<GuaranteedDeliveryLease<TPayload>?> TryLeaseAsync(TimeSpan leaseDuration, int maxDeliveryAttempts, DateTimeOffset now, CancellationToken cancellationToken = default)
Parameters
leaseDurationTimeSpanmaxDeliveryAttemptsintnowDateTimeOffsetcancellationTokenCancellationToken
Returns
- ValueTask<GuaranteedDeliveryLease<TPayload>>