Interface ITransientFailureClassifier
- Namespace
- MailFathom.Application.Resilience
- Assembly
- MailFathom.Application.dll
Decides whether a failed outbound operation is worth repeating.
public interface ITransientFailureClassifier
Remarks
The port exists so a use case can ask the question the retry pipeline asks itself, without depending on the resilience library that owns the pipeline. A supervisor deciding whether to keep an account in its rotation and a pipeline deciding whether to make another attempt must agree, and they only agree if one implementation answers both.
Authentication, permission, and malformed-request failures are terminal for every dependency class. Repeating them cannot succeed, and against a mail server it can lock the account.
Methods
- IsTransientFailure(OutboundDependency, Exception)
Reports whether a failure is expected to clear on its own, so repeating the operation can succeed.