Class: AWSCDK::APIGateway::IntegrationConfig

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
api_gateway/integration_config.rb

Overview

Result of binding an Integration to a Method.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(type:, deployment_token: nil, integration_http_method: nil, options: nil, uri: nil) ⇒ IntegrationConfig

Returns a new instance of IntegrationConfig.

Parameters:

  • type (AWSCDK::APIGateway::IntegrationType)

    Specifies an API method integration type.

  • deployment_token (String, nil) (defaults to: nil)

    This value is included in computing the Deployment's fingerprint.

  • integration_http_method (String, nil) (defaults to: nil)

    The integration's HTTP method type.

  • options (AWSCDK::APIGateway::IntegrationOptions, nil) (defaults to: nil)

    Integration options.

  • uri (String, nil) (defaults to: nil)

    The Uniform Resource Identifier (URI) for the integration.



12
13
14
15
16
17
18
19
20
21
22
23
# File 'api_gateway/integration_config.rb', line 12

def initialize(type:, deployment_token: nil, integration_http_method: nil, options: nil, uri: nil)
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBpZ2F0ZXdheS5JbnRlZ3JhdGlvblR5cGUifQ==")), "type")
  @deployment_token = deployment_token
  Jsii::Type.check_type(@deployment_token, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "deploymentToken") unless @deployment_token.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 = options.is_a?(Hash) ? ::AWSCDK::APIGateway::IntegrationOptions.new(**options.transform_keys(&:to_sym)) : options
  Jsii::Type.check_type(@options, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBpZ2F0ZXdheS5JbnRlZ3JhdGlvbk9wdGlvbnMifQ==")), "options") unless @options.nil?
  @uri = uri
  Jsii::Type.check_type(@uri, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "uri") unless @uri.nil?
end

Instance Attribute Details

#deployment_tokenString? (readonly)

Note:

Default: undefined deployments are not triggered for any change to this integration.

This value is included in computing the Deployment's fingerprint.

When the fingerprint changes, a new deployment is triggered. This property should contain values associated with the Integration that upon changing should trigger a fresh the Deployment needs to be refreshed.

Returns:

  • (String, nil)


38
39
40
# File 'api_gateway/integration_config.rb', line 38

def deployment_token
  @deployment_token
end

#integration_http_methodString? (readonly)

Note:

Default: - no integration method specified.

The integration's HTTP method type.

Required unless you use a MOCK integration.

Returns:

  • (String, nil)


45
46
47
# File 'api_gateway/integration_config.rb', line 45

def integration_http_method
  @integration_http_method
end

#optionsAWSCDK::APIGateway::IntegrationOptions? (readonly)

Note:

Default: - no integration options

Integration options.



50
51
52
# File 'api_gateway/integration_config.rb', line 50

def options
  @options
end

#typeAWSCDK::APIGateway::IntegrationType (readonly)

Specifies an API method integration type.



28
29
30
# File 'api_gateway/integration_config.rb', line 28

def type
  @type
end

#uriString? (readonly)

Note:

Default: - no URI. Usually applies to MOCK integration

The Uniform Resource Identifier (URI) for the integration.



56
57
58
# File 'api_gateway/integration_config.rb', line 56

def uri
  @uri
end

Class Method Details

.jsii_propertiesObject



58
59
60
61
62
63
64
65
66
# File 'api_gateway/integration_config.rb', line 58

def self.jsii_properties
  {
    :type => "type",
    :deployment_token => "deploymentToken",
    :integration_http_method => "integrationHttpMethod",
    :options => "options",
    :uri => "uri",
  }
end

Instance Method Details

#to_jsiiObject



68
69
70
71
72
73
74
75
76
77
78
# File 'api_gateway/integration_config.rb', line 68

def to_jsii
  result = {}
  result.merge!({
    "type" => @type,
    "deploymentToken" => @deployment_token,
    "integrationHttpMethod" => @integration_http_method,
    "options" => @options,
    "uri" => @uri,
  })
  result.compact
end