Enum MailOutboxDeliveryOutcome
- Namespace
- MailFathom.Application.Mail.Delivery.Outbox
- Assembly
- MailFathom.Application.dll
States how one delivery attempt ended, as the outcomes an operator and a pass act on differently.
public enum MailOutboxDeliveryOutcome
Fields
Deferred = 2Nothing was transmitted, and the send is claimable again once its backoff has passed.
LeaseLost = 5The record had moved on to a later attempt, so this one recorded nothing about it.
MissedItsDueTime = 7The send was written for a time that had passed by further than this deployment delivers late, so nothing was transmitted.
The record ends refused, because nothing offers the message again, and the ending is reported separately because nobody refused anything: the message is intact, its recipients are reachable, and what stopped it is a bound the deployment set. That is the one refusal an operator answers by sending the message themselves, which is why it must not read as a provider that would not take it.
NotRecorded = 6The attempt ended and nothing about it could be written down, so the record stands where the failed write left it.
It is the outcome of a store that would not take the answer rather than of a server that would not take the message, which is why it is not any of the five above: what the send is owed next cannot be read off it, and only the lease running out makes the record claimable again. It is separate from LeaseLost because there the write was refused for a reason — a later attempt owns the record — and here it was not refused at all.
OutcomeUnknown = 3The message went out and the server's answer never came back, so the send waits for a person.
Refused = 1Nothing offers the message again, and the reason is on the record.
It covers a permanent refusal and a send that spent every attempt it was allowed.
ReleasedForShutdown = 4The host stopped before anything was transmitted, so the send was given back holding no attempt.
Sent = 0The server acknowledged the message, and every address it had accepted is settled.
Remarks
The set separates the endings by what happens next rather than by what went wrong. A send that will be attempted again, a send nothing will attempt again, and a send whose fate nobody knows are three different things to whoever is waiting for the message, and collapsing any two of them would hide the one case that needs a person.