Table of Contents

Constructor StoredMailRederivationHandler

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

StoredMailRederivationHandler(StoredMailRederivation, IStoredMailRederivationRunStore, IJobStore, OptimisticConcurrencyRetryPolicy, IStoredMailRederivationTelemetry)

Initializes the handler from the walk it drives and the record it keeps.

public StoredMailRederivationHandler(StoredMailRederivation rederivation, IStoredMailRederivationRunStore runStore, IJobStore jobs, OptimisticConcurrencyRetryPolicy commitPolicy, IStoredMailRederivationTelemetry telemetry)

Parameters

rederivation StoredMailRederivation

Runs one bounded pass over the scope's stored mail, advancing the run as it commits.

runStore IStoredMailRederivationRunStore

Reads whether the scope still has a run to carry, and moves it on to its next segment.

jobs IJobStore

Enqueues the segment that carries whatever this attempt did not reach.

commitPolicy OptimisticConcurrencyRetryPolicy

Advances the segment from a fresh read, resolving a race with an overlapping attempt.

telemetry IStoredMailRederivationTelemetry

Publishes the segment and the passes beneath it.

Exceptions

ArgumentNullException

Thrown when a collaborator is null.