Method AccountsForRemovalOf
- Namespace
- MailFathom.Domain.Mutations
- Assembly
- MailFathom.Domain.dll
AccountsForRemovalOf(EmailOccurrenceId)
Reports whether an occurrence that has left its folder left it because of this mutation.
public bool AccountsForRemovalOf(EmailOccurrenceId sourceOccurrence)
Parameters
sourceOccurrenceEmailOccurrenceIdThe occurrence the folder no longer holds.
Returns
Remarks
This half needs no COPYUID, because the record names the source occurrence exactly: it is the identity an
IMAP command was issued against, written down before the command went out. All four components are compared, so
a folder renumbered under a new UIDVALIDITY matches nothing.
A record still at Recorded matches nothing, because nothing has reached the server for it and a disappearance is therefore somebody else's act. Every later stage matches, including Abandoned, and that direction is deliberate: an abandoned relocation may have placed the email in the destination folder before it ran out of attempts, and treating the vanished source as a remote deletion would erase the local copy of mail that still exists. Attributing one manual deletion to MailFathom keeps mail nobody asked to keep; the other way round loses mail.
It stays true after the observation has been recorded. The record is a durable fact about that occurrence rather than a pending item, so a folder asked about the same disappearance twice gets the same answer both times.