Class S2SDecisionSource.Result

java.lang.Object
io.confluent.security.auth.s2s.S2SDecisionSource.Result
Enclosing interface:
S2SDecisionSource

public static final class S2SDecisionSource.Result extends Object
Outcome of S2SDecisionSource.evaluate(EvaluationInput), widened beyond the tri-state S2SDecisionSource.Decision with the diagnostic detail the observability layer needs: an outcome label (one of allow/deny/continue/abstain, layer-specific — see S2SConnectionLevelDecisionSource / S2SServiceLevelDecisionSource), and the SRJ Decision's determining policy IDs (reasons) and passName, when the underlying SRJ authorizer actually ran (both are empty when no authorizer is installed, i.e. the fail-open/fail-closed no-policy paths).

decision is unchanged from today's tri-state semantics — providers must keep branching on it exactly as before; this type only adds read-only diagnostic fields for metrics/logging, it does not change any authorization outcome.

  • Method Details

    • decision

      public S2SDecisionSource.Decision decision()
      The tri-state decision; providers branch on this exactly as before.
    • outcome

      public String outcome()
      Outcome label for metrics/logs (layer-specific meaning).
    • reasons

      public List<String> reasons()
      Determining policy IDs from the SRJ Decision; empty when not available.
    • passName

      public String passName()
      Name of the SRJ pass that produced this result; empty when not available.
    • toString

      public String toString()
      Overrides:
      toString in class Object