Table of Contents

Constructor SpamClassificationPass

Namespace
MailFathom.Application.Spam.Runs
Assembly
MailFathom.Application.dll

SpamClassificationPass(ISpamClassificationRunStore, IClassifiableEmailReader, IEmailSpamClassificationStore, EmailSpamClassifier, SpamActionRecorder, ISpamClassificationSettingsReader, OptimisticConcurrencyRetryPolicy, SpamClassificationRunOptions, TimeProvider)

Initializes the pass from the run it carries and the local state it walks.

public SpamClassificationPass(ISpamClassificationRunStore runStore, IClassifiableEmailReader emails, IEmailSpamClassificationStore classifications, EmailSpamClassifier classifier, SpamActionRecorder actionRecorder, ISpamClassificationSettingsReader settingsReader, OptimisticConcurrencyRetryPolicy commitPolicy, SpamClassificationRunOptions options, TimeProvider timeProvider)

Parameters

runStore ISpamClassificationRunStore

Reads the requested run and records how far it has been carried.

emails IClassifiableEmailReader

Reads the account's stored occurrences in the run's scope, in identity order.

classifications IEmailSpamClassificationStore

Answers what an occurrence was already decided as, and under which terms.

classifier EmailSpamClassifier

Scores an occurrence and records the verdict.

actionRecorder SpamActionRecorder

Applies the run's posture to a verdict, writing the changes down or only working them out.

settingsReader ISpamClassificationSettingsReader

Answers whether classification runs and what profile it runs under.

commitPolicy OptimisticConcurrencyRetryPolicy

Commits the run's position and counts.

options SpamClassificationRunOptions

Bounds one pass.

timeProvider TimeProvider

Stamps the instant a run ends.

Exceptions

ArgumentNullException

Thrown when a collaborator is null.

ArgumentOutOfRangeException

Thrown when a configured bound is below one.