Class: AWSCDK::Route53::HostedZoneProps

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

Overview

Properties of a new 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, vpcs: nil) ⇒ HostedZoneProps

Returns a new instance of HostedZoneProps.

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.

  • vpcs (Array<AWSCDK::EC2::IVPC>, nil) (defaults to: nil)

    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/hosted_zone_props.rb', line 12

def initialize(zone_name:, add_trailing_dot: nil, comment: nil, query_logs_log_group_arn: nil, vpcs: nil)
  @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?
  @vpcs = vpcs
  Jsii::Type.check_type(@vpcs, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lYzIuSVZwYyJ9LCJraW5kIjoiYXJyYXkifX0=")), "vpcs") unless @vpcs.nil?
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/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/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/hosted_zone_props.rb', line 46

def query_logs_log_group_arn
  @query_logs_log_group_arn
end

#vpcsArray<AWSCDK::EC2::IVPC>? (readonly)

Note:

Default: public (no VPCs associated)

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

When you specify this property, a private hosted zone will be created.

You can associate additional VPCs to this private zone using add_vpc(vpc).

Returns:



56
57
58
# File 'route53/hosted_zone_props.rb', line 56

def vpcs
  @vpcs
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/hosted_zone_props.rb', line 31

def zone_name
  @zone_name
end

Class Method Details

.jsii_propertiesObject



58
59
60
61
62
63
64
65
66
# File 'route53/hosted_zone_props.rb', line 58

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

Instance Method Details

#to_jsiiObject



68
69
70
71
72
73
74
75
76
77
78
79
# File 'route53/hosted_zone_props.rb', line 68

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