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

com.pulumi.aws.redshift.outputs.GetOrderableClusterResult 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.redshift.outputs;

import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import javax.annotation.Nullable;

@CustomType
public final class GetOrderableClusterResult {
    /**
     * @return List of Availability Zone names where the Redshift Cluster is available.
     * 
     */
    private List availabilityZones;
    private String clusterType;
    private String clusterVersion;
    /**
     * @return The provider-assigned unique ID for this managed resource.
     * 
     */
    private String id;
    private String nodeType;
    private @Nullable List preferredNodeTypes;

    private GetOrderableClusterResult() {}
    /**
     * @return List of Availability Zone names where the Redshift Cluster is available.
     * 
     */
    public List availabilityZones() {
        return this.availabilityZones;
    }
    public String clusterType() {
        return this.clusterType;
    }
    public String clusterVersion() {
        return this.clusterVersion;
    }
    /**
     * @return The provider-assigned unique ID for this managed resource.
     * 
     */
    public String id() {
        return this.id;
    }
    public String nodeType() {
        return this.nodeType;
    }
    public List preferredNodeTypes() {
        return this.preferredNodeTypes == null ? List.of() : this.preferredNodeTypes;
    }

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

    public static Builder builder(GetOrderableClusterResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private List availabilityZones;
        private String clusterType;
        private String clusterVersion;
        private String id;
        private String nodeType;
        private @Nullable List preferredNodeTypes;
        public Builder() {}
        public Builder(GetOrderableClusterResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.availabilityZones = defaults.availabilityZones;
    	      this.clusterType = defaults.clusterType;
    	      this.clusterVersion = defaults.clusterVersion;
    	      this.id = defaults.id;
    	      this.nodeType = defaults.nodeType;
    	      this.preferredNodeTypes = defaults.preferredNodeTypes;
        }

        @CustomType.Setter
        public Builder availabilityZones(List availabilityZones) {
            if (availabilityZones == null) {
              throw new MissingRequiredPropertyException("GetOrderableClusterResult", "availabilityZones");
            }
            this.availabilityZones = availabilityZones;
            return this;
        }
        public Builder availabilityZones(String... availabilityZones) {
            return availabilityZones(List.of(availabilityZones));
        }
        @CustomType.Setter
        public Builder clusterType(String clusterType) {
            if (clusterType == null) {
              throw new MissingRequiredPropertyException("GetOrderableClusterResult", "clusterType");
            }
            this.clusterType = clusterType;
            return this;
        }
        @CustomType.Setter
        public Builder clusterVersion(String clusterVersion) {
            if (clusterVersion == null) {
              throw new MissingRequiredPropertyException("GetOrderableClusterResult", "clusterVersion");
            }
            this.clusterVersion = clusterVersion;
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetOrderableClusterResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder nodeType(String nodeType) {
            if (nodeType == null) {
              throw new MissingRequiredPropertyException("GetOrderableClusterResult", "nodeType");
            }
            this.nodeType = nodeType;
            return this;
        }
        @CustomType.Setter
        public Builder preferredNodeTypes(@Nullable List preferredNodeTypes) {

            this.preferredNodeTypes = preferredNodeTypes;
            return this;
        }
        public Builder preferredNodeTypes(String... preferredNodeTypes) {
            return preferredNodeTypes(List.of(preferredNodeTypes));
        }
        public GetOrderableClusterResult build() {
            final var _resultValue = new GetOrderableClusterResult();
            _resultValue.availabilityZones = availabilityZones;
            _resultValue.clusterType = clusterType;
            _resultValue.clusterVersion = clusterVersion;
            _resultValue.id = id;
            _resultValue.nodeType = nodeType;
            _resultValue.preferredNodeTypes = preferredNodeTypes;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy