Class: AWSCDK::APIGateway::AWSIntegrationProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::APIGateway::AWSIntegrationProps
- Defined in:
- api_gateway/aws_integration_props.rb
Instance Attribute Summary collapse
-
#action ⇒ String?
readonly
The AWS action to perform in the integration.
-
#action_parameters ⇒ Hash{String => String}?
readonly
Parameters for the action.
-
#integration_http_method ⇒ String?
readonly
The integration's HTTP method type.
-
#options ⇒ AWSCDK::APIGateway::IntegrationOptions?
readonly
Integration options, such as content handling, request/response mapping, etc.
-
#path ⇒ String?
readonly
The path to use for path-base APIs.
-
#proxy ⇒ Boolean?
readonly
Use AWS_PROXY integration.
-
#region ⇒ String?
readonly
The region of the integrated AWS service.
-
#service ⇒ String
readonly
The name of the integrated AWS service (e.g.
s3). -
#subdomain ⇒ String?
readonly
A designated subdomain supported by certain AWS service for fast host-name lookup.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(service:, action: nil, action_parameters: nil, integration_http_method: nil, options: nil, path: nil, proxy: nil, region: nil, subdomain: nil) ⇒ AWSIntegrationProps
constructor
A new instance of AWSIntegrationProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(service:, action: nil, action_parameters: nil, integration_http_method: nil, options: nil, path: nil, proxy: nil, region: nil, subdomain: nil) ⇒ AWSIntegrationProps
Returns a new instance of AWSIntegrationProps.
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'api_gateway/aws_integration_props.rb', line 15 def initialize(service:, action: nil, action_parameters: nil, integration_http_method: nil, options: nil, path: nil, proxy: nil, region: nil, subdomain: nil) @service = service Jsii::Type.check_type(@service, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "service") @action = action Jsii::Type.check_type(@action, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "action") unless @action.nil? @action_parameters = action_parameters Jsii::Type.check_type(@action_parameters, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "actionParameters") unless @action_parameters.nil? @integration_http_method = integration_http_method Jsii::Type.check_type(@integration_http_method, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "integrationHttpMethod") unless @integration_http_method.nil? @options = .is_a?(Hash) ? ::AWSCDK::APIGateway::IntegrationOptions.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(@options, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBpZ2F0ZXdheS5JbnRlZ3JhdGlvbk9wdGlvbnMifQ==")), "options") unless @options.nil? @path = path Jsii::Type.check_type(@path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "path") unless @path.nil? @proxy = proxy Jsii::Type.check_type(@proxy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "proxy") unless @proxy.nil? @region = region Jsii::Type.check_type(@region, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "region") unless @region.nil? @subdomain = subdomain Jsii::Type.check_type(@subdomain, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "subdomain") unless @subdomain.nil? end |
Instance Attribute Details
#action ⇒ String? (readonly)
The AWS action to perform in the integration.
Use action_params to specify key-value params for the action.
Mutually exclusive with path.
47 48 49 |
# File 'api_gateway/aws_integration_props.rb', line 47 def action @action end |
#action_parameters ⇒ Hash{String => String}? (readonly)
Parameters for the action.
action must be set, and path must be undefined.
The action params will be URL encoded.
54 55 56 |
# File 'api_gateway/aws_integration_props.rb', line 54 def action_parameters @action_parameters end |
#integration_http_method ⇒ String? (readonly)
Default: POST
The integration's HTTP method type.
59 60 61 |
# File 'api_gateway/aws_integration_props.rb', line 59 def integration_http_method @integration_http_method end |
#options ⇒ AWSCDK::APIGateway::IntegrationOptions? (readonly)
Integration options, such as content handling, request/response mapping, etc.
63 64 65 |
# File 'api_gateway/aws_integration_props.rb', line 63 def @options end |
#path ⇒ String? (readonly)
The path to use for path-base APIs.
For example, for S3 GET, you can set path to bucket/key.
For lambda, you can set path to 2015-03-31/functions/${function-arn}/invocations
Mutually exclusive with the action options.
72 73 74 |
# File 'api_gateway/aws_integration_props.rb', line 72 def path @path end |
#proxy ⇒ Boolean? (readonly)
Default: false
Use AWS_PROXY integration.
77 78 79 |
# File 'api_gateway/aws_integration_props.rb', line 77 def proxy @proxy end |
#region ⇒ String? (readonly)
Default: - same region as the stack
The region of the integrated AWS service.
82 83 84 |
# File 'api_gateway/aws_integration_props.rb', line 82 def region @region end |
#service ⇒ String (readonly)
The name of the integrated AWS service (e.g. s3).
39 40 41 |
# File 'api_gateway/aws_integration_props.rb', line 39 def service @service end |
#subdomain ⇒ String? (readonly)
A designated subdomain supported by certain AWS service for fast host-name lookup.
86 87 88 |
# File 'api_gateway/aws_integration_props.rb', line 86 def subdomain @subdomain end |
Class Method Details
.jsii_properties ⇒ Object
88 89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'api_gateway/aws_integration_props.rb', line 88 def self.jsii_properties { :service => "service", :action => "action", :action_parameters => "actionParameters", :integration_http_method => "integrationHttpMethod", :options => "options", :path => "path", :proxy => "proxy", :region => "region", :subdomain => "subdomain", } end |
Instance Method Details
#to_jsii ⇒ Object
102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
# File 'api_gateway/aws_integration_props.rb', line 102 def to_jsii result = {} result.merge!({ "service" => @service, "action" => @action, "actionParameters" => @action_parameters, "integrationHttpMethod" => @integration_http_method, "options" => @options, "path" => @path, "proxy" => @proxy, "region" => @region, "subdomain" => @subdomain, }) result.compact end |