Table of Contents

Class OutboxSummary

Namespace
MailFathom.Application.Mail.Delivery.Operations
Assembly
MailFathom.Application.dll

Reports how much stands at each stage of an outbox, which is the first question an operator asks of one.

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

Remarks

Every declared stage is present whether or not anything stands at it, because a stage that vanished when it emptied would make a healthy outbox and a build that no longer records that stage look identical. Zero is an answer.

Counts and stage names are the whole of it. Nothing here names a recipient, a subject, or a message, so the summary is safe to print on a terminal, to screenshot, and to publish as the dimensions of a gauge.

Properties

OutstandingCount

Gets how many sends are waiting for something to happen to them.

Stages

Gets one count per declared stage, in the order the stages are declared.

Methods

CountOf(OutgoingEmailStage)

Reports how many sends stand at one stage.

Of(IReadOnlyList<OutboxStageCount>)

Composes the summary from what a store counted, filling in the stages it counted nothing at.