Table of Contents

Enum MailboxChangeKind

Namespace
MailFathom.Domain.Mutations
Assembly
MailFathom.Domain.dll

Names one kind of change to a mailbox that synchronization discovers and rule evaluation would act on.

public enum MailboxChangeKind

Fields

EmailAppearedInFolder = 0

A folder holds an occurrence of an email it did not hold before.

EmailLeftFolder = 1

A folder no longer holds an occurrence of an email it did hold.

SeenStateChanged = 2

The remote \Seen flag of a stored email stands at a different value than the one last observed.

Remarks

The three kinds are what a mail server can tell MailFathom has happened to a message that is already stored: it is somewhere it was not, it is no longer where it was, or its \Seen flag stands elsewhere. Every mutation MailFathom is permitted to make arrives back as one of them, which is what lets provenance be decided once for all four rather than per mutation.

The kind says what changed and never who caused it. That second question is answered from the durable mutation record, and keeping the two apart is the point: a person moving mail by hand produces exactly the same kind as a rule that files it, and only the record tells them apart.