Class: AWSCDK::Route53::PrivateHostedZoneProps

Inherits:
CommonHostedZoneProps
  • Object
show all
Defined in:
route53/private_hosted_zone_props.rb

Overview

Properties to create a Route 53 private hosted zone.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(zone_name:, add_trailing_dot: nil, comment: nil, query_logs_log_group_arn: nil, vpc:) ⇒ PrivateHostedZoneProps

Returns a new instance of PrivateHostedZoneProps.

Parameters:

  • zone_name (String)

    The name of the domain.

  • add_trailing_dot (Boolean, nil) (defaults to: nil)

    Whether to add a trailing dot to the zone name.

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

    Any comments that you want to include about the hosted zone.

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

    The Amazon Resource Name (ARN) for the log group that you want Amazon Route 53 to send query logs to.

  • vpc (AWSCDK::EC2::IVPC)

    A VPC that you want to associate with this hosted zone.



12
13
14
15
16
17
18
19
20
21
22
23
# File 'route53/private_hosted_zone_props.rb', line 12

def initialize(zone_name:, add_trailing_dot: nil, comment: nil, query_logs_log_group_arn: nil, vpc:)
  @zone_name = zone_name
  Jsii::Type.check_type(@zone_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "zoneName")
  @add_trailing_dot = add_trailing_dot
  Jsii::Type.check_type(@add_trailing_dot, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "addTrailingDot") unless @add_trailing_dot.nil?
  @comment = comment
  Jsii::Type.check_type(@comment, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "comment") unless @comment.nil?
  @query_logs_log_group_arn = query_logs_log_group_arn
  Jsii::Type.check_type(@query_logs_log_group_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "queryLogsLogGroupArn") unless @query_logs_log_group_arn.nil?
  @vpc = vpc
  Jsii::Type.check_type(@vpc, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWMyLklWcGMifQ==")), "vpc")
end

Instance Attribute Details

#add_trailing_dotBoolean? (readonly)

Note:

Default: true

Whether to add a trailing dot to the zone name.

Returns:

  • (Boolean, nil)


36
37
38
# File 'route53/private_hosted_zone_props.rb', line 36

def add_trailing_dot
  @add_trailing_dot
end

#commentString? (readonly)

Note:

Default: none

Any comments that you want to include about the hosted zone.

Returns:

  • (String, nil)


41
42
43
# File 'route53/private_hosted_zone_props.rb', line 41

def comment
  @comment
end

#query_logs_log_group_arnString? (readonly)

Note:

Default: disabled

The Amazon Resource Name (ARN) for the log group that you want Amazon Route 53 to send query logs to.

Returns:

  • (String, nil)


46
47
48
# File 'route53/private_hosted_zone_props.rb', line 46

def query_logs_log_group_arn
  @query_logs_log_group_arn
end

#vpcAWSCDK::EC2::IVPC (readonly)

A VPC that you want to associate with this hosted zone.

Private hosted zones must be associated with at least one VPC. You can associated additional VPCs using add_vpc(vpc).

Returns:



53
54
55
# File 'route53/private_hosted_zone_props.rb', line 53

def vpc
  @vpc
end

#zone_nameString (readonly)

The name of the domain.

For resource record types that include a domain name, specify a fully qualified domain name.

Returns:

  • (String)


31
32
33
# File 'route53/private_hosted_zone_props.rb', line 31

def zone_name
  @zone_name
end

Class Method Details

.jsii_propertiesObject



55
56
57
58
59
60
61
62
63
# File 'route53/private_hosted_zone_props.rb', line 55

def self.jsii_properties
  {
    :zone_name => "zoneName",
    :add_trailing_dot => "addTrailingDot",
    :comment => "comment",
    :query_logs_log_group_arn => "queryLogsLogGroupArn",
    :vpc => "vpc",
  }
end

Instance Method Details

#to_jsiiObject



65
66
67
68
69
70
71
72
73
74
75
76
# File 'route53/private_hosted_zone_props.rb', line 65

def to_jsii
  result = {}
  result.merge!(super)
  result.merge!({
    "zoneName" => @zone_name,
    "addTrailingDot" => @add_trailing_dot,
    "comment" => @comment,
    "queryLogsLogGroupArn" => @query_logs_log_group_arn,
    "vpc" => @vpc,
  })
  result.compact
end