Class: AWSCDK::CloudFront::VPCOriginProps

Inherits:
VPCOriginOptions
  • Object
show all
Defined in:
cloud_front/vpc_origin_props.rb

Overview

VPC origin endpoint configuration.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(http_port: nil, https_port: nil, origin_ssl_protocols: nil, protocol_policy: nil, vpc_origin_name: nil, endpoint:) ⇒ VPCOriginProps

Returns a new instance of VPCOriginProps.

Parameters:

  • http_port (Numeric, nil) (defaults to: nil)

    The HTTP port for the CloudFront VPC origin endpoint configuration.

  • https_port (Numeric, nil) (defaults to: nil)

    The HTTPS port of the CloudFront VPC origin endpoint configuration.

  • origin_ssl_protocols (Array<AWSCDK::CloudFront::OriginSSLPolicy>, nil) (defaults to: nil)

    A list that contains allowed SSL/TLS protocols for this distribution.

  • protocol_policy (AWSCDK::CloudFront::OriginProtocolPolicy, nil) (defaults to: nil)

    The origin protocol policy for the CloudFront VPC origin endpoint configuration.

  • vpc_origin_name (String, nil) (defaults to: nil)

    The name of the CloudFront VPC origin endpoint configuration.

  • endpoint (AWSCDK::CloudFront::VPCOriginEndpoint)

    The VPC origin endpoint.



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'cloud_front/vpc_origin_props.rb', line 13

def initialize(http_port: nil, https_port: nil, origin_ssl_protocols: nil, protocol_policy: nil, vpc_origin_name: nil, endpoint:)
  @http_port = http_port
  Jsii::Type.check_type(@http_port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "httpPort") unless @http_port.nil?
  @https_port = https_port
  Jsii::Type.check_type(@https_port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "httpsPort") unless @https_port.nil?
  @origin_ssl_protocols = origin_ssl_protocols
  Jsii::Type.check_type(@origin_ssl_protocols, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jbG91ZGZyb250Lk9yaWdpblNzbFBvbGljeSJ9LCJraW5kIjoiYXJyYXkifX0=")), "originSslProtocols") unless @origin_ssl_protocols.nil?
  @protocol_policy = protocol_policy
  Jsii::Type.check_type(@protocol_policy, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY2xvdWRmcm9udC5PcmlnaW5Qcm90b2NvbFBvbGljeSJ9")), "protocolPolicy") unless @protocol_policy.nil?
  @vpc_origin_name = vpc_origin_name
  Jsii::Type.check_type(@vpc_origin_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "vpcOriginName") unless @vpc_origin_name.nil?
  @endpoint = endpoint
  Jsii::Type.check_type(@endpoint, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY2xvdWRmcm9udC5WcGNPcmlnaW5FbmRwb2ludCJ9")), "endpoint")
end

Instance Attribute Details

#endpointAWSCDK::CloudFront::VPCOriginEndpoint (readonly)

The VPC origin endpoint.



56
57
58
# File 'cloud_front/vpc_origin_props.rb', line 56

def endpoint
  @endpoint
end

#http_portNumeric? (readonly)

Note:

Default: 80

The HTTP port for the CloudFront VPC origin endpoint configuration.

Returns:

  • (Numeric, nil)


32
33
34
# File 'cloud_front/vpc_origin_props.rb', line 32

def http_port
  @http_port
end

#https_portNumeric? (readonly)

Note:

Default: 443

The HTTPS port of the CloudFront VPC origin endpoint configuration.

Returns:

  • (Numeric, nil)


37
38
39
# File 'cloud_front/vpc_origin_props.rb', line 37

def https_port
  @https_port
end

#origin_ssl_protocolsArray<AWSCDK::CloudFront::OriginSSLPolicy>? (readonly)

Note:

Default: - TLSv1.2

A list that contains allowed SSL/TLS protocols for this distribution.

Returns:



42
43
44
# File 'cloud_front/vpc_origin_props.rb', line 42

def origin_ssl_protocols
  @origin_ssl_protocols
end

#protocol_policyAWSCDK::CloudFront::OriginProtocolPolicy? (readonly)

Note:

Default: OriginProtocolPolicy.MATCH_VIEWER

The origin protocol policy for the CloudFront VPC origin endpoint configuration.



47
48
49
# File 'cloud_front/vpc_origin_props.rb', line 47

def protocol_policy
  @protocol_policy
end

#vpc_origin_nameString? (readonly)

Note:

Default: - generated from the id

The name of the CloudFront VPC origin endpoint configuration.

Returns:

  • (String, nil)


52
53
54
# File 'cloud_front/vpc_origin_props.rb', line 52

def vpc_origin_name
  @vpc_origin_name
end

Class Method Details

.jsii_propertiesObject



58
59
60
61
62
63
64
65
66
67
# File 'cloud_front/vpc_origin_props.rb', line 58

def self.jsii_properties
  {
    :http_port => "httpPort",
    :https_port => "httpsPort",
    :origin_ssl_protocols => "originSslProtocols",
    :protocol_policy => "protocolPolicy",
    :vpc_origin_name => "vpcOriginName",
    :endpoint => "endpoint",
  }
end

Instance Method Details

#to_jsiiObject



69
70
71
72
73
74
75
76
77
78
79
80
81
# File 'cloud_front/vpc_origin_props.rb', line 69

def to_jsii
  result = {}
  result.merge!(super)
  result.merge!({
    "httpPort" => @http_port,
    "httpsPort" => @https_port,
    "originSslProtocols" => @origin_ssl_protocols,
    "protocolPolicy" => @protocol_policy,
    "vpcOriginName" => @vpc_origin_name,
    "endpoint" => @endpoint,
  })
  result.compact
end