Class GuaranteedDeliveryQueue<TPayload>
- Namespace
- PatternKit.Messaging.Reliability
- Assembly
- PatternKit.Core.dll
Durable queue facade for the Guaranteed Delivery enterprise integration pattern.
public sealed class GuaranteedDeliveryQueue<TPayload>
Type Parameters
TPayload
- Inheritance
-
GuaranteedDeliveryQueue<TPayload>
- Inherited Members
Properties
LeaseDuration
public TimeSpan LeaseDuration { get; }
Property Value
MaxDeliveryAttempts
public int MaxDeliveryAttempts { get; }
Property Value
Name
public string Name { get; }
Property Value
Methods
AcknowledgeAsync(GuaranteedDeliveryLease<TPayload>, CancellationToken)
public ValueTask AcknowledgeAsync(GuaranteedDeliveryLease<TPayload> lease, CancellationToken cancellationToken = default)
Parameters
leaseGuaranteedDeliveryLease<TPayload>cancellationTokenCancellationToken
Returns
Create(IGuaranteedDeliveryStore<TPayload>)
public static GuaranteedDeliveryQueue<TPayload>.Builder Create(IGuaranteedDeliveryStore<TPayload> store)
Parameters
storeIGuaranteedDeliveryStore<TPayload>
Returns
- GuaranteedDeliveryQueue<TPayload>.Builder
DeadLetterAsync(GuaranteedDeliveryLease<TPayload>, string?, CancellationToken)
public ValueTask DeadLetterAsync(GuaranteedDeliveryLease<TPayload> lease, string? error = null, CancellationToken cancellationToken = default)
Parameters
leaseGuaranteedDeliveryLease<TPayload>errorstringcancellationTokenCancellationToken
Returns
EnqueueAsync(Message<TPayload>, string?, DateTimeOffset?, CancellationToken)
public 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(GuaranteedDeliveryLease<TPayload>, string?, CancellationToken)
public ValueTask ReleaseAsync(GuaranteedDeliveryLease<TPayload> lease, string? error = null, CancellationToken cancellationToken = default)
Parameters
leaseGuaranteedDeliveryLease<TPayload>errorstringcancellationTokenCancellationToken
Returns
SnapshotAsync(CancellationToken)
public ValueTask<IReadOnlyList<GuaranteedDeliveryRecord<TPayload>>> SnapshotAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
- ValueTask<IReadOnlyList<GuaranteedDeliveryRecord<TPayload>>>
TryReceiveAsync(CancellationToken)
public ValueTask<GuaranteedDeliveryLease<TPayload>?> TryReceiveAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
- ValueTask<GuaranteedDeliveryLease<TPayload>>