Class PublicHostedZoneProps.Builder

java.lang.Object
software.amazon.awscdk.services.route53.PublicHostedZoneProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<PublicHostedZoneProps>
Enclosing interface:
PublicHostedZoneProps

@Stability(Stable) public static final class PublicHostedZoneProps.Builder extends Object implements software.amazon.jsii.Builder<PublicHostedZoneProps>
A builder for PublicHostedZoneProps
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • caaAmazon

      @Stability(Stable) public PublicHostedZoneProps.Builder caaAmazon(Boolean caaAmazon)
      Parameters:
      caaAmazon - Whether to create a CAA record to restrict certificate authorities allowed to issue certificates for this domain to Amazon only.
      Returns:
      this
    • crossAccountZoneDelegationPrincipal

      @Stability(Deprecated) @Deprecated public PublicHostedZoneProps.Builder crossAccountZoneDelegationPrincipal(IPrincipal crossAccountZoneDelegationPrincipal)
      Deprecated.
      Create the Role yourself and call `hostedZone.grantDelegation()`.
      Parameters:
      crossAccountZoneDelegationPrincipal - A principal which is trusted to assume a role for zone delegation. If supplied, this will create a Role in the same account as the Hosted Zone, which can be assumed by the CrossAccountZoneDelegationRecord to create a delegation record to a zone in a different account.

      Be sure to indicate the account(s) that you trust to create delegation records, using either iam.AccountPrincipal or iam.OrganizationPrincipal.

      If you are planning to use iam.ServicePrincipals here, be sure to include region-specific service principals for every opt-in region you are going to be delegating to; or don't use this feature and create separate roles with appropriate permissions for every opt-in region instead.

      Returns:
      this
    • crossAccountZoneDelegationRoleName

      @Stability(Deprecated) @Deprecated public PublicHostedZoneProps.Builder crossAccountZoneDelegationRoleName(String crossAccountZoneDelegationRoleName)
      Deprecated.
      Create the Role yourself and call `hostedZone.grantDelegation()`.
      Parameters:
      crossAccountZoneDelegationRoleName - The name of the role created for cross account delegation.
      Returns:
      this
    • zoneName

      @Stability(Stable) public PublicHostedZoneProps.Builder zoneName(String zoneName)
      Parameters:
      zoneName - The name of the domain. This parameter is required. For resource record types that include a domain name, specify a fully qualified domain name.
      Returns:
      this
    • addTrailingDot

      @Stability(Stable) public PublicHostedZoneProps.Builder addTrailingDot(Boolean addTrailingDot)
      Parameters:
      addTrailingDot - Whether to add a trailing dot to the zone name.
      Returns:
      this
    • comment

      @Stability(Stable) public PublicHostedZoneProps.Builder comment(String comment)
      Parameters:
      comment - Any comments that you want to include about the hosted zone.
      Returns:
      this
    • queryLogsLogGroupArn

      @Stability(Stable) public PublicHostedZoneProps.Builder queryLogsLogGroupArn(String queryLogsLogGroupArn)
      Parameters:
      queryLogsLogGroupArn - The Amazon Resource Name (ARN) for the log group that you want Amazon Route 53 to send query logs to.
      Returns:
      this
    • build

      @Stability(Stable) public PublicHostedZoneProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<PublicHostedZoneProps>
      Returns:
      a new instance of PublicHostedZoneProps
      Throws:
      NullPointerException - if any required attribute was not provided