namespace AIStudio.Tools.Mail;
///
/// A connection to the IMAP server of a mailbox failed, for the reason its failure code names.
///
///
/// The message is meant for developers and names neither the user nor the server. The inner
/// exception may well do so, since servers tend to repeat the username in their answers. Log the
/// failure code and the type of the inner exception, never its message.
///
public sealed class MailboxConnectionException(MailboxConnectionFailure failure, string message, Exception? innerException = null) : Exception(message, innerException)
{
///
/// Why the connection failed.
///
public MailboxConnectionFailure Failure { get; } = failure;
}