Class: AWSCDK::ServiceDiscovery::CfnPublicDNSNamespaceProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
service_discovery/cfn_public_dns_namespace_props.rb

Overview

Properties for defining a CfnPublicDnsNamespace.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, description: nil, properties: nil, tags: nil) ⇒ CfnPublicDNSNamespaceProps

Returns a new instance of CfnPublicDNSNamespaceProps.

Parameters:



13
14
15
16
17
18
19
20
21
22
# File 'service_discovery/cfn_public_dns_namespace_props.rb', line 13

def initialize(name:, description: nil, properties: nil, tags: nil)
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @properties = properties.is_a?(Hash) ? ::AWSCDK::ServiceDiscovery::CfnPublicDNSNamespace::PropertiesProperty.new(**properties.transform_keys(&:to_sym)) : properties
  Jsii::Type.check_type(@properties, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZXJ2aWNlZGlzY292ZXJ5LkNmblB1YmxpY0Ruc05hbWVzcGFjZS5Qcm9wZXJ0aWVzUHJvcGVydHkifV19fQ==")), "properties") unless @properties.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#descriptionString? (readonly)

A description for the namespace.



35
36
37
# File 'service_discovery/cfn_public_dns_namespace_props.rb', line 35

def description
  @description
end

#nameString (readonly)

The name that you want to assign to this namespace.

Do not include sensitive information in the name. The name is publicly available using DNS queries.



30
31
32
# File 'service_discovery/cfn_public_dns_namespace_props.rb', line 30

def name
  @name
end

#propertiesAWSCDK::IResolvable, ... (readonly)

Properties for the public DNS namespace.



40
41
42
# File 'service_discovery/cfn_public_dns_namespace_props.rb', line 40

def properties
  @properties
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

The tags for the namespace.

Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.



47
48
49
# File 'service_discovery/cfn_public_dns_namespace_props.rb', line 47

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



49
50
51
52
53
54
55
56
# File 'service_discovery/cfn_public_dns_namespace_props.rb', line 49

def self.jsii_properties
  {
    :name => "name",
    :description => "description",
    :properties => "properties",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



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

def to_jsii
  result = {}
  result.merge!({
    "name" => @name,
    "description" => @description,
    "properties" => @properties,
    "tags" => @tags,
  })
  result.compact
end