Method RequeueAsync
- Namespace
- MailFathom.Application.Mail.Delivery.Operations
- Assembly
- MailFathom.Application.dll
RequeueAsync(OutgoingEmailId, bool, CancellationToken)
Offers one send again, which is the decision the system deliberately will not take on its own.
public Task<OutboxDecisionOutcome> RequeueAsync(OutgoingEmailId outgoingEmailId, bool refusalRestated, CancellationToken cancellationToken)
Parameters
outgoingEmailIdOutgoingEmailIdThe send to offer again.
refusalRestatedboolWhether the caller has restated a permanent refusal, which a refused send needs before it is offered again.
cancellationTokenCancellationTokenCancels the write.
Returns
- Task<OutboxDecisionOutcome>
What became of the send, including that it was not one this deployment holds or had already moved on.
Remarks
A send whose transmission was never answered may already be in somebody's mailbox, and offering it again may put a second copy there. Nothing in this system will decide that, which is why the record stays where it is until an operator says so — and why this is an act on one named send rather than anything that can be asked for in bulk.
Exceptions
- PrincipalNotAuthorizedException
Thrown when the use case was reached by anything but a caller granted AdminOperate.
- OperationCanceledException
Thrown when the caller cancels.