Table of Contents

Class JobExecutionResult

Namespace
MailFathom.Application.Jobs.Execution
Assembly
MailFathom.Application.dll

What one attempt at one job did, in the terms the queue itself is described in.

public sealed record JobExecutionResult : IEquatable<JobExecutionResult>
Inheritance
JobExecutionResult
Implements
Inherited Members

Remarks

It carries the job's own identity and the type's name and nothing from the work: a payload names a message occurrence and this names the payload's job, so neither a subject, an address, nor any other mail content can reach a log line, a counter, or a span through it. That holds of a failed attempt too, which is why the exception a handler raised stops at the classifier and only the record it produced travels on.

The state the record needed is already written by the time a result exists. This is what the caller reports and paces itself by, not a request for the caller to finish the attempt.

Constructors

JobExecutionResult(JobId, JobType, int, JobExecutionOutcome, TimeSpan)

What one attempt at one job did, in the terms the queue itself is described in.

Properties

AttemptCount

Which attempt this was, counting from one.

AttemptFailure

Gets what one failed attempt recorded and what became of the job, and null when nothing failed.

Duration

How long the attempt took, from dispatch to the recorded outcome.

JobId

The job this attempt held.

JobType

The kind of work, which is the name every report of this result uses.

Outcome

How the attempt ended.