Table of Contents

Constructor StoredMailRederivation

Namespace
MailFathom.Application.Mail.Maintenance
Assembly
MailFathom.Application.dll

StoredMailRederivation(IStoredMailRederivationStore, IStoredMailRederivationRunStore, IEmailContentStore, IEmailMimeReader, OptimisticConcurrencyRetryPolicy, TimeProvider, AccessAuthorization)

Initializes the re-derivation.

public StoredMailRederivation(IStoredMailRederivationStore rederivationStore, IStoredMailRederivationRunStore runStore, IEmailContentStore contentStore, IEmailMimeReader mimeReader, OptimisticConcurrencyRetryPolicy concurrencyRetryPolicy, TimeProvider timeProvider, AccessAuthorization authorization)

Parameters

rederivationStore IStoredMailRederivationStore

Reads what the walk has left and writes what one email's re-reading produced.

runStore IStoredMailRederivationRunStore

Holds the run this walk is advancing, which each batch adds what it read to.

contentStore IEmailContentStore

Reads back the raw MIME an earlier run stored.

mimeReader IEmailMimeReader

Turns that raw MIME into normalized metadata.

concurrencyRetryPolicy OptimisticConcurrencyRetryPolicy

Commits a batch, retrying a conflict with a competing writer.

timeProvider TimeProvider

Stamps the instant the walk reached the end of its scope.

authorization AccessAuthorization

Answers which principal reached this use case.

Exceptions

ArgumentNullException

Thrown when any argument is null.