Class AnnotationAnalyzer.AnalyzerResponse

java.lang.Object
io.helidon.security.providers.common.spi.AnnotationAnalyzer.AnalyzerResponse
Enclosing interface:
AnnotationAnalyzer

public static final class AnnotationAnalyzer.AnalyzerResponse extends Object
Response of an analysis run.
  • Method Details

    • abstain

      public static AnnotationAnalyzer.AnalyzerResponse abstain()
      Create an abstain response (e.g. the analyzer has no information to provide a valid response, such as the annotation this analyzer supports is missing).
      Returns:
      an abstain response
    • abstain

      Create an abstain response (e.g. the analyzer has no information to provide a valid response, such as the annotation this analyzer supports is missing).
      Parameters:
      previousResponse - response from previous analysis (to allow parent/child structure, e.g. when some information is needed by further analysis)
      Returns:
      an abstain response
    • builder

      Create a fluent API builder.
      Returns:
      a builder
    • builder

      Create a fluent API builder with a parent response.
      Parameters:
      parent - response from previous run
      Returns:
      a builder
    • parent

      Response explicitly supplied as this response's parent.

      Security integrations pass the response returned by the preceding analyzer callback as previousResponse. An analyzer that creates a new response normally preserves that relationship with builder(AnalyzerResponse). The framework does not infer or create the parent relationship, and an analyzer may return the preceding response unchanged.

      Analysis begins with the application. An analyzer that opts in through AnnotationAnalyzer.supportsExpandedEndpointAnalysis() may then receive multiple definition, declaring-class, definition-method, handling-class, and handling-method stages, repeated for each level of a sub-resource path. Consequently, a class response may have a method response as its parent, and vice versa.

      Returns:
      explicitly configured parent, or empty
    • authenticationResponse

      public AnnotationAnalyzer.Flag authenticationResponse()
      Authentication response of this analysis.
      Returns:
      authentication response
    • authorizationResponse

      public AnnotationAnalyzer.Flag authorizationResponse()
      Authorization response of this analysis.
      Returns:
      authorization response
    • authenticator

      public Optional<String> authenticator()
      Explicit authentication provider name. If none provided, the default authenticator would be used.
      Returns:
      authenticator name or empty
    • authorizer

      public Optional<String> authorizer()
      Explicit authorization provider name. If none provided, the default authorizer would be used.
      Returns:
      authorization name or empty
    • registry

      public ClassToInstanceStore<Object> registry()
      A registry that allows transferring information between analysis of different scopes (application, resource class, method).
      Returns:
      registry to use
    • toString

      public String toString()
      Overrides:
      toString in class Object