Class AuthoredMailDrafting
- Namespace
- MailFathom.Application.Mail.Delivery.Drafts
- Assembly
- MailFathom.Application.dll
Takes a message somebody wrote and holds it as a draft, which is the whole of what asking to draft does.
public sealed class AuthoredMailDrafting
- Inheritance
-
AuthoredMailDrafting
- Inherited Members
Remarks
It is the sibling of AuthoredMailSubmission and composes the same three steps in the same order: the account a caller named is resolved against the accounts this deployment serves, the people named become addresses, and the addresses and the text become MIME. What replaces the outbox at the end is the draft book, which stores the message instead of queueing it.
Nothing here transmits, and nothing here can. The use case holds no delivery session and no factory for one, exactly as the submission does not — and unlike the submission it leaves nothing a delivery pass will ever claim. A draft leaves this deployment only when somebody asks for it to, through the promotion.
The message is composed against BeforeAnyServerHasSpoken for the reason a send is, and more plainly: a draft may never be sent at all, so there is no server to ask and the composition is held to what stays correct whatever a server would turn out to say. What that server does decide is asked again where the promotion writes the send.
Constructors
- AuthoredMailDrafting(IMailAccountCatalog, NamedRecipientResolver, IAuthoredEmailComposer, MailDraftBook, AccessAuthorization)
Takes a message somebody wrote and holds it as a draft, which is the whole of what asking to draft does.
Methods
- SaveAsync(MailDraftRequest, CancellationToken)
Holds one message as a draft, or refuses it naming what the caller has to change.