Class ExternalIssuerAdmissionException

All Implemented Interfaces:
Serializable

public final class ExternalIssuerAdmissionException extends ExternalTokenException
An external issuer was refused before any connection was opened, and this names the rule that refused it.

It is an ExternalTokenException because, from the caller's point of view, the outcome is the same family of failure: the external token could not be obtained. It carries a ExternalIssuerAdmissionException.Rule because the operator's next action differs entirely by rule - a scheme mistake is a typo, a rejected address is either a misconfiguration or an attempt to make this process post a credential somewhere inside its own network position.

The message never renders the configured value. Userinfo is refused before the URI is retained anywhere, and every other refusal describes the issuer as scheme://host:port, which cannot carry credentials by construction. A refusal message flows into logs and into the diagnostic context map, and a message that echoed its input would put a password there.

See Also:
  • Constructor Details

    • ExternalIssuerAdmissionException

      public ExternalIssuerAdmissionException(ExternalIssuerAdmissionException.Rule rule, String message)
      Parameters:
      rule - the rule that refused the issuer; must not be null
      message - the operator-facing explanation; must name the rule and must not echo the configured value
    • ExternalIssuerAdmissionException

      public ExternalIssuerAdmissionException(ExternalIssuerAdmissionException.Rule rule, String message, Throwable cause)
      The same refusal, carrying the failure that produced it.
      Parameters:
      rule - the rule that refused the issuer; must not be null
      message - the operator-facing explanation; must name the rule and must not echo the configured value
      cause - the underlying failure - a name that did not resolve is the only one today. It is carried rather than dropped because the reason a name does not resolve (no such host, a dead resolver, a search-domain mistake) is in the cause and nowhere else, and a sibling refusal on the same path already keeps it
  • Method Details