Table of Contents

Class MailboxUnavailableException

Namespace
MailFathom.Application.Synchronization.Sessions
Assembly
MailFathom.Application.dll

Indicates that a mail server did not serve an operation within the resilience budget configured for it.

public sealed class MailboxUnavailableException : MailFathomException, ISerializable
Inheritance
MailboxUnavailableException
Implements
Inherited Members

Remarks

This is the failure a caller sees when the attempts, the timeouts, or the in-flight limit of the mailbox dependency classes were spent: an abandoned attempt, an operation that outlived its total timeout, an open circuit, and a shed execution all arrive here. The remote mailbox is unreachable for now and the same work is expected to succeed on a later run.

It is deliberately distinct from OperationCanceledException, which stays the failure of a caller that stopped waiting — a host shutting down. A worker has to tell the two apart, because one says the deployment is stopping and the other says one mail server is struggling.

Constructors

MailboxUnavailableException(MailAccountId, MailFolderAlias, Exception)

Initializes a new mailbox unavailability failure naming the account and folder alias it stopped.

MailboxUnavailableException(MailAccountId, Exception)

Initializes a new mailbox unavailability failure for an operation that works on no single folder, such as folder discovery.

Properties

AccountId

Gets the account whose mail server was unavailable.

ErrorCode

Gets the stable code identifying this failure to a boundary that must report it without naming a type.

FolderAlias

Gets the folder the stopped operation was working on, which is absent for an operation that works on no single folder.