Table of Contents

Method HasMissedItsDueTime

Namespace
MailFathom.Domain.Delivery
Assembly
MailFathom.Domain.dll

HasMissedItsDueTime(DateTimeOffset, TimeSpan)

Reports whether the time this send was written to leave at has passed by further than a deployment allows.

public bool HasMissedItsDueTime(DateTimeOffset asOf, TimeSpan allowedLateness)

Parameters

asOf DateTimeOffset

The instant the question is asked at.

allowedLateness TimeSpan

How late a deployment is willing to deliver a message whose time has passed.

Returns

bool

true when the message was written for a time long enough ago that it must not be sent unasked.

Remarks

A message is not a housekeeping pass, so a time that came round while nothing was running is not skipped: it was written to be delivered, and dropping it silently loses correspondence. But a message delivered a week after the morning it was meant for can be worse than one never sent — it answers a question nobody is still asking, and it tells its recipient the sender was not paying attention — so the deployment states how late is still timely and what falls outside that is left for a person to decide about.

A send that named no time is never late. Its author asked for it to go as soon as it could, and however long a retry backoff or an unreachable provider has held it, nothing about when it leaves was ever promised.