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

com.pulumi.googlenative.bigtableadmin.v2.inputs.MultiClusterRoutingUseAnyArgs 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.googlenative.bigtableadmin.v2.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
 * 
 */
public final class MultiClusterRoutingUseAnyArgs extends com.pulumi.resources.ResourceArgs {

    public static final MultiClusterRoutingUseAnyArgs Empty = new MultiClusterRoutingUseAnyArgs();

    /**
     * The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
     * 
     */
    @Import(name="clusterIds")
    private @Nullable Output> clusterIds;

    /**
     * @return The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
     * 
     */
    public Optional>> clusterIds() {
        return Optional.ofNullable(this.clusterIds);
    }

    private MultiClusterRoutingUseAnyArgs() {}

    private MultiClusterRoutingUseAnyArgs(MultiClusterRoutingUseAnyArgs $) {
        this.clusterIds = $.clusterIds;
    }

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

    public static final class Builder {
        private MultiClusterRoutingUseAnyArgs $;

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

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

        /**
         * @param clusterIds The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
         * 
         * @return builder
         * 
         */
        public Builder clusterIds(@Nullable Output> clusterIds) {
            $.clusterIds = clusterIds;
            return this;
        }

        /**
         * @param clusterIds The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
         * 
         * @return builder
         * 
         */
        public Builder clusterIds(List clusterIds) {
            return clusterIds(Output.of(clusterIds));
        }

        /**
         * @param clusterIds The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
         * 
         * @return builder
         * 
         */
        public Builder clusterIds(String... clusterIds) {
            return clusterIds(List.of(clusterIds));
        }

        public MultiClusterRoutingUseAnyArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy