All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.aws.route53.inputs.RecordState Maven / Gradle / Ivy

// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.aws.route53.inputs;

import com.pulumi.aws.route53.enums.RecordType;
import com.pulumi.aws.route53.inputs.RecordAliasArgs;
import com.pulumi.aws.route53.inputs.RecordCidrRoutingPolicyArgs;
import com.pulumi.aws.route53.inputs.RecordFailoverRoutingPolicyArgs;
import com.pulumi.aws.route53.inputs.RecordGeolocationRoutingPolicyArgs;
import com.pulumi.aws.route53.inputs.RecordGeoproximityRoutingPolicyArgs;
import com.pulumi.aws.route53.inputs.RecordLatencyRoutingPolicyArgs;
import com.pulumi.aws.route53.inputs.RecordWeightedRoutingPolicyArgs;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class RecordState extends com.pulumi.resources.ResourceArgs {

    public static final RecordState Empty = new RecordState();

    /**
     * An alias block. Conflicts with `ttl` & `records`.
     * Documented below.
     * 
     */
    @Import(name="aliases")
    private @Nullable Output> aliases;

    /**
     * @return An alias block. Conflicts with `ttl` & `records`.
     * Documented below.
     * 
     */
    public Optional>> aliases() {
        return Optional.ofNullable(this.aliases);
    }

    /**
     * Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. `false` by default. This configuration is not recommended for most environments.
     * 
     * Exactly one of `records` or `alias` must be specified: this determines whether it's an alias record.
     * 
     */
    @Import(name="allowOverwrite")
    private @Nullable Output allowOverwrite;

    /**
     * @return Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. `false` by default. This configuration is not recommended for most environments.
     * 
     * Exactly one of `records` or `alias` must be specified: this determines whether it's an alias record.
     * 
     */
    public Optional> allowOverwrite() {
        return Optional.ofNullable(this.allowOverwrite);
    }

    /**
     * A block indicating a routing policy based on the IP network ranges of requestors. Conflicts with any other routing policy. Documented below.
     * 
     */
    @Import(name="cidrRoutingPolicy")
    private @Nullable Output cidrRoutingPolicy;

    /**
     * @return A block indicating a routing policy based on the IP network ranges of requestors. Conflicts with any other routing policy. Documented below.
     * 
     */
    public Optional> cidrRoutingPolicy() {
        return Optional.ofNullable(this.cidrRoutingPolicy);
    }

    /**
     * A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
     * 
     */
    @Import(name="failoverRoutingPolicies")
    private @Nullable Output> failoverRoutingPolicies;

    /**
     * @return A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
     * 
     */
    public Optional>> failoverRoutingPolicies() {
        return Optional.ofNullable(this.failoverRoutingPolicies);
    }

    /**
     * [FQDN](https://en.wikipedia.org/wiki/Fully_qualified_domain_name) built using the zone domain and `name`.
     * 
     */
    @Import(name="fqdn")
    private @Nullable Output fqdn;

    /**
     * @return [FQDN](https://en.wikipedia.org/wiki/Fully_qualified_domain_name) built using the zone domain and `name`.
     * 
     */
    public Optional> fqdn() {
        return Optional.ofNullable(this.fqdn);
    }

    /**
     * A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
     * 
     */
    @Import(name="geolocationRoutingPolicies")
    private @Nullable Output> geolocationRoutingPolicies;

    /**
     * @return A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
     * 
     */
    public Optional>> geolocationRoutingPolicies() {
        return Optional.ofNullable(this.geolocationRoutingPolicies);
    }

    /**
     * A block indicating a routing policy based on the geoproximity of the requestor. Conflicts with any other routing policy. Documented below.
     * 
     */
    @Import(name="geoproximityRoutingPolicy")
    private @Nullable Output geoproximityRoutingPolicy;

    /**
     * @return A block indicating a routing policy based on the geoproximity of the requestor. Conflicts with any other routing policy. Documented below.
     * 
     */
    public Optional> geoproximityRoutingPolicy() {
        return Optional.ofNullable(this.geoproximityRoutingPolicy);
    }

    /**
     * The health check the record should be associated with.
     * 
     */
    @Import(name="healthCheckId")
    private @Nullable Output healthCheckId;

    /**
     * @return The health check the record should be associated with.
     * 
     */
    public Optional> healthCheckId() {
        return Optional.ofNullable(this.healthCheckId);
    }

    /**
     * A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
     * 
     */
    @Import(name="latencyRoutingPolicies")
    private @Nullable Output> latencyRoutingPolicies;

    /**
     * @return A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
     * 
     */
    public Optional>> latencyRoutingPolicies() {
        return Optional.ofNullable(this.latencyRoutingPolicies);
    }

    /**
     * Set to `true` to indicate a multivalue answer routing policy. Conflicts with any other routing policy.
     * 
     */
    @Import(name="multivalueAnswerRoutingPolicy")
    private @Nullable Output multivalueAnswerRoutingPolicy;

    /**
     * @return Set to `true` to indicate a multivalue answer routing policy. Conflicts with any other routing policy.
     * 
     */
    public Optional> multivalueAnswerRoutingPolicy() {
        return Optional.ofNullable(this.multivalueAnswerRoutingPolicy);
    }

    /**
     * The name of the record.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return The name of the record.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add `\"\"` inside the provider configuration string (e.g., `"first255characters\"\"morecharacters"`).
     * 
     */
    @Import(name="records")
    private @Nullable Output> records;

    /**
     * @return A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add `\"\"` inside the provider configuration string (e.g., `"first255characters\"\"morecharacters"`).
     * 
     */
    public Optional>> records() {
        return Optional.ofNullable(this.records);
    }

    /**
     * Unique identifier to differentiate records with routing policies from one another. Required if using `cidr_routing_policy`, `failover_routing_policy`, `geolocation_routing_policy`,`geoproximity_routing_policy`, `latency_routing_policy`, `multivalue_answer_routing_policy`, or `weighted_routing_policy`.
     * 
     */
    @Import(name="setIdentifier")
    private @Nullable Output setIdentifier;

    /**
     * @return Unique identifier to differentiate records with routing policies from one another. Required if using `cidr_routing_policy`, `failover_routing_policy`, `geolocation_routing_policy`,`geoproximity_routing_policy`, `latency_routing_policy`, `multivalue_answer_routing_policy`, or `weighted_routing_policy`.
     * 
     */
    public Optional> setIdentifier() {
        return Optional.ofNullable(this.setIdentifier);
    }

    /**
     * The TTL of the record.
     * 
     */
    @Import(name="ttl")
    private @Nullable Output ttl;

    /**
     * @return The TTL of the record.
     * 
     */
    public Optional> ttl() {
        return Optional.ofNullable(this.ttl);
    }

    /**
     * The record type. Valid values are `A`, `AAAA`, `CAA`, `CNAME`, `DS`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV` and `TXT`.
     * 
     */
    @Import(name="type")
    private @Nullable Output> type;

    /**
     * @return The record type. Valid values are `A`, `AAAA`, `CAA`, `CNAME`, `DS`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV` and `TXT`.
     * 
     */
    public Optional>> type() {
        return Optional.ofNullable(this.type);
    }

    /**
     * A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
     * 
     */
    @Import(name="weightedRoutingPolicies")
    private @Nullable Output> weightedRoutingPolicies;

    /**
     * @return A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
     * 
     */
    public Optional>> weightedRoutingPolicies() {
        return Optional.ofNullable(this.weightedRoutingPolicies);
    }

    /**
     * The ID of the hosted zone to contain this record.
     * 
     */
    @Import(name="zoneId")
    private @Nullable Output zoneId;

    /**
     * @return The ID of the hosted zone to contain this record.
     * 
     */
    public Optional> zoneId() {
        return Optional.ofNullable(this.zoneId);
    }

    private RecordState() {}

    private RecordState(RecordState $) {
        this.aliases = $.aliases;
        this.allowOverwrite = $.allowOverwrite;
        this.cidrRoutingPolicy = $.cidrRoutingPolicy;
        this.failoverRoutingPolicies = $.failoverRoutingPolicies;
        this.fqdn = $.fqdn;
        this.geolocationRoutingPolicies = $.geolocationRoutingPolicies;
        this.geoproximityRoutingPolicy = $.geoproximityRoutingPolicy;
        this.healthCheckId = $.healthCheckId;
        this.latencyRoutingPolicies = $.latencyRoutingPolicies;
        this.multivalueAnswerRoutingPolicy = $.multivalueAnswerRoutingPolicy;
        this.name = $.name;
        this.records = $.records;
        this.setIdentifier = $.setIdentifier;
        this.ttl = $.ttl;
        this.type = $.type;
        this.weightedRoutingPolicies = $.weightedRoutingPolicies;
        this.zoneId = $.zoneId;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(RecordState defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private RecordState $;

        public Builder() {
            $ = new RecordState();
        }

        public Builder(RecordState defaults) {
            $ = new RecordState(Objects.requireNonNull(defaults));
        }

        /**
         * @param aliases An alias block. Conflicts with `ttl` & `records`.
         * Documented below.
         * 
         * @return builder
         * 
         */
        public Builder aliases(@Nullable Output> aliases) {
            $.aliases = aliases;
            return this;
        }

        /**
         * @param aliases An alias block. Conflicts with `ttl` & `records`.
         * Documented below.
         * 
         * @return builder
         * 
         */
        public Builder aliases(List aliases) {
            return aliases(Output.of(aliases));
        }

        /**
         * @param aliases An alias block. Conflicts with `ttl` & `records`.
         * Documented below.
         * 
         * @return builder
         * 
         */
        public Builder aliases(RecordAliasArgs... aliases) {
            return aliases(List.of(aliases));
        }

        /**
         * @param allowOverwrite Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. `false` by default. This configuration is not recommended for most environments.
         * 
         * Exactly one of `records` or `alias` must be specified: this determines whether it's an alias record.
         * 
         * @return builder
         * 
         */
        public Builder allowOverwrite(@Nullable Output allowOverwrite) {
            $.allowOverwrite = allowOverwrite;
            return this;
        }

        /**
         * @param allowOverwrite Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. `false` by default. This configuration is not recommended for most environments.
         * 
         * Exactly one of `records` or `alias` must be specified: this determines whether it's an alias record.
         * 
         * @return builder
         * 
         */
        public Builder allowOverwrite(Boolean allowOverwrite) {
            return allowOverwrite(Output.of(allowOverwrite));
        }

        /**
         * @param cidrRoutingPolicy A block indicating a routing policy based on the IP network ranges of requestors. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder cidrRoutingPolicy(@Nullable Output cidrRoutingPolicy) {
            $.cidrRoutingPolicy = cidrRoutingPolicy;
            return this;
        }

        /**
         * @param cidrRoutingPolicy A block indicating a routing policy based on the IP network ranges of requestors. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder cidrRoutingPolicy(RecordCidrRoutingPolicyArgs cidrRoutingPolicy) {
            return cidrRoutingPolicy(Output.of(cidrRoutingPolicy));
        }

        /**
         * @param failoverRoutingPolicies A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder failoverRoutingPolicies(@Nullable Output> failoverRoutingPolicies) {
            $.failoverRoutingPolicies = failoverRoutingPolicies;
            return this;
        }

        /**
         * @param failoverRoutingPolicies A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder failoverRoutingPolicies(List failoverRoutingPolicies) {
            return failoverRoutingPolicies(Output.of(failoverRoutingPolicies));
        }

        /**
         * @param failoverRoutingPolicies A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder failoverRoutingPolicies(RecordFailoverRoutingPolicyArgs... failoverRoutingPolicies) {
            return failoverRoutingPolicies(List.of(failoverRoutingPolicies));
        }

        /**
         * @param fqdn [FQDN](https://en.wikipedia.org/wiki/Fully_qualified_domain_name) built using the zone domain and `name`.
         * 
         * @return builder
         * 
         */
        public Builder fqdn(@Nullable Output fqdn) {
            $.fqdn = fqdn;
            return this;
        }

        /**
         * @param fqdn [FQDN](https://en.wikipedia.org/wiki/Fully_qualified_domain_name) built using the zone domain and `name`.
         * 
         * @return builder
         * 
         */
        public Builder fqdn(String fqdn) {
            return fqdn(Output.of(fqdn));
        }

        /**
         * @param geolocationRoutingPolicies A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder geolocationRoutingPolicies(@Nullable Output> geolocationRoutingPolicies) {
            $.geolocationRoutingPolicies = geolocationRoutingPolicies;
            return this;
        }

        /**
         * @param geolocationRoutingPolicies A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder geolocationRoutingPolicies(List geolocationRoutingPolicies) {
            return geolocationRoutingPolicies(Output.of(geolocationRoutingPolicies));
        }

        /**
         * @param geolocationRoutingPolicies A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder geolocationRoutingPolicies(RecordGeolocationRoutingPolicyArgs... geolocationRoutingPolicies) {
            return geolocationRoutingPolicies(List.of(geolocationRoutingPolicies));
        }

        /**
         * @param geoproximityRoutingPolicy A block indicating a routing policy based on the geoproximity of the requestor. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder geoproximityRoutingPolicy(@Nullable Output geoproximityRoutingPolicy) {
            $.geoproximityRoutingPolicy = geoproximityRoutingPolicy;
            return this;
        }

        /**
         * @param geoproximityRoutingPolicy A block indicating a routing policy based on the geoproximity of the requestor. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder geoproximityRoutingPolicy(RecordGeoproximityRoutingPolicyArgs geoproximityRoutingPolicy) {
            return geoproximityRoutingPolicy(Output.of(geoproximityRoutingPolicy));
        }

        /**
         * @param healthCheckId The health check the record should be associated with.
         * 
         * @return builder
         * 
         */
        public Builder healthCheckId(@Nullable Output healthCheckId) {
            $.healthCheckId = healthCheckId;
            return this;
        }

        /**
         * @param healthCheckId The health check the record should be associated with.
         * 
         * @return builder
         * 
         */
        public Builder healthCheckId(String healthCheckId) {
            return healthCheckId(Output.of(healthCheckId));
        }

        /**
         * @param latencyRoutingPolicies A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder latencyRoutingPolicies(@Nullable Output> latencyRoutingPolicies) {
            $.latencyRoutingPolicies = latencyRoutingPolicies;
            return this;
        }

        /**
         * @param latencyRoutingPolicies A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder latencyRoutingPolicies(List latencyRoutingPolicies) {
            return latencyRoutingPolicies(Output.of(latencyRoutingPolicies));
        }

        /**
         * @param latencyRoutingPolicies A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder latencyRoutingPolicies(RecordLatencyRoutingPolicyArgs... latencyRoutingPolicies) {
            return latencyRoutingPolicies(List.of(latencyRoutingPolicies));
        }

        /**
         * @param multivalueAnswerRoutingPolicy Set to `true` to indicate a multivalue answer routing policy. Conflicts with any other routing policy.
         * 
         * @return builder
         * 
         */
        public Builder multivalueAnswerRoutingPolicy(@Nullable Output multivalueAnswerRoutingPolicy) {
            $.multivalueAnswerRoutingPolicy = multivalueAnswerRoutingPolicy;
            return this;
        }

        /**
         * @param multivalueAnswerRoutingPolicy Set to `true` to indicate a multivalue answer routing policy. Conflicts with any other routing policy.
         * 
         * @return builder
         * 
         */
        public Builder multivalueAnswerRoutingPolicy(Boolean multivalueAnswerRoutingPolicy) {
            return multivalueAnswerRoutingPolicy(Output.of(multivalueAnswerRoutingPolicy));
        }

        /**
         * @param name The name of the record.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name The name of the record.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param records A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add `\"\"` inside the provider configuration string (e.g., `"first255characters\"\"morecharacters"`).
         * 
         * @return builder
         * 
         */
        public Builder records(@Nullable Output> records) {
            $.records = records;
            return this;
        }

        /**
         * @param records A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add `\"\"` inside the provider configuration string (e.g., `"first255characters\"\"morecharacters"`).
         * 
         * @return builder
         * 
         */
        public Builder records(List records) {
            return records(Output.of(records));
        }

        /**
         * @param records A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add `\"\"` inside the provider configuration string (e.g., `"first255characters\"\"morecharacters"`).
         * 
         * @return builder
         * 
         */
        public Builder records(String... records) {
            return records(List.of(records));
        }

        /**
         * @param setIdentifier Unique identifier to differentiate records with routing policies from one another. Required if using `cidr_routing_policy`, `failover_routing_policy`, `geolocation_routing_policy`,`geoproximity_routing_policy`, `latency_routing_policy`, `multivalue_answer_routing_policy`, or `weighted_routing_policy`.
         * 
         * @return builder
         * 
         */
        public Builder setIdentifier(@Nullable Output setIdentifier) {
            $.setIdentifier = setIdentifier;
            return this;
        }

        /**
         * @param setIdentifier Unique identifier to differentiate records with routing policies from one another. Required if using `cidr_routing_policy`, `failover_routing_policy`, `geolocation_routing_policy`,`geoproximity_routing_policy`, `latency_routing_policy`, `multivalue_answer_routing_policy`, or `weighted_routing_policy`.
         * 
         * @return builder
         * 
         */
        public Builder setIdentifier(String setIdentifier) {
            return setIdentifier(Output.of(setIdentifier));
        }

        /**
         * @param ttl The TTL of the record.
         * 
         * @return builder
         * 
         */
        public Builder ttl(@Nullable Output ttl) {
            $.ttl = ttl;
            return this;
        }

        /**
         * @param ttl The TTL of the record.
         * 
         * @return builder
         * 
         */
        public Builder ttl(Integer ttl) {
            return ttl(Output.of(ttl));
        }

        /**
         * @param type The record type. Valid values are `A`, `AAAA`, `CAA`, `CNAME`, `DS`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV` and `TXT`.
         * 
         * @return builder
         * 
         */
        public Builder type(@Nullable Output> type) {
            $.type = type;
            return this;
        }

        /**
         * @param type The record type. Valid values are `A`, `AAAA`, `CAA`, `CNAME`, `DS`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV` and `TXT`.
         * 
         * @return builder
         * 
         */
        public Builder type(Either type) {
            return type(Output.of(type));
        }

        /**
         * @param type The record type. Valid values are `A`, `AAAA`, `CAA`, `CNAME`, `DS`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV` and `TXT`.
         * 
         * @return builder
         * 
         */
        public Builder type(String type) {
            return type(Either.ofLeft(type));
        }

        /**
         * @param type The record type. Valid values are `A`, `AAAA`, `CAA`, `CNAME`, `DS`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV` and `TXT`.
         * 
         * @return builder
         * 
         */
        public Builder type(RecordType type) {
            return type(Either.ofRight(type));
        }

        /**
         * @param weightedRoutingPolicies A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder weightedRoutingPolicies(@Nullable Output> weightedRoutingPolicies) {
            $.weightedRoutingPolicies = weightedRoutingPolicies;
            return this;
        }

        /**
         * @param weightedRoutingPolicies A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder weightedRoutingPolicies(List weightedRoutingPolicies) {
            return weightedRoutingPolicies(Output.of(weightedRoutingPolicies));
        }

        /**
         * @param weightedRoutingPolicies A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
         * 
         * @return builder
         * 
         */
        public Builder weightedRoutingPolicies(RecordWeightedRoutingPolicyArgs... weightedRoutingPolicies) {
            return weightedRoutingPolicies(List.of(weightedRoutingPolicies));
        }

        /**
         * @param zoneId The ID of the hosted zone to contain this record.
         * 
         * @return builder
         * 
         */
        public Builder zoneId(@Nullable Output zoneId) {
            $.zoneId = zoneId;
            return this;
        }

        /**
         * @param zoneId The ID of the hosted zone to contain this record.
         * 
         * @return builder
         * 
         */
        public Builder zoneId(String zoneId) {
            return zoneId(Output.of(zoneId));
        }

        public RecordState build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy