Class MailDraftRequest
- Namespace
- MailFathom.Application.Mail.Delivery.Drafts
- Assembly
- MailFathom.Application.dll
States one draft somebody asked this deployment to hold, in the terms they wrote it in.
public sealed record MailDraftRequest : IEquatable<MailDraftRequest>
- Inheritance
-
MailDraftRequest
- Implements
- Inherited Members
Remarks
It is MailSubmissionRequest with two differences and no others, which is what keeps a draft a message rather than a second kind of thing. The recipients may be nobody, because writing the message before deciding who reads it is what a draft is for; and it may name the draft it replaces, because editing is the whole of what a draft has that a send does not.
There is no sending address here, for the reason there is none on a submission: the account is named and the address it writes as comes from that account's own configuration.
The author is provenance rather than an idempotency identity. Asking twice for a draft leaves two drafts, which costs an owner a deletion rather than a recipient a second message, so nothing here is enforced by a unique index.
Properties
- Account
Gets the account the draft belongs to, named as a caller names one.
- Author
Gets the authored act writing the draft down.
- PlainTextBody
Gets the plain-text body the author wrote, which every stored draft carries.
- Recipients
Gets the people the draft is addressed to, which may be nobody.
- Subject
Gets the subject line the author wrote.