Table of Contents

Constructor MailboxSynchronizationResult

Namespace
MailFathom.Application.Synchronization
Assembly
MailFathom.Application.dll

MailboxSynchronizationResult(MailboxSynchronizationOutcome, MailFolderResolution?, int, int, int, int, bool, SynchronizationCheckpoint?, MailboxReconciliationResult, IReadOnlyList<SuppressedMailboxChange>)

Summarizes one mailbox synchronization run.

public MailboxSynchronizationResult(MailboxSynchronizationOutcome Outcome, MailFolderResolution? Folder, int StoredEmailCount, int SkippedOversizedEmailCount, int UnreadableMimeEmailCount, int RelocatedEmailCount, bool HasMoreEmails, SynchronizationCheckpoint? Checkpoint, MailboxReconciliationResult Reconciliation, IReadOnlyList<SuppressedMailboxChange> SuppressedChanges)

Parameters

Outcome MailboxSynchronizationOutcome

Whether the run reached a folder.

Folder MailFolderResolution

The binding the run worked under, which is present exactly when Outcome is Synchronized.

StoredEmailCount int

How many occurrences were stored with their content.

SkippedOversizedEmailCount int

How many occurrences were stored as metadata only.

UnreadableMimeEmailCount int

How many stored occurrences carried MIME that enrichment could not read.

RelocatedEmailCount int

How many discovered occurrences were an email MailFathom had relocated into this folder, and so carried the existing local email across instead of storing a second one. They are counted apart from the stored ones because no mail arrived: the mailbox holds exactly what it held before the run.

HasMoreEmails bool

Whether the folder still held unprocessed emails when the run's batch budget ran out.

Checkpoint SynchronizationCheckpoint

The progress the run ended on, which is present exactly when Outcome is Synchronized.

Reconciliation MailboxReconciliationResult

What the run's backward pass found among the emails already stored for this folder.

SuppressedChanges IReadOnlyList<SuppressedMailboxChange>

Every change this run discovered and did not raise, because a durable mutation record said MailFathom had made it — both passes together, since one relocation arrives as an appearance in the forward pass and a disappearance in the backward one. Without it a rule that files mail would match the mail it had just filed, indefinitely.

Remarks

The binding is reported because resolution happens inside the run and a caller that wants to keep watching the folder afterwards must watch the remote folder the alias actually resolved to. Re-resolving it outside the run would cost a second listing and could answer differently, which is how an alias ends up watched in one place and synchronized in another.