Table of Contents

Class DeadLetteredJobs

Namespace
MailFathom.Application.Jobs.DeadLetters
Assembly
MailFathom.Application.dll

The three things an operator does about background work that stopped: read it, run one again, or drop one.

public sealed class DeadLetteredJobs
Inheritance
DeadLetteredJobs
Inherited Members

Remarks

The store keeps the rows and is written by the queue itself; this is what an operator reaches, and it exists so that the grant is asked where the decision is made rather than only at the routes serving it today. Reading what stopped reports the deployment's own state, while returning a job to the queue makes it run again — against somebody's mailbox, under the identity the row already carries — so the two are published under different grants and a credential provisioned to watch a queue cannot act on it.

Neither decision performs the work. A retry writes the row back to a state the next worker claims from, and a drop records that nothing will, which is why both answer immediately whatever the job was about.

Constructors

DeadLetteredJobs(IDeadLetteredJobStore, AccessAuthorization)

Initializes the operations over the dead-letter store.

Methods

DropAsync(JobId, CancellationToken)

Records that one dead letter will never be run.

ReadPageAsync(DeadLetteredJobQuery, CancellationToken)

Reads one page of the jobs nothing will attempt again.

RetryAsync(JobId, CancellationToken)

Returns one dead letter to the queue, to be run again under the identity it already carries.