Class AuthorizersTrait

  • All Implemented Interfaces:
    FromSourceLocation, ToNode, ToShapeId, Trait, ToSmithyBuilder<AuthorizersTrait>

    public final class AuthorizersTrait
    extends AbstractTrait
    implements ToSmithyBuilder<AuthorizersTrait>
    Defines a map of API Gateway x-amazon-apigateway-authorizer values that correspond to Smithy authorization definitions.

    The key in each key-value pair of the aws.apigateway#authorizers trait is an arbitrary name that's used to associate authorizer definitions to operations. The scheme property of an authorizer must correspond to the name of an authorization scheme of the service the trait is bound to. When used to generate and OpenAPI model, the aws.apigateway#authorizers trait is used to add the x-amazon-apigateway-authorizer OpenAPI extension to the generated security scheme.

    See Also:
    API Gateway Authorizers
    • Field Detail

      • ID

        public static final ShapeId ID
    • Method Detail

      • builder

        public static AuthorizersTrait.Builder builder()
        Creates a builder for the trait.
        Returns:
        Returns the created builder.
      • getAuthorizer

        public java.util.Optional<AuthorizerDefinition> getAuthorizer​(java.lang.String name)
        Gets a specific authorizer by name.
        Parameters:
        name - Name of the authorizer to get.
        Returns:
        Returns the optionally found authorizer.
      • getAuthorizers

        public java.util.Map<java.lang.String,​AuthorizerDefinition> getAuthorizers()
        Gets an immutable map of authorizer names to their definitions.
        Returns:
        Returns the authorizers.
      • createNode

        protected Node createNode()
        Description copied from class: AbstractTrait
        The result of toNode is used for hashCodes and equality. Subclasses must implement createNode to turn the trait into a Node. This is then cached for subsequent retrievals.
        Specified by:
        createNode in class AbstractTrait
        Returns:
        Returns the trait as a node.