Class: AWSCDK::CloudFrontOrigins::FunctionURLOrigin

Inherits:
AWSCDK::CloudFront::OriginBase
  • Object
show all
Defined in:
cloud_front_origins/function_url_origin.rb

Overview

An Origin for a Lambda Function URL.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(lambda_function_url, props = nil) ⇒ FunctionURLOrigin

Returns a new instance of FunctionURLOrigin.

Parameters:



10
11
12
13
14
15
# File 'cloud_front_origins/function_url_origin.rb', line 10

def initialize(lambda_function_url, props = nil)
  props = props.is_a?(Hash) ? ::AWSCDK::CloudFrontOrigins::FunctionURLOriginProps.new(**props.transform_keys(&:to_sym)) : props
  Jsii::Type.check_type(lambda_function_url, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfbGFtYmRhLklGdW5jdGlvblVybCJ9")), "lambdaFunctionUrl")
  Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY2xvdWRmcm9udF9vcmlnaW5zLkZ1bmN0aW9uVXJsT3JpZ2luUHJvcHMifQ==")), "props") unless props.nil?
  Jsii::Object.instance_method(:initialize).bind(self).call(lambda_function_url, props)
end

Class Method Details

.jsii_overridable_methodsObject



17
18
19
20
21
22
23
24
25
# File 'cloud_front_origins/function_url_origin.rb', line 17

def self.jsii_overridable_methods
  {
    :bind => { kind: :method, name: "bind", is_optional: false },
    :render_custom_origin_config => { kind: :method, name: "renderCustomOriginConfig", is_optional: false },
    :render_s3_origin_config => { kind: :method, name: "renderS3OriginConfig", is_optional: false },
    :render_vpc_origin_config => { kind: :method, name: "renderVpcOriginConfig", is_optional: false },
    :validate_response_completion_timeout_with_read_timeout => { kind: :method, name: "validateResponseCompletionTimeoutWithReadTimeout", is_optional: false },
  }
end

.with_origin_access_control(lambda_function_url, props = nil) ⇒ AWSCDK::CloudFront::IOrigin

Create a Lambda Function URL Origin with Origin Access Control (OAC) configured.

Parameters:

Returns:



32
33
34
35
36
37
# File 'cloud_front_origins/function_url_origin.rb', line 32

def self.with_origin_access_control(lambda_function_url, props = nil)
  Jsii::Type.check_type(lambda_function_url, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfbGFtYmRhLklGdW5jdGlvblVybCJ9")), "lambdaFunctionUrl")
  props = props.is_a?(Hash) ? ::AWSCDK::CloudFrontOrigins::FunctionURLOriginWithOACProps.new(**props.transform_keys(&:to_sym)) : props
  Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY2xvdWRmcm9udF9vcmlnaW5zLkZ1bmN0aW9uVXJsT3JpZ2luV2l0aE9BQ1Byb3BzIn0=")), "props") unless props.nil?
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_cloudfront_origins.FunctionUrlOrigin", "withOriginAccessControl", [lambda_function_url, props])
end

Instance Method Details

#bind(scope, options) ⇒ AWSCDK::CloudFront::OriginBindConfig

Binds the origin to the associated Distribution.

Can be used to grant permissions, create dependent resources, etc.

Parameters:

Returns:



46
47
48
49
50
51
# File 'cloud_front_origins/function_url_origin.rb', line 46

def bind(scope, options)
  Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope")
  options = options.is_a?(Hash) ? ::AWSCDK::CloudFront::OriginBindOptions.new(**options.transform_keys(&:to_sym)) : options
  Jsii::Type.check_type(options, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY2xvdWRmcm9udC5PcmlnaW5CaW5kT3B0aW9ucyJ9")), "options")
  jsii_call_method("bind", [scope, options])
end

#render_custom_origin_configAWSCDK::CloudFront::CfnDistribution::CustomOriginConfigProperty?



54
55
56
# File 'cloud_front_origins/function_url_origin.rb', line 54

def render_custom_origin_config()
  jsii_call_method("renderCustomOriginConfig", [])
end

#render_s3_origin_configAWSCDK::CloudFront::CfnDistribution::S3OriginConfigProperty?



59
60
61
# File 'cloud_front_origins/function_url_origin.rb', line 59

def render_s3_origin_config()
  jsii_call_method("renderS3OriginConfig", [])
end

#render_vpc_origin_configAWSCDK::CloudFront::CfnDistribution::VPCOriginConfigProperty?



64
65
66
# File 'cloud_front_origins/function_url_origin.rb', line 64

def render_vpc_origin_config()
  jsii_call_method("renderVpcOriginConfig", [])
end

#validate_response_completion_timeout_with_read_timeout(response_completion_timeout = nil, read_timeout = nil) ⇒ void

This method returns an undefined value.

Validates that responseCompletionTimeout is greater than or equal to readTimeout when both are specified.

This method should be called by subclasses that support readTimeout.

Parameters:



75
76
77
78
79
# File 'cloud_front_origins/function_url_origin.rb', line 75

def validate_response_completion_timeout_with_read_timeout(response_completion_timeout = nil, read_timeout = nil)
  Jsii::Type.check_type(response_completion_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "responseCompletionTimeout") unless response_completion_timeout.nil?
  Jsii::Type.check_type(read_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "readTimeout") unless read_timeout.nil?
  jsii_call_method("validateResponseCompletionTimeoutWithReadTimeout", [response_completion_timeout, read_timeout])
end