Class AuthoredMailFlagChange
- Namespace
- MailFathom.Application.Mail.Mutations.Authoring
- Assembly
- MailFathom.Application.dll
One caller's request to write \Seen, \Flagged, or keywords onto one email this deployment holds.
public sealed record AuthoredMailFlagChange : IEquatable<AuthoredMailFlagChange>
- Inheritance
-
AuthoredMailFlagChange
- Implements
- Inherited Members
Remarks
The three values travel in one request because they are one act against one message: a caller triaging mail decides all of it at once, and a server writes each with the same command against the same UID. What it is not is one mutation — each value asked for becomes a durable record of its own, because that is the unit convergence resumes, abandons, and attributes an observation back to.
Every field is optional and the whole request is refused when they all are, which is the one invariant this type enforces. A call that named an email and asked for nothing is a client mistake rather than a change of nothing, and answering it as a success would report a record identity nothing wrote.
Properties
- KeywordDirection
Gets what the caller wants done with the keywords it listed, or null to leave them alone.
- StoredEmailId
Gets the email the change is asked for, as a listing or a search returned it.
Methods
- Create(StoredEmailId, bool?, bool?, MailKeywordChangeDirection?, IReadOnlyList<string>?)
Reads one request, refusing anything that does not state a change a server could be asked for.
- Mutations()
Names every mutation this request asks for, in the order they are recorded.