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

com.pulumi.aws.neptune.outputs.GetOrderableDbInstanceResult 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.neptune.outputs;

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

@CustomType
public final class GetOrderableDbInstanceResult {
    /**
     * @return Availability zones where the instance is available.
     * 
     */
    private List availabilityZones;
    private @Nullable String engine;
    private String engineVersion;
    /**
     * @return The provider-assigned unique ID for this managed resource.
     * 
     */
    private String id;
    private String instanceClass;
    private @Nullable String licenseModel;
    /**
     * @return Maximum total provisioned IOPS for a DB instance.
     * 
     */
    private Integer maxIopsPerDbInstance;
    /**
     * @return Maximum provisioned IOPS per GiB for a DB instance.
     * 
     */
    private Double maxIopsPerGib;
    /**
     * @return Maximum storage size for a DB instance.
     * 
     */
    private Integer maxStorageSize;
    /**
     * @return Minimum total provisioned IOPS for a DB instance.
     * 
     */
    private Integer minIopsPerDbInstance;
    /**
     * @return Minimum provisioned IOPS per GiB for a DB instance.
     * 
     */
    private Double minIopsPerGib;
    /**
     * @return Minimum storage size for a DB instance.
     * 
     */
    private Integer minStorageSize;
    /**
     * @return Whether a DB instance is Multi-AZ capable.
     * 
     */
    private Boolean multiAzCapable;
    private @Nullable List preferredInstanceClasses;
    /**
     * @return Whether a DB instance can have a read replica.
     * 
     */
    private Boolean readReplicaCapable;
    /**
     * @return Storage type for a DB instance.
     * 
     */
    private String storageType;
    /**
     * @return Whether a DB instance supports Enhanced Monitoring at intervals from 1 to 60 seconds.
     * 
     */
    private Boolean supportsEnhancedMonitoring;
    /**
     * @return Whether a DB instance supports IAM database authentication.
     * 
     */
    private Boolean supportsIamDatabaseAuthentication;
    /**
     * @return Whether a DB instance supports provisioned IOPS.
     * 
     */
    private Boolean supportsIops;
    /**
     * @return Whether a DB instance supports Performance Insights.
     * 
     */
    private Boolean supportsPerformanceInsights;
    /**
     * @return Whether a DB instance supports encrypted storage.
     * 
     */
    private Boolean supportsStorageEncryption;
    private Boolean vpc;

    private GetOrderableDbInstanceResult() {}
    /**
     * @return Availability zones where the instance is available.
     * 
     */
    public List availabilityZones() {
        return this.availabilityZones;
    }
    public Optional engine() {
        return Optional.ofNullable(this.engine);
    }
    public String engineVersion() {
        return this.engineVersion;
    }
    /**
     * @return The provider-assigned unique ID for this managed resource.
     * 
     */
    public String id() {
        return this.id;
    }
    public String instanceClass() {
        return this.instanceClass;
    }
    public Optional licenseModel() {
        return Optional.ofNullable(this.licenseModel);
    }
    /**
     * @return Maximum total provisioned IOPS for a DB instance.
     * 
     */
    public Integer maxIopsPerDbInstance() {
        return this.maxIopsPerDbInstance;
    }
    /**
     * @return Maximum provisioned IOPS per GiB for a DB instance.
     * 
     */
    public Double maxIopsPerGib() {
        return this.maxIopsPerGib;
    }
    /**
     * @return Maximum storage size for a DB instance.
     * 
     */
    public Integer maxStorageSize() {
        return this.maxStorageSize;
    }
    /**
     * @return Minimum total provisioned IOPS for a DB instance.
     * 
     */
    public Integer minIopsPerDbInstance() {
        return this.minIopsPerDbInstance;
    }
    /**
     * @return Minimum provisioned IOPS per GiB for a DB instance.
     * 
     */
    public Double minIopsPerGib() {
        return this.minIopsPerGib;
    }
    /**
     * @return Minimum storage size for a DB instance.
     * 
     */
    public Integer minStorageSize() {
        return this.minStorageSize;
    }
    /**
     * @return Whether a DB instance is Multi-AZ capable.
     * 
     */
    public Boolean multiAzCapable() {
        return this.multiAzCapable;
    }
    public List preferredInstanceClasses() {
        return this.preferredInstanceClasses == null ? List.of() : this.preferredInstanceClasses;
    }
    /**
     * @return Whether a DB instance can have a read replica.
     * 
     */
    public Boolean readReplicaCapable() {
        return this.readReplicaCapable;
    }
    /**
     * @return Storage type for a DB instance.
     * 
     */
    public String storageType() {
        return this.storageType;
    }
    /**
     * @return Whether a DB instance supports Enhanced Monitoring at intervals from 1 to 60 seconds.
     * 
     */
    public Boolean supportsEnhancedMonitoring() {
        return this.supportsEnhancedMonitoring;
    }
    /**
     * @return Whether a DB instance supports IAM database authentication.
     * 
     */
    public Boolean supportsIamDatabaseAuthentication() {
        return this.supportsIamDatabaseAuthentication;
    }
    /**
     * @return Whether a DB instance supports provisioned IOPS.
     * 
     */
    public Boolean supportsIops() {
        return this.supportsIops;
    }
    /**
     * @return Whether a DB instance supports Performance Insights.
     * 
     */
    public Boolean supportsPerformanceInsights() {
        return this.supportsPerformanceInsights;
    }
    /**
     * @return Whether a DB instance supports encrypted storage.
     * 
     */
    public Boolean supportsStorageEncryption() {
        return this.supportsStorageEncryption;
    }
    public Boolean vpc() {
        return this.vpc;
    }

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

    public static Builder builder(GetOrderableDbInstanceResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private List availabilityZones;
        private @Nullable String engine;
        private String engineVersion;
        private String id;
        private String instanceClass;
        private @Nullable String licenseModel;
        private Integer maxIopsPerDbInstance;
        private Double maxIopsPerGib;
        private Integer maxStorageSize;
        private Integer minIopsPerDbInstance;
        private Double minIopsPerGib;
        private Integer minStorageSize;
        private Boolean multiAzCapable;
        private @Nullable List preferredInstanceClasses;
        private Boolean readReplicaCapable;
        private String storageType;
        private Boolean supportsEnhancedMonitoring;
        private Boolean supportsIamDatabaseAuthentication;
        private Boolean supportsIops;
        private Boolean supportsPerformanceInsights;
        private Boolean supportsStorageEncryption;
        private Boolean vpc;
        public Builder() {}
        public Builder(GetOrderableDbInstanceResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.availabilityZones = defaults.availabilityZones;
    	      this.engine = defaults.engine;
    	      this.engineVersion = defaults.engineVersion;
    	      this.id = defaults.id;
    	      this.instanceClass = defaults.instanceClass;
    	      this.licenseModel = defaults.licenseModel;
    	      this.maxIopsPerDbInstance = defaults.maxIopsPerDbInstance;
    	      this.maxIopsPerGib = defaults.maxIopsPerGib;
    	      this.maxStorageSize = defaults.maxStorageSize;
    	      this.minIopsPerDbInstance = defaults.minIopsPerDbInstance;
    	      this.minIopsPerGib = defaults.minIopsPerGib;
    	      this.minStorageSize = defaults.minStorageSize;
    	      this.multiAzCapable = defaults.multiAzCapable;
    	      this.preferredInstanceClasses = defaults.preferredInstanceClasses;
    	      this.readReplicaCapable = defaults.readReplicaCapable;
    	      this.storageType = defaults.storageType;
    	      this.supportsEnhancedMonitoring = defaults.supportsEnhancedMonitoring;
    	      this.supportsIamDatabaseAuthentication = defaults.supportsIamDatabaseAuthentication;
    	      this.supportsIops = defaults.supportsIops;
    	      this.supportsPerformanceInsights = defaults.supportsPerformanceInsights;
    	      this.supportsStorageEncryption = defaults.supportsStorageEncryption;
    	      this.vpc = defaults.vpc;
        }

        @CustomType.Setter
        public Builder availabilityZones(List availabilityZones) {
            if (availabilityZones == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "availabilityZones");
            }
            this.availabilityZones = availabilityZones;
            return this;
        }
        public Builder availabilityZones(String... availabilityZones) {
            return availabilityZones(List.of(availabilityZones));
        }
        @CustomType.Setter
        public Builder engine(@Nullable String engine) {

            this.engine = engine;
            return this;
        }
        @CustomType.Setter
        public Builder engineVersion(String engineVersion) {
            if (engineVersion == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "engineVersion");
            }
            this.engineVersion = engineVersion;
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder instanceClass(String instanceClass) {
            if (instanceClass == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "instanceClass");
            }
            this.instanceClass = instanceClass;
            return this;
        }
        @CustomType.Setter
        public Builder licenseModel(@Nullable String licenseModel) {

            this.licenseModel = licenseModel;
            return this;
        }
        @CustomType.Setter
        public Builder maxIopsPerDbInstance(Integer maxIopsPerDbInstance) {
            if (maxIopsPerDbInstance == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "maxIopsPerDbInstance");
            }
            this.maxIopsPerDbInstance = maxIopsPerDbInstance;
            return this;
        }
        @CustomType.Setter
        public Builder maxIopsPerGib(Double maxIopsPerGib) {
            if (maxIopsPerGib == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "maxIopsPerGib");
            }
            this.maxIopsPerGib = maxIopsPerGib;
            return this;
        }
        @CustomType.Setter
        public Builder maxStorageSize(Integer maxStorageSize) {
            if (maxStorageSize == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "maxStorageSize");
            }
            this.maxStorageSize = maxStorageSize;
            return this;
        }
        @CustomType.Setter
        public Builder minIopsPerDbInstance(Integer minIopsPerDbInstance) {
            if (minIopsPerDbInstance == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "minIopsPerDbInstance");
            }
            this.minIopsPerDbInstance = minIopsPerDbInstance;
            return this;
        }
        @CustomType.Setter
        public Builder minIopsPerGib(Double minIopsPerGib) {
            if (minIopsPerGib == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "minIopsPerGib");
            }
            this.minIopsPerGib = minIopsPerGib;
            return this;
        }
        @CustomType.Setter
        public Builder minStorageSize(Integer minStorageSize) {
            if (minStorageSize == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "minStorageSize");
            }
            this.minStorageSize = minStorageSize;
            return this;
        }
        @CustomType.Setter
        public Builder multiAzCapable(Boolean multiAzCapable) {
            if (multiAzCapable == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "multiAzCapable");
            }
            this.multiAzCapable = multiAzCapable;
            return this;
        }
        @CustomType.Setter
        public Builder preferredInstanceClasses(@Nullable List preferredInstanceClasses) {

            this.preferredInstanceClasses = preferredInstanceClasses;
            return this;
        }
        public Builder preferredInstanceClasses(String... preferredInstanceClasses) {
            return preferredInstanceClasses(List.of(preferredInstanceClasses));
        }
        @CustomType.Setter
        public Builder readReplicaCapable(Boolean readReplicaCapable) {
            if (readReplicaCapable == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "readReplicaCapable");
            }
            this.readReplicaCapable = readReplicaCapable;
            return this;
        }
        @CustomType.Setter
        public Builder storageType(String storageType) {
            if (storageType == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "storageType");
            }
            this.storageType = storageType;
            return this;
        }
        @CustomType.Setter
        public Builder supportsEnhancedMonitoring(Boolean supportsEnhancedMonitoring) {
            if (supportsEnhancedMonitoring == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "supportsEnhancedMonitoring");
            }
            this.supportsEnhancedMonitoring = supportsEnhancedMonitoring;
            return this;
        }
        @CustomType.Setter
        public Builder supportsIamDatabaseAuthentication(Boolean supportsIamDatabaseAuthentication) {
            if (supportsIamDatabaseAuthentication == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "supportsIamDatabaseAuthentication");
            }
            this.supportsIamDatabaseAuthentication = supportsIamDatabaseAuthentication;
            return this;
        }
        @CustomType.Setter
        public Builder supportsIops(Boolean supportsIops) {
            if (supportsIops == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "supportsIops");
            }
            this.supportsIops = supportsIops;
            return this;
        }
        @CustomType.Setter
        public Builder supportsPerformanceInsights(Boolean supportsPerformanceInsights) {
            if (supportsPerformanceInsights == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "supportsPerformanceInsights");
            }
            this.supportsPerformanceInsights = supportsPerformanceInsights;
            return this;
        }
        @CustomType.Setter
        public Builder supportsStorageEncryption(Boolean supportsStorageEncryption) {
            if (supportsStorageEncryption == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "supportsStorageEncryption");
            }
            this.supportsStorageEncryption = supportsStorageEncryption;
            return this;
        }
        @CustomType.Setter
        public Builder vpc(Boolean vpc) {
            if (vpc == null) {
              throw new MissingRequiredPropertyException("GetOrderableDbInstanceResult", "vpc");
            }
            this.vpc = vpc;
            return this;
        }
        public GetOrderableDbInstanceResult build() {
            final var _resultValue = new GetOrderableDbInstanceResult();
            _resultValue.availabilityZones = availabilityZones;
            _resultValue.engine = engine;
            _resultValue.engineVersion = engineVersion;
            _resultValue.id = id;
            _resultValue.instanceClass = instanceClass;
            _resultValue.licenseModel = licenseModel;
            _resultValue.maxIopsPerDbInstance = maxIopsPerDbInstance;
            _resultValue.maxIopsPerGib = maxIopsPerGib;
            _resultValue.maxStorageSize = maxStorageSize;
            _resultValue.minIopsPerDbInstance = minIopsPerDbInstance;
            _resultValue.minIopsPerGib = minIopsPerGib;
            _resultValue.minStorageSize = minStorageSize;
            _resultValue.multiAzCapable = multiAzCapable;
            _resultValue.preferredInstanceClasses = preferredInstanceClasses;
            _resultValue.readReplicaCapable = readReplicaCapable;
            _resultValue.storageType = storageType;
            _resultValue.supportsEnhancedMonitoring = supportsEnhancedMonitoring;
            _resultValue.supportsIamDatabaseAuthentication = supportsIamDatabaseAuthentication;
            _resultValue.supportsIops = supportsIops;
            _resultValue.supportsPerformanceInsights = supportsPerformanceInsights;
            _resultValue.supportsStorageEncryption = supportsStorageEncryption;
            _resultValue.vpc = vpc;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy