Class: AWSCDK::APIGatewayv2::CfnDomainNameProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
api_gatewayv2/cfn_domain_name_props.rb

Overview

Properties for defining a CfnDomainName.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(domain_name:, domain_name_configurations: nil, mutual_tls_authentication: nil, routing_mode: nil, tags: nil) ⇒ CfnDomainNameProps

Returns a new instance of CfnDomainNameProps.

Parameters:



14
15
16
17
18
19
20
21
22
23
24
25
# File 'api_gatewayv2/cfn_domain_name_props.rb', line 14

def initialize(domain_name:, domain_name_configurations: nil, mutual_tls_authentication: nil, routing_mode: nil, tags: nil)
  @domain_name = domain_name
  Jsii::Type.check_type(@domain_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "domainName")
  @domain_name_configurations = domain_name_configurations
  Jsii::Type.check_type(@domain_name_configurations, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBpZ2F0ZXdheXYyLkNmbkRvbWFpbk5hbWUuRG9tYWluTmFtZUNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "domainNameConfigurations") unless @domain_name_configurations.nil?
  @mutual_tls_authentication = mutual_tls_authentication.is_a?(Hash) ? ::AWSCDK::APIGatewayv2::CfnDomainName::MutualTLSAuthenticationProperty.new(**mutual_tls_authentication.transform_keys(&:to_sym)) : mutual_tls_authentication
  Jsii::Type.check_type(@mutual_tls_authentication, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcGlnYXRld2F5djIuQ2ZuRG9tYWluTmFtZS5NdXR1YWxUbHNBdXRoZW50aWNhdGlvblByb3BlcnR5In1dfX0=")), "mutualTlsAuthentication") unless @mutual_tls_authentication.nil?
  @routing_mode = routing_mode
  Jsii::Type.check_type(@routing_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "routingMode") unless @routing_mode.nil?
  @tags = tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "tags") unless @tags.nil?
end

Instance Attribute Details

#domain_nameString (readonly)

The custom domain name for your API in Amazon API Gateway.

Uppercase letters and the underscore ( _ ) character are not supported.



33
34
35
# File 'api_gatewayv2/cfn_domain_name_props.rb', line 33

def domain_name
  @domain_name
end

#domain_name_configurationsAWSCDK::IResolvable, ... (readonly)

The domain name configurations.



38
39
40
# File 'api_gatewayv2/cfn_domain_name_props.rb', line 38

def domain_name_configurations
  @domain_name_configurations
end

#mutual_tls_authenticationAWSCDK::IResolvable, ... (readonly)

The mutual TLS authentication configuration for a custom domain name.



43
44
45
# File 'api_gatewayv2/cfn_domain_name_props.rb', line 43

def mutual_tls_authentication
  @mutual_tls_authentication
end

#routing_modeString? (readonly)

Note:

Default: - "API_MAPPING_ONLY"

The routing mode API Gateway uses to route traffic to your APIs.



49
50
51
# File 'api_gatewayv2/cfn_domain_name_props.rb', line 49

def routing_mode
  @routing_mode
end

#tagsHash{String => String}? (readonly)

The collection of tags associated with a domain name.



54
55
56
# File 'api_gatewayv2/cfn_domain_name_props.rb', line 54

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



56
57
58
59
60
61
62
63
64
# File 'api_gatewayv2/cfn_domain_name_props.rb', line 56

def self.jsii_properties
  {
    :domain_name => "domainName",
    :domain_name_configurations => "domainNameConfigurations",
    :mutual_tls_authentication => "mutualTlsAuthentication",
    :routing_mode => "routingMode",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



66
67
68
69
70
71
72
73
74
75
76
# File 'api_gatewayv2/cfn_domain_name_props.rb', line 66

def to_jsii
  result = {}
  result.merge!({
    "domainName" => @domain_name,
    "domainNameConfigurations" => @domain_name_configurations,
    "mutualTlsAuthentication" => @mutual_tls_authentication,
    "routingMode" => @routing_mode,
    "tags" => @tags,
  })
  result.compact
end