Table of Contents

Class MailFolderRunReport

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

What one folder's most recent turn through a synchronization run did.

public sealed record MailFolderRunReport : IEquatable<MailFolderRunReport>
Inheritance
MailFolderRunReport
Implements
Inherited Members

Remarks

The counts describe a run that reached its folder and are zero for every other outcome, because a folder that was never opened stored nothing rather than storing none. The constructor is private and the two factory methods are the only way to build one, so a caller cannot report a failure and a count together — the combination is unconstructible rather than merely undocumented, which is what lets the administrative endpoint publish the counts without checking the outcome beside them first.

Nothing here is mail or derived from it. An outcome, four counts, and the moment the folder finished are the whole of it, which is what makes it safe to serve from the administrative endpoint.

Properties

EndedAt

Gets when it ended.

HasMoreEmails

Gets whether the folder still held unprocessed mail when the run's batch budget ran out, which is what the next run resumes.

Outcome

Gets how the folder's turn ended.

SkippedOversizedEmailCount

Gets how many it stored as metadata only, because their content exceeded a configured limit.

StoredEmailCount

Gets how many occurrences the run stored with their content.

UnreadableMimeEmailCount

Gets how many stored occurrences carried MIME that enrichment could not read.

Methods

Synchronized(DateTimeOffset, int, int, int, bool)

Reports a folder the run reached.

Unsynchronized(MailFolderRunOutcome, DateTimeOffset)

Reports a folder the run did not synchronize, whatever kept it from doing so.