Class: AWSCDK::CloudFrontOrigins::FunctionURLOriginWithOACProps
- Inherits:
-
FunctionURLOriginProps
- Object
- FunctionURLOriginProps
- AWSCDK::CloudFrontOrigins::FunctionURLOriginWithOACProps
- Defined in:
- cloud_front_origins/function_url_origin_with_oac_props.rb
Overview
Properties for configuring a Lambda Functions URLs with OAC.
Instance Attribute Summary collapse
-
#connection_attempts ⇒ Numeric?
readonly
The number of times that CloudFront attempts to connect to the origin;.
-
#connection_timeout ⇒ AWSCDK::Duration?
readonly
The number of seconds that CloudFront waits when trying to establish a connection to the origin.
-
#custom_headers ⇒ Hash{String => String}?
readonly
A list of HTTP header names and values that CloudFront adds to requests it sends to the origin.
-
#ip_address_type ⇒ AWSCDK::CloudFront::OriginIPAddressType?
readonly
Specifies which IP protocol CloudFront uses when connecting to your origin.
-
#keepalive_timeout ⇒ AWSCDK::Duration?
readonly
Specifies how long, in seconds, CloudFront persists its connection to the origin.
-
#origin_access_control ⇒ AWSCDK::Interfaces::AWSCloudfront::IOriginAccessControlRef?
readonly
An optional Origin Access Control.
-
#origin_access_control_id ⇒ String?
readonly
The unique identifier of an origin access control for this origin.
-
#origin_id ⇒ String?
readonly
A unique identifier for the origin.
-
#origin_path ⇒ String?
readonly
An optional path that CloudFront appends to the origin domain name when CloudFront requests content from the origin.
-
#origin_shield_enabled ⇒ Boolean?
readonly
Origin Shield is enabled by setting originShieldRegion to a valid region, after this to disable Origin Shield again you must set this flag to false.
-
#origin_shield_region ⇒ String?
readonly
When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance.
-
#read_timeout ⇒ AWSCDK::Duration?
readonly
Specifies how long, in seconds, CloudFront waits for a response from the origin.
-
#response_completion_timeout ⇒ AWSCDK::Duration?
readonly
The time that a request from CloudFront to the origin can stay open and wait for a response.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(connection_attempts: nil, connection_timeout: nil, custom_headers: nil, origin_access_control_id: nil, origin_id: nil, origin_shield_enabled: nil, origin_shield_region: nil, response_completion_timeout: nil, origin_path: nil, ip_address_type: nil, keepalive_timeout: nil, read_timeout: nil, origin_access_control: nil) ⇒ FunctionURLOriginWithOACProps
constructor
A new instance of FunctionURLOriginWithOACProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(connection_attempts: nil, connection_timeout: nil, custom_headers: nil, origin_access_control_id: nil, origin_id: nil, origin_shield_enabled: nil, origin_shield_region: nil, response_completion_timeout: nil, origin_path: nil, ip_address_type: nil, keepalive_timeout: nil, read_timeout: nil, origin_access_control: nil) ⇒ FunctionURLOriginWithOACProps
Returns a new instance of FunctionURLOriginWithOACProps.
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 20 def initialize(connection_attempts: nil, connection_timeout: nil, custom_headers: nil, origin_access_control_id: nil, origin_id: nil, origin_shield_enabled: nil, origin_shield_region: nil, response_completion_timeout: nil, origin_path: nil, ip_address_type: nil, keepalive_timeout: nil, read_timeout: nil, origin_access_control: nil) @connection_attempts = connection_attempts Jsii::Type.check_type(@connection_attempts, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "connectionAttempts") unless @connection_attempts.nil? @connection_timeout = connection_timeout Jsii::Type.check_type(@connection_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "connectionTimeout") unless @connection_timeout.nil? @custom_headers = custom_headers Jsii::Type.check_type(@custom_headers, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "customHeaders") unless @custom_headers.nil? @origin_access_control_id = origin_access_control_id Jsii::Type.check_type(@origin_access_control_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "originAccessControlId") unless @origin_access_control_id.nil? @origin_id = origin_id Jsii::Type.check_type(@origin_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "originId") unless @origin_id.nil? @origin_shield_enabled = origin_shield_enabled Jsii::Type.check_type(@origin_shield_enabled, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "originShieldEnabled") unless @origin_shield_enabled.nil? @origin_shield_region = origin_shield_region Jsii::Type.check_type(@origin_shield_region, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "originShieldRegion") unless @origin_shield_region.nil? @response_completion_timeout = response_completion_timeout Jsii::Type.check_type(@response_completion_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "responseCompletionTimeout") unless @response_completion_timeout.nil? @origin_path = origin_path Jsii::Type.check_type(@origin_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "originPath") unless @origin_path.nil? @ip_address_type = ip_address_type Jsii::Type.check_type(@ip_address_type, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY2xvdWRmcm9udC5PcmlnaW5JcEFkZHJlc3NUeXBlIn0=")), "ipAddressType") unless @ip_address_type.nil? @keepalive_timeout = keepalive_timeout Jsii::Type.check_type(@keepalive_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "keepaliveTimeout") unless @keepalive_timeout.nil? @read_timeout = read_timeout Jsii::Type.check_type(@read_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "readTimeout") unless @read_timeout.nil? @origin_access_control = origin_access_control Jsii::Type.check_type(@origin_access_control, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19jbG91ZGZyb250LklPcmlnaW5BY2Nlc3NDb250cm9sUmVmIn0=")), "originAccessControl") unless @origin_access_control.nil? end |
Instance Attribute Details
#connection_attempts ⇒ Numeric? (readonly)
Default: 3
The number of times that CloudFront attempts to connect to the origin;
valid values are 1, 2, or 3 attempts.
55 56 57 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 55 def connection_attempts @connection_attempts end |
#connection_timeout ⇒ AWSCDK::Duration? (readonly)
Default: Duration.seconds(10)
The number of seconds that CloudFront waits when trying to establish a connection to the origin.
Valid values are 1-10 seconds, inclusive.
62 63 64 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 62 def connection_timeout @connection_timeout end |
#custom_headers ⇒ Hash{String => String}? (readonly)
Default: {}
A list of HTTP header names and values that CloudFront adds to requests it sends to the origin.
67 68 69 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 67 def custom_headers @custom_headers end |
#ip_address_type ⇒ AWSCDK::CloudFront::OriginIPAddressType? (readonly)
Default: OriginIpAddressType.IPV4
Specifies which IP protocol CloudFront uses when connecting to your origin.
If your origin uses both IPv4 and IPv6 protocols, you can choose dualstack to help optimize reliability.
114 115 116 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 114 def ip_address_type @ip_address_type end |
#keepalive_timeout ⇒ AWSCDK::Duration? (readonly)
Default: Duration.seconds(5)
Specifies how long, in seconds, CloudFront persists its connection to the origin.
The valid range is from 1 to 180 seconds, inclusive.
Note that values over 60 seconds are possible only after a limit increase request for the origin response timeout quota has been approved in the target account; otherwise, values over 60 seconds will produce an error at deploy time.
124 125 126 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 124 def keepalive_timeout @keepalive_timeout end |
#origin_access_control ⇒ AWSCDK::Interfaces::AWSCloudfront::IOriginAccessControlRef? (readonly)
Default: - an Origin Access Control will be created.
An optional Origin Access Control.
139 140 141 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 139 def origin_access_control @origin_access_control end |
#origin_access_control_id ⇒ String? (readonly)
Default: - no origin access control
The unique identifier of an origin access control for this origin.
72 73 74 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 72 def origin_access_control_id @origin_access_control_id end |
#origin_id ⇒ String? (readonly)
Default: - an originid will be generated for you
A unique identifier for the origin.
This value must be unique within the distribution.
79 80 81 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 79 def origin_id @origin_id end |
#origin_path ⇒ String? (readonly)
Default: '/'
An optional path that CloudFront appends to the origin domain name when CloudFront requests content from the origin.
Must begin, but not end, with '/' (e.g., '/production/images').
107 108 109 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 107 def origin_path @origin_path end |
#origin_shield_enabled ⇒ Boolean? (readonly)
Default: - true
Origin Shield is enabled by setting originShieldRegion to a valid region, after this to disable Origin Shield again you must set this flag to false.
84 85 86 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 84 def origin_shield_enabled @origin_shield_enabled end |
#origin_shield_region ⇒ String? (readonly)
Default: - origin shield not enabled
When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance.
90 91 92 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 90 def origin_shield_region @origin_shield_region end |
#read_timeout ⇒ AWSCDK::Duration? (readonly)
Default: Duration.seconds(30)
Specifies how long, in seconds, CloudFront waits for a response from the origin.
The valid range is from 1 to 180 seconds, inclusive.
Note that values over 60 seconds are possible only after a limit increase request for the origin response timeout quota has been approved in the target account; otherwise, values over 60 seconds will produce an error at deploy time.
134 135 136 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 134 def read_timeout @read_timeout end |
#response_completion_timeout ⇒ AWSCDK::Duration? (readonly)
Default: undefined - AWS CloudFront default is not enforcing a maximum value
The time that a request from CloudFront to the origin can stay open and wait for a response.
If the complete response isn't received from the origin by this time, CloudFront ends the connection.
Valid values are 1-3600 seconds, inclusive.
100 101 102 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 100 def response_completion_timeout @response_completion_timeout end |
Class Method Details
.jsii_properties ⇒ Object
141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 141 def self.jsii_properties { :connection_attempts => "connectionAttempts", :connection_timeout => "connectionTimeout", :custom_headers => "customHeaders", :origin_access_control_id => "originAccessControlId", :origin_id => "originId", :origin_shield_enabled => "originShieldEnabled", :origin_shield_region => "originShieldRegion", :response_completion_timeout => "responseCompletionTimeout", :origin_path => "originPath", :ip_address_type => "ipAddressType", :keepalive_timeout => "keepaliveTimeout", :read_timeout => "readTimeout", :origin_access_control => "originAccessControl", } end |
Instance Method Details
#to_jsii ⇒ Object
159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 |
# File 'cloud_front_origins/function_url_origin_with_oac_props.rb', line 159 def to_jsii result = {} result.merge!(super) result.merge!({ "connectionAttempts" => @connection_attempts, "connectionTimeout" => @connection_timeout, "customHeaders" => @custom_headers, "originAccessControlId" => @origin_access_control_id, "originId" => @origin_id, "originShieldEnabled" => @origin_shield_enabled, "originShieldRegion" => @origin_shield_region, "responseCompletionTimeout" => @response_completion_timeout, "originPath" => @origin_path, "ipAddressType" => @ip_address_type, "keepaliveTimeout" => @keepalive_timeout, "readTimeout" => @read_timeout, "originAccessControl" => @origin_access_control, }) result.compact end |