Table of Contents

Enum MailDraftCopyStage

Namespace
MailFathom.Domain.Delivery.Drafts
Assembly
MailFathom.Domain.dll

States what has become of one copy of a draft that MailFathom appended to the drafts folder.

public enum MailDraftCopyStage

Fields

Abandoned = 3

The copy can no longer be shown to be the one MailFathom appended, so it is left as the owner's.

This is where every divergence lands. What it says is that nothing will touch the copy again — not that the folder no longer holds it — which is the only honest answer once the occurrence stopped being identifiable.

Issued = 0

The append has begun and the server's answer to it has not been read.

A copy left here by a stopped process may or may not be in the folder, and it is never appended again: an APPEND issued twice is a second draft in the owner's folder rather than a repeat of the first. It is also never withdrawn, because nothing names it.

Standing = 1

The server accepted the append, and the folder holds the copy as far as MailFathom knows.

Withdrawn = 2

MailFathom took the copy back out of the folder.

Remarks

It is a stage of its own rather than the one a filed outgoing copy uses, because a draft copy can end in a way a filed copy cannot. A sent copy is appended once and kept; a draft copy is appended, replaced, and taken back out, and the taking out can fail in a way that leaves the copy standing in somebody's folder with nothing left able to name it. Abandoned is that ending, and reporting it as Withdrawn would be MailFathom stating that a message it can no longer reach is gone.

The stage is stored as its name, so an ad-hoc audit query stays readable and a later reordering of this enum changes nothing about a database already written.