Class CorsHttpIntegration

  • All Implemented Interfaces:
    ApiGatewayMapper, OpenApiMapper

    public final class CorsHttpIntegration
    extends java.lang.Object
    implements ApiGatewayMapper
    Adds support for the API Gateway x-amazon-apigateway-cors extension for API Gateway HTTP APIs using values from the Smithy cors trait.
    • allowOrigins is populated based on the origin property of the cors trait.
    • maxAge is populated based on the maxAge property of the cors trait.
    • allowMethods is populated by scanning the generated OpenAPI definition for every defined method.
    • exposedHeaders is set to "*" to expose all headers IFF the service does not use HTTP credentials, and no value is provided to the additionalExposedHeaders property of the Smithy cors trait. Otherwise, this value is populated by finding all of the response headers used by the protocol, modeled in the service, and used by auth schemes.
    • allowedHeaders is set to "*" to allow all headers IFF the service does not use HTTP credentials, and no value is provided to the additionalAllowedHeaders property of the Smithy cors trait. Otherwise, this value is populated by finding all of the request headers used by the protocol, modeled in the service, and used by auth schemes.
    • allowCredentials is set to true if any of the auth schemes used in the API use HTTP credentials according to Context.usesHttpCredentials().
    See Also:
    API Gateway documentation
    • Constructor Detail

      • CorsHttpIntegration

        public CorsHttpIntegration()
    • Method Detail

      • getApiTypes

        public java.util.List<ApiGatewayConfig.ApiType> getApiTypes()
        Description copied from interface: ApiGatewayMapper
        Gets the types of API Gateway APIs that this mapper applies to.

        Return an empty list or null to apply to all possible API types other than ApiGatewayConfig.ApiType.DISABLED. However, note that it's typically safer to specify the exact API types that the mapper supports.

        Specified by:
        getApiTypes in interface ApiGatewayMapper
        Returns:
        Returns the list of API Gateway API types to apply to.
      • after

        public OpenApi after​(Context<? extends Trait> context,
                             OpenApi openapi)
        Description copied from interface: OpenApiMapper
        Updates an OpenApi object after it is built.
        Specified by:
        after in interface OpenApiMapper
        Parameters:
        context - Conversion context.
        openapi - OpenAPI object to modify.
        Returns:
        Returns the updated OpenApi object.