Class: AWSCDK::Route53::RecordTarget

Inherits:
Jsii::Object
  • Object
show all
Defined in:
route53/record_target.rb

Overview

Type union for a record that accepts multiple types of target.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(values = nil, alias_target = nil) ⇒ RecordTarget

Returns a new instance of RecordTarget.

Parameters:

  • values (Array<String>, nil) (defaults to: nil)

    correspond with the chosen record type (e.g. for 'A' Type, specify one or more IP addresses).

  • alias_target (AWSCDK::Route53::IAliasRecordTarget, nil) (defaults to: nil)

    alias for targets such as CloudFront distribution to route traffic to.



10
11
12
13
14
# File 'route53/record_target.rb', line 10

def initialize(values = nil, alias_target = nil)
  Jsii::Type.check_type(values, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "values") unless values.nil?
  Jsii::Type.check_type(alias_target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfcm91dGU1My5JQWxpYXNSZWNvcmRUYXJnZXQifQ==")), "aliasTarget") unless alias_target.nil?
  Jsii::Object.instance_method(:initialize).bind(self).call(values, alias_target)
end

Class Method Details

.from_alias(alias_target) ⇒ AWSCDK::Route53::RecordTarget

Use an alias as target.

Parameters:

Returns:

  • (AWSCDK::Route53::RecordTarget)


27
28
29
30
# File 'route53/record_target.rb', line 27

def self.from_alias(alias_target)
  Jsii::Type.check_type(alias_target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfcm91dGU1My5JQWxpYXNSZWNvcmRUYXJnZXQifQ==")), "aliasTarget")
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_route53.RecordTarget", "fromAlias", [alias_target])
end

.from_ip_addresses(*ip_addresses) ⇒ AWSCDK::Route53::RecordTarget

Use ip addresses as target.

Parameters:

  • ip_addresses (Array<String>)

Returns:

  • (AWSCDK::Route53::RecordTarget)


36
37
38
39
40
41
# File 'route53/record_target.rb', line 36

def self.from_ip_addresses(*ip_addresses)
  ip_addresses.each_with_index do |item, index|
    Jsii::Type.check_type(item, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ipAddresses[#{index}]")
  end
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_route53.RecordTarget", "fromIpAddresses", [*ip_addresses])
end

.from_values(*values) ⇒ AWSCDK::Route53::RecordTarget

Use string values as target.

Parameters:

  • values (Array<String>)

Returns:

  • (AWSCDK::Route53::RecordTarget)


47
48
49
50
51
52
# File 'route53/record_target.rb', line 47

def self.from_values(*values)
  values.each_with_index do |item, index|
    Jsii::Type.check_type(item, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "values[#{index}]")
  end
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_route53.RecordTarget", "fromValues", [*values])
end

.jsii_overridable_methodsObject



16
17
18
19
20
21
# File 'route53/record_target.rb', line 16

def self.jsii_overridable_methods
  {
    :alias_target => { kind: :property, name: "aliasTarget", is_optional: true },
    :values => { kind: :property, name: "values", is_optional: true },
  }
end

Instance Method Details

#alias_targetAWSCDK::Route53::IAliasRecordTarget?

alias for targets such as CloudFront distribution to route traffic to.



57
58
59
# File 'route53/record_target.rb', line 57

def alias_target()
  jsii_get_property("aliasTarget")
end

#valuesArray<String>?

correspond with the chosen record type (e.g. for 'A' Type, specify one or more IP addresses).

Returns:

  • (Array<String>, nil)


64
65
66
# File 'route53/record_target.rb', line 64

def values()
  jsii_get_property("values")
end