Class OutgoingMailFilingRecord
- Namespace
- MailFathom.Domain.Delivery.Filing
- Assembly
- MailFathom.Domain.dll
Reports one copy of an outgoing message MailFathom put into a folder, and what has become of it since.
public sealed record OutgoingMailFilingRecord : IEquatable<OutgoingMailFilingRecord>
- Inheritance
-
OutgoingMailFilingRecord
- Implements
- Inherited Members
Remarks
It hangs off the outgoing record rather than standing on its own, because the outgoing record is what an operator,
mfctl, and the MCP surface already read as the truth about a message MailFathom is sending. A filing is one
more thing that record says about it — where a copy of it is — and reading provenance through the same record is
what keeps this from being a second mechanism beside the one mutations already use.
The copy comes back through synchronization as ordinary new mail, and this is the whole of what tells it apart from
somebody else's message. Where the server advertises UIDPLUS the APPENDUID response names the
occurrence exactly and AccountsForPlacementAt(RemoteFolderPath, ImapUidValidity, ImapUid) is the join; where it does not,
AccountsForMessageAt(RemoteFolderPath, string?) falls back to the identity the message carries in its own headers, which is the
nearest thing to a fact available once the server has declined to say where it put the copy.
Nothing here is mail content. A folder, an alias, a UID, and a message identity MailFathom minted itself are its own or the server's names for things, which is what lets the row be written and read without the message.
Properties
- AppendedAt
Gets when the append was issued.
- Filing
Gets which place in the mailbox this copy was filed into.
- FolderAlias
Gets MailFathom's own name for the folder the copy went into, which is what a failure and a log line name.
- FolderPath
Gets the remote path the copy was appended to, which is what the join compares a discovery against.
- HasUnknownOutcome
Gets whether the append went out and the server's answer to it never came back.
- InternetMessageId
Gets the
Message-IDthe appended copy carries, or null while none was read.
- IsStanding
Gets whether this copy is still in the folder as far as MailFathom knows.
- ObservedAt
Gets when synchronization recognized the copy, or null while it has not.
- OutgoingEmailId
Gets the outgoing record this copy was filed from.
- Placement
Gets where the folder put the copy, as far as the server said.
- Stage
Gets how far the append has durably got.
- WithdrawnAt
Gets when the copy was taken back out of the folder, or null while it stands.
Methods
- AccountsForMessageAt(RemoteFolderPath, string?)
Reports whether a newly discovered occurrence carries the identity of the message this filing appended.
- AccountsForPlacementAt(RemoteFolderPath, ImapUidValidity, ImapUid)
Reports whether a newly discovered occurrence is the copy this filing appended.