Class: AWSCDK::APIGateway::EndpointConfiguration

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

Overview

The endpoint configuration of a REST API, including VPCs and endpoint types.

EndpointConfiguration is a property of the AWS::ApiGateway::RestApi resource.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(types:, ip_address_type: nil, vpc_endpoints: nil) ⇒ EndpointConfiguration

Returns a new instance of EndpointConfiguration.

Parameters:



12
13
14
15
16
17
18
19
# File 'api_gateway/endpoint_configuration.rb', line 12

def initialize(types:, ip_address_type: nil, vpc_endpoints: nil)
  @types = types
  Jsii::Type.check_type(@types, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcGlnYXRld2F5LkVuZHBvaW50VHlwZSJ9LCJraW5kIjoiYXJyYXkifX0=")), "types")
  @ip_address_type = ip_address_type
  Jsii::Type.check_type(@ip_address_type, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBpZ2F0ZXdheS5JcEFkZHJlc3NUeXBlIn0=")), "ipAddressType") unless @ip_address_type.nil?
  @vpc_endpoints = vpc_endpoints
  Jsii::Type.check_type(@vpc_endpoints, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lYzIuSVZwY0VuZHBvaW50In0sImtpbmQiOiJhcnJheSJ9fQ==")), "vpcEndpoints") unless @vpc_endpoints.nil?
end

Instance Attribute Details

#ip_address_typeAWSCDK::APIGateway::IPAddressType? (readonly)

Note:

Default: undefined - AWS default is DUAL_STACK for private API, IPV4 for all other APIs.

The IP address types that can invoke the API.



31
32
33
# File 'api_gateway/endpoint_configuration.rb', line 31

def ip_address_type
  @ip_address_type
end

#typesArray<AWSCDK::APIGateway::EndpointType> (readonly)

Note:

Default: EndpointType.EDGE

A list of endpoint types of an API or its custom domain name.



25
26
27
# File 'api_gateway/endpoint_configuration.rb', line 25

def types
  @types
end

#vpc_endpointsArray<AWSCDK::EC2::IVPCEndpoint>? (readonly)

Note:

Default: - no ALIASes are created for the endpoint.

A list of VPC Endpoints against which to create Route53 ALIASes.

Returns:



36
37
38
# File 'api_gateway/endpoint_configuration.rb', line 36

def vpc_endpoints
  @vpc_endpoints
end

Class Method Details

.jsii_propertiesObject



38
39
40
41
42
43
44
# File 'api_gateway/endpoint_configuration.rb', line 38

def self.jsii_properties
  {
    :types => "types",
    :ip_address_type => "ipAddressType",
    :vpc_endpoints => "vpcEndpoints",
  }
end

Instance Method Details

#to_jsiiObject



46
47
48
49
50
51
52
53
54
# File 'api_gateway/endpoint_configuration.rb', line 46

def to_jsii
  result = {}
  result.merge!({
    "types" => @types,
    "ipAddressType" => @ip_address_type,
    "vpcEndpoints" => @vpc_endpoints,
  })
  result.compact
end