Table of Contents

Class ScheduledMailRuleRunHandler

Namespace
MailFathom.Application.Rules.Evaluation
Assembly
MailFathom.Application.dll

Turns a schedule's occasion into the whole-mailbox run an account's synchronization runs then carry.

public sealed class ScheduledMailRuleRunHandler : IJobHandler
Inheritance
ScheduledMailRuleRunHandler
Implements
Inherited Members

Remarks

The job is deliberately short. What it does is record that a scheduled walk of the account is wanted, exactly as an operator's request does; the walk itself happens where every other rule pass happens, which is the account's own synchronization run with its per-account isolation, its backoff, and its slot count. A handler that walked the mailbox here would be a second place rules run, and it would hold a worker for as long as somebody's mailbox takes.

Running it twice with one payload is the same as running it once, which is what the queue asks of every handler: a second occasion finding a run outstanding is answered with that run and writes nothing.

Constructors

ScheduledMailRuleRunHandler(MailRuleEvaluationRunRequests)

Initializes the handler from the intake that records a wanted run.

Properties

JobType

Gets the job type this handler runs, which is also the contract its payload arrives under.

Methods

RunAsync(IJobPayload, CancellationToken)

Runs the work the payload describes.