Constructor StoredEmailAwaitingReconciliation
- Assembly
- MailFathom.Application.dll
StoredEmailAwaitingReconciliation(StoredEmailId, ImapUid, RemoteSeenStateObservation?)
One locally stored occurrence a reconciliation window has selected to ask the server about.
public StoredEmailAwaitingReconciliation(StoredEmailId StoredEmailId, ImapUid Uid, RemoteSeenStateObservation? LastObservation)
Parameters
StoredEmailIdStoredEmailIdThe stable local identity the outcome is written against.
UidImapUidThe UID the server is asked about, within the folder and UIDVALIDITY the window was opened for.
LastObservationRemoteSeenStateObservation?What the previous reading of this occurrence's remote flags recorded, or null when no run has read them yet.
Remarks
The three values are everything reconciliation needs and deliberately nothing more. No subject, address, or fragment of a message takes part in deciding whether an email still exists remotely or whether its flags have moved, so none of it is read to decide it.
LastObservation is what turns the flags the server reports into a change rather than a reading.
Absence is a state of its own here: an occurrence nobody has observed has no previous value to differ from, so its
first flag reading is the initial observation and never a change somebody made.