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
runStoreISpamClassificationRunStoreReads the requested run and records how far it has been carried.
emailsIClassifiableEmailReaderReads the account's stored occurrences in the run's scope, in identity order.
classificationsIEmailSpamClassificationStoreAnswers what an occurrence was already decided as, and under which terms.
classifierEmailSpamClassifierScores an occurrence and records the verdict.
actionRecorderSpamActionRecorderApplies the run's posture to a verdict, writing the changes down or only working them out.
settingsReaderISpamClassificationSettingsReaderAnswers whether classification runs and what profile it runs under.
commitPolicyOptimisticConcurrencyRetryPolicyCommits the run's position and counts.
optionsSpamClassificationRunOptionsBounds one pass.
timeProviderTimeProviderStamps the instant a run ends.
Exceptions
- ArgumentNullException
Thrown when a collaborator is null.
- ArgumentOutOfRangeException
Thrown when a configured bound is below one.