Interface IMailboxMutationAuditTrail
- Namespace
- MailFathom.Application.Mail.Mutations.Audit
- Assembly
- MailFathom.Application.dll
Writes the durable history one finished mutation leaves behind.
public interface IMailboxMutationAuditTrail
Remarks
It is asked of every mutation that ends, and it decides for itself whether an entry is written: the record carries the answer that was resolved when it was opened, so the caller never has to read a setting the mutation already settled.
It fails no mutation for a reason of its own, and rolls nothing back. The change has already been made to somebody's mailbox by the time this is called, and a history that could undo it — or fail the operation that produced it — would be worse than a history with a hole in it. Every entry that does not get written is reported and counted where an operator can see it, and the mutation stands. The one thing that travels on is the caller's own cancellation, which is reported the same way before it is re-raised.
Methods
- RecordAsync(MailboxMutationRecord, MailFolderResolution, CancellationToken)
Appends the entry one terminal mutation record states, where the account's trail is on.