Class IntegrationOptions.Builder

java.lang.Object
software.amazon.awscdk.services.apigateway.IntegrationOptions.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<IntegrationOptions>
Enclosing interface:
IntegrationOptions

@Stability(Stable) public static final class IntegrationOptions.Builder extends Object implements software.amazon.jsii.Builder<IntegrationOptions>
A builder for IntegrationOptions
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • cacheKeyParameters

      @Stability(Stable) public IntegrationOptions.Builder cacheKeyParameters(List<String> cacheKeyParameters)
      Parameters:
      cacheKeyParameters - A list of request parameters whose values are to be cached. It determines request parameters that will make it into the cache key.
      Returns:
      this
    • cacheNamespace

      @Stability(Stable) public IntegrationOptions.Builder cacheNamespace(String cacheNamespace)
      Parameters:
      cacheNamespace - An API-specific tag group of related cached parameters.
      Returns:
      this
    • connectionType

      @Stability(Stable) public IntegrationOptions.Builder connectionType(ConnectionType connectionType)
      Parameters:
      connectionType - The type of network connection to the integration endpoint.
      Returns:
      this
    • contentHandling

      @Stability(Stable) public IntegrationOptions.Builder contentHandling(ContentHandling contentHandling)
      Parameters:
      contentHandling - Specifies how to handle request payload content type conversions.
      Returns:
      this
    • credentialsPassthrough

      @Stability(Stable) public IntegrationOptions.Builder credentialsPassthrough(Boolean credentialsPassthrough)
      Parameters:
      credentialsPassthrough - Requires that the caller's identity be passed through from the request.
      Returns:
      this
    • credentialsRole

      @Stability(Stable) public IntegrationOptions.Builder credentialsRole(IRole credentialsRole)
      Parameters:
      credentialsRole - An IAM role that API Gateway assumes. Mutually exclusive with credentialsPassThrough.
      Returns:
      this
    • integrationResponses

      @Stability(Stable) public IntegrationOptions.Builder integrationResponses(List<? extends IntegrationResponse> integrationResponses)
      Parameters:
      integrationResponses - The response that API Gateway provides after a method's backend completes processing a request. API Gateway intercepts the response from the backend so that you can control how API Gateway surfaces backend responses. For example, you can map the backend status codes to codes that you define.
      Returns:
      this
    • passthroughBehavior

      @Stability(Stable) public IntegrationOptions.Builder passthroughBehavior(PassthroughBehavior passthroughBehavior)
      Parameters:
      passthroughBehavior - Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER.
      Returns:
      this
    • requestParameters

      @Stability(Stable) public IntegrationOptions.Builder requestParameters(Map<String,String> requestParameters)
      Parameters:
      requestParameters - The request parameters that API Gateway sends with the backend request. Specify request parameters as key-value pairs (string-to-string mappings), with a destination as the key and a source as the value.

      Specify the destination by using the following pattern integration.request.location.name, where location is querystring, path, or header, and name is a valid, unique parameter name.

      The source must be an existing method request parameter or a static value. You must enclose static values in single quotation marks and pre-encode these values based on their destination in the request.

      Returns:
      this
    • requestTemplates

      @Stability(Stable) public IntegrationOptions.Builder requestTemplates(Map<String,String> requestTemplates)
      Parameters:
      requestTemplates - A map of Apache Velocity templates that are applied on the request payload. The template that API Gateway uses is based on the value of the Content-Type header that's sent by the client. The content type value is the key, and the template is the value (specified as a string), such as the following snippet:

                                 { "application/json": "{ \"statusCode\": 200 }" }
                               
      Returns:
      this
    • timeout

      @Stability(Stable) public IntegrationOptions.Builder timeout(Duration timeout)
      Parameters:
      timeout - The maximum amount of time an integration will run before it returns without a response. By default, the value must be between 50 milliseconds and 29 seconds. The upper bound can be increased for regional and private Rest APIs only, via a quota increase request for your acccount. This increase might require a reduction in your account-level throttle quota limit. See
      invalid @link
      {@link https://docs.aws.amazon.com/apigateway/latest/developerguide/limits.html
      Amazon API Gateway quotas} for more details.
      Returns:
      this
    • vpcLink

      @Stability(Stable) public IntegrationOptions.Builder vpcLink(IVpcLink vpcLink)
      Parameters:
      vpcLink - The VpcLink used for the integration. Required if connectionType is VPC_LINK
      Returns:
      this
    • build

      @Stability(Stable) public IntegrationOptions build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<IntegrationOptions>
      Returns:
      a new instance of IntegrationOptions
      Throws:
      NullPointerException - if any required attribute was not provided