Class: AWSCDK::APIGatewayv2::WebSocketAPIProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::APIGatewayv2::WebSocketAPIProps
- Defined in:
- api_gatewayv2/web_socket_api_props.rb
Overview
Props for WebSocket API.
Instance Attribute Summary collapse
-
#api_key_selection_expression ⇒ AWSCDK::APIGatewayv2::WebSocketAPIKeySelectionExpression?
readonly
An API key selection expression.
-
#api_name ⇒ String?
readonly
Name for the WebSocket API resource.
-
#connect_route_options ⇒ AWSCDK::APIGatewayv2::WebSocketRouteOptions?
readonly
Options to configure a '$connect' route.
-
#default_route_options ⇒ AWSCDK::APIGatewayv2::WebSocketRouteOptions?
readonly
Options to configure a '$default' route.
-
#description ⇒ String?
readonly
The description of the API.
-
#disable_schema_validation ⇒ Boolean?
readonly
Avoid validating models when creating a deployment.
-
#disconnect_route_options ⇒ AWSCDK::APIGatewayv2::WebSocketRouteOptions?
readonly
Options to configure a '$disconnect' route.
-
#ip_address_type ⇒ AWSCDK::APIGatewayv2::IPAddressType?
readonly
The IP address types that can invoke the API.
-
#route_selection_expression ⇒ String?
readonly
The route selection expression for the API.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(api_key_selection_expression: nil, api_name: nil, connect_route_options: nil, default_route_options: nil, description: nil, disable_schema_validation: nil, disconnect_route_options: nil, ip_address_type: nil, route_selection_expression: nil) ⇒ WebSocketAPIProps
constructor
A new instance of WebSocketAPIProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(api_key_selection_expression: nil, api_name: nil, connect_route_options: nil, default_route_options: nil, description: nil, disable_schema_validation: nil, disconnect_route_options: nil, ip_address_type: nil, route_selection_expression: nil) ⇒ WebSocketAPIProps
Returns a new instance of WebSocketAPIProps.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 16 def initialize(api_key_selection_expression: nil, api_name: nil, connect_route_options: nil, default_route_options: nil, description: nil, disable_schema_validation: nil, disconnect_route_options: nil, ip_address_type: nil, route_selection_expression: nil) @api_key_selection_expression = api_key_selection_expression Jsii::Type.check_type(@api_key_selection_expression, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBpZ2F0ZXdheXYyLldlYlNvY2tldEFwaUtleVNlbGVjdGlvbkV4cHJlc3Npb24ifQ==")), "apiKeySelectionExpression") unless @api_key_selection_expression.nil? @api_name = api_name Jsii::Type.check_type(@api_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "apiName") unless @api_name.nil? @connect_route_options = .is_a?(Hash) ? ::AWSCDK::APIGatewayv2::WebSocketRouteOptions.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(@connect_route_options, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBpZ2F0ZXdheXYyLldlYlNvY2tldFJvdXRlT3B0aW9ucyJ9")), "connectRouteOptions") unless @connect_route_options.nil? @default_route_options = .is_a?(Hash) ? ::AWSCDK::APIGatewayv2::WebSocketRouteOptions.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(@default_route_options, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBpZ2F0ZXdheXYyLldlYlNvY2tldFJvdXRlT3B0aW9ucyJ9")), "defaultRouteOptions") unless @default_route_options.nil? @description = description Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil? @disable_schema_validation = disable_schema_validation Jsii::Type.check_type(@disable_schema_validation, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "disableSchemaValidation") unless @disable_schema_validation.nil? @disconnect_route_options = .is_a?(Hash) ? ::AWSCDK::APIGatewayv2::WebSocketRouteOptions.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(@disconnect_route_options, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBpZ2F0ZXdheXYyLldlYlNvY2tldFJvdXRlT3B0aW9ucyJ9")), "disconnectRouteOptions") unless @disconnect_route_options.nil? @ip_address_type = ip_address_type Jsii::Type.check_type(@ip_address_type, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBpZ2F0ZXdheXYyLklwQWRkcmVzc1R5cGUifQ==")), "ipAddressType") unless @ip_address_type.nil? @route_selection_expression = route_selection_expression Jsii::Type.check_type(@route_selection_expression, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "routeSelectionExpression") unless @route_selection_expression.nil? end |
Instance Attribute Details
#api_key_selection_expression ⇒ AWSCDK::APIGatewayv2::WebSocketAPIKeySelectionExpression? (readonly)
Default: - Key is not required to access these APIs
An API key selection expression.
Providing this option will require an API Key be provided to access the API.
43 44 45 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 43 def api_key_selection_expression @api_key_selection_expression end |
#api_name ⇒ String? (readonly)
Default: - id of the WebSocketApi construct.
Name for the WebSocket API resource.
48 49 50 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 48 def api_name @api_name end |
#connect_route_options ⇒ AWSCDK::APIGatewayv2::WebSocketRouteOptions? (readonly)
Default: - no '$connect' route configured
Options to configure a '$connect' route.
53 54 55 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 53 def @connect_route_options end |
#default_route_options ⇒ AWSCDK::APIGatewayv2::WebSocketRouteOptions? (readonly)
Default: - no '$default' route configured
Options to configure a '$default' route.
58 59 60 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 58 def @default_route_options end |
#description ⇒ String? (readonly)
Default: - none
The description of the API.
63 64 65 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 63 def description @description end |
#disable_schema_validation ⇒ Boolean? (readonly)
Default: false
Avoid validating models when creating a deployment.
68 69 70 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 68 def disable_schema_validation @disable_schema_validation end |
#disconnect_route_options ⇒ AWSCDK::APIGatewayv2::WebSocketRouteOptions? (readonly)
Default: - no '$disconnect' route configured
Options to configure a '$disconnect' route.
73 74 75 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 73 def @disconnect_route_options end |
#ip_address_type ⇒ AWSCDK::APIGatewayv2::IPAddressType? (readonly)
Default: undefined - AWS default is IPV4
The IP address types that can invoke the API.
79 80 81 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 79 def ip_address_type @ip_address_type end |
#route_selection_expression ⇒ String? (readonly)
Default: '$request.body.action'
The route selection expression for the API.
84 85 86 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 84 def route_selection_expression @route_selection_expression end |
Class Method Details
.jsii_properties ⇒ Object
86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 86 def self.jsii_properties { :api_key_selection_expression => "apiKeySelectionExpression", :api_name => "apiName", :connect_route_options => "connectRouteOptions", :default_route_options => "defaultRouteOptions", :description => "description", :disable_schema_validation => "disableSchemaValidation", :disconnect_route_options => "disconnectRouteOptions", :ip_address_type => "ipAddressType", :route_selection_expression => "routeSelectionExpression", } end |
Instance Method Details
#to_jsii ⇒ Object
100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 |
# File 'api_gatewayv2/web_socket_api_props.rb', line 100 def to_jsii result = {} result.merge!({ "apiKeySelectionExpression" => @api_key_selection_expression, "apiName" => @api_name, "connectRouteOptions" => @connect_route_options, "defaultRouteOptions" => @default_route_options, "description" => @description, "disableSchemaValidation" => @disable_schema_validation, "disconnectRouteOptions" => @disconnect_route_options, "ipAddressType" => @ip_address_type, "routeSelectionExpression" => @route_selection_expression, }) result.compact end |