Class DerivedWorkAdmissionTerms
- Namespace
- MailFathom.Application.Spam.Gating
- Assembly
- MailFathom.Application.dll
The terms one moment's admissions are decided under, as a value a query can be narrowed by.
public sealed record DerivedWorkAdmissionTerms : IEquatable<DerivedWorkAdmissionTerms>
- Inheritance
-
DerivedWorkAdmissionTerms
- Implements
- Inherited Members
Remarks
The reason this exists beside Admit(DerivedWorkCandidate) is the reason IMailFolderParticipationReader answers in two shapes: a walk over stored mail narrows a table and needs the whole decision as a value it can put into a predicate, while the arrival path holds one occurrence and asks about that one. Both are built here, from one reading of the settings and one reading of the clock, so the two cannot disagree about what a moment admits.
It is a snapshot rather than a live view, so one decision is never made against a settings reload half way through itself. Which moment a walk's batches are decided at is the walk's own business: the wait only ever moves forward, so a batch read later releases what an earlier one held and never the reverse.
Constructors
- DerivedWorkAdmissionTerms(bool, IReadOnlyList<MailFolderIdentity>, IReadOnlyList<MailFolderAlias>, DateTimeOffset)
The terms one moment's admissions are decided under, as a value a query can be narrowed by.
Properties
- ClassifiedFolderAliases
The folder aliases classification runs over. Mail outside them is admitted rather than left waiting, because nothing is ever going to reach a verdict about it.
- IsApplied
Whether the gate reaches anything at all. False with classification switched off, which is what makes a deployment that classifies nothing behave exactly as it did before the gate existed.
- JunkFolders
Every account's junk folder, whose mail is withheld with nothing having to score it.
- ReleasedWhenStoredBefore
The instant a message must have been stored before to be released without a verdict. It is the moment the terms were read, less the wait a verdict is allowed.
Methods
- Classifies(MailFolderAlias)
Reports whether classification runs over one folder.