Class CfnPrivateDnsNamespace

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IConstruct, IDependable, IInspectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:45.600Z") @Stability(Stable) public class CfnPrivateDnsNamespace extends CfnResource implements IInspectable
A CloudFormation AWS::ServiceDiscovery::PrivateDnsNamespace.

Creates a private namespace based on DNS, which is visible only inside a specified Amazon VPC. The namespace defines your service naming scheme. For example, if you name your namespace example.com and name your service backend , the resulting DNS name for the service is backend.example.com . Service instances that are registered using a private DNS namespace can be discovered using either a DiscoverInstances request or using DNS. For the current quota on the number of namespaces that you can create using the same AWS account , see AWS Cloud Map quotas in the AWS Cloud Map Developer Guide .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.servicediscovery.*;
 CfnPrivateDnsNamespace cfnPrivateDnsNamespace = CfnPrivateDnsNamespace.Builder.create(this, "MyCfnPrivateDnsNamespace")
         .name("name")
         .vpc("vpc")
         // the properties below are optional
         .description("description")
         .properties(PropertiesProperty.builder()
                 .dnsProperties(PrivateDnsPropertiesMutableProperty.builder()
                         .soa(SOAProperty.builder()
                                 .ttl(123)
                                 .build())
                         .build())
                 .build())
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .build();
 
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnPrivateDnsNamespace

      protected CfnPrivateDnsNamespace(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnPrivateDnsNamespace

      protected CfnPrivateDnsNamespace(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnPrivateDnsNamespace

      @Stability(Stable) public CfnPrivateDnsNamespace(@NotNull Construct scope, @NotNull String id, @NotNull CfnPrivateDnsNamespaceProps props)
      Create a new AWS::ServiceDiscovery::PrivateDnsNamespace.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      props -
      • resource properties.
      This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector -
      • tree inspector to collect and process attributes.
      This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrArn

      @Stability(Stable) @NotNull public String getAttrArn()
      The Amazon Resource Name (ARN) of the private namespace.
    • getAttrHostedZoneId

      @Stability(Stable) @NotNull public String getAttrHostedZoneId()
      The ID for the Route 53 hosted zone that AWS Cloud Map creates when you create a namespace.
    • getAttrId

      @Stability(Stable) @NotNull public String getAttrId()
      The ID of the private namespace.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      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.

    • getName

      @Stability(Stable) @NotNull public String getName()
      The name that you want to assign to this namespace.

      When you create a private DNS namespace, AWS Cloud Map automatically creates an Amazon RouteĀ 53 private hosted zone that has the same name as the namespace.

    • setName

      @Stability(Stable) public void setName(@NotNull String value)
      The name that you want to assign to this namespace.

      When you create a private DNS namespace, AWS Cloud Map automatically creates an Amazon RouteĀ 53 private hosted zone that has the same name as the namespace.

    • getVpc

      @Stability(Stable) @NotNull public String getVpc()
      The ID of the Amazon VPC that you want to associate the namespace with.
    • setVpc

      @Stability(Stable) public void setVpc(@NotNull String value)
      The ID of the Amazon VPC that you want to associate the namespace with.
    • getDescription

      @Stability(Stable) @Nullable public String getDescription()
      A description for the namespace.
    • setDescription

      @Stability(Stable) public void setDescription(@Nullable String value)
      A description for the namespace.
    • getProperties

      @Stability(Stable) @Nullable public Object getProperties()
      Properties for the private DNS namespace.
    • setProperties

      @Stability(Stable) public void setProperties(@Nullable IResolvable value)
      Properties for the private DNS namespace.
    • setProperties

      @Stability(Stable) public void setProperties(@Nullable CfnPrivateDnsNamespace.PropertiesProperty value)
      Properties for the private DNS namespace.