All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.alicloud.tsdb.inputs.InstanceState Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing AliCloud resources.
// *** 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.alicloud.tsdb.inputs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class InstanceState extends com.pulumi.resources.ResourceArgs {
public static final InstanceState Empty = new InstanceState();
/**
* The app key.
*
*/
@Import(name="appKey")
private @Nullable Output appKey;
/**
* @return The app key.
*
*/
public Optional> appKey() {
return Optional.ofNullable(this.appKey);
}
/**
* The disk type of instance. Valid when the engine type is `tsdb_influxdb`. `cloud_ssd` refers to SSD disk, `cloud_efficiency` refers to efficiency disk, `cloud_essd` refers to ESSD PL1 disk. Valid values: `cloud_efficiency`, `cloud_essd`, `cloud_ssd`.
*
*/
@Import(name="diskCategory")
private @Nullable Output diskCategory;
/**
* @return The disk type of instance. Valid when the engine type is `tsdb_influxdb`. `cloud_ssd` refers to SSD disk, `cloud_efficiency` refers to efficiency disk, `cloud_essd` refers to ESSD PL1 disk. Valid values: `cloud_efficiency`, `cloud_essd`, `cloud_ssd`.
*
*/
public Optional> diskCategory() {
return Optional.ofNullable(this.diskCategory);
}
/**
* The duration.
*
*/
@Import(name="duration")
private @Nullable Output duration;
/**
* @return The duration.
*
*/
public Optional> duration() {
return Optional.ofNullable(this.duration);
}
/**
* The engine type of instance Enumerative: `tsdb_tsdb` refers to TSDB, `tsdb_influxdb` refers to TSDB for InfluxDB️.
*
*/
@Import(name="engineType")
private @Nullable Output engineType;
/**
* @return The engine type of instance Enumerative: `tsdb_tsdb` refers to TSDB, `tsdb_influxdb` refers to TSDB for InfluxDB️.
*
*/
public Optional> engineType() {
return Optional.ofNullable(this.engineType);
}
/**
* The alias of the instance.
*
*/
@Import(name="instanceAlias")
private @Nullable Output instanceAlias;
/**
* @return The alias of the instance.
*
*/
public Optional> instanceAlias() {
return Optional.ofNullable(this.instanceAlias);
}
/**
* The specification of the instance.
* - Following enumerative value for TSDB for InfluxDB️ standart edition:
* - `influxdata.n1.mxlarge` refers to 2 CPU 8GB memory;
* - `influxdata.n1.xlarge` refers to 4 CPU 16GB memory;
* - `influxdata.n1.2xlarge` refers to 8 CPU 32 GB memory;
* - `influxdata.n1.4xlarge` refers to 16 CPU 64 GB memory;
* - `influxdata.n1.8xlarge` refers to 32 CPU 128 GB memory;
* - `influxdata.n1.16xlarge` refers to 64 CPU 256 GB memory.
* - Following enumerative value for TSDB for InfluxDB High-availability edition:
* - `influxdata.n1.mxlarge_ha` refers to 2 CPU 8GB memory;
* - `influxdata.n1.xlarge_ha` refers to 4 CPU 16GB memory;
* - `influxdata.n1.2xlarge_ha` refers to 8 CPU 32 GB memory;
* - `influxdata.n1.4xlarge_ha` refers to 16 CPU 64 GB memory;
* - `influxdata.n1.8xlarge_ha` refers to 32 CPU 128 GB memory;
* - `influxdata.n1.16xlarge_ha` refers to 64 CPU 256 GB memory.
* - Following enumerative value for TSDB:
* - `tsdb.1x.basic` refers to basic edition I;
* - `tsdb.3x.basic` refers to basic edition II;
* - `tsdb.4x.basic` refers to basic edtion III;
* - `tsdb.12x.standard` refers to standard edition I;
* - `tsdb.24x.standard` refers to standard edition II;
* - `tsdb.48x.large` refers to ultimate edition I;
* - `tsdb.96x.large` refers to ultimate edition II.
*
*/
@Import(name="instanceClass")
private @Nullable Output instanceClass;
/**
* @return The specification of the instance.
* - Following enumerative value for TSDB for InfluxDB️ standart edition:
* - `influxdata.n1.mxlarge` refers to 2 CPU 8GB memory;
* - `influxdata.n1.xlarge` refers to 4 CPU 16GB memory;
* - `influxdata.n1.2xlarge` refers to 8 CPU 32 GB memory;
* - `influxdata.n1.4xlarge` refers to 16 CPU 64 GB memory;
* - `influxdata.n1.8xlarge` refers to 32 CPU 128 GB memory;
* - `influxdata.n1.16xlarge` refers to 64 CPU 256 GB memory.
* - Following enumerative value for TSDB for InfluxDB High-availability edition:
* - `influxdata.n1.mxlarge_ha` refers to 2 CPU 8GB memory;
* - `influxdata.n1.xlarge_ha` refers to 4 CPU 16GB memory;
* - `influxdata.n1.2xlarge_ha` refers to 8 CPU 32 GB memory;
* - `influxdata.n1.4xlarge_ha` refers to 16 CPU 64 GB memory;
* - `influxdata.n1.8xlarge_ha` refers to 32 CPU 128 GB memory;
* - `influxdata.n1.16xlarge_ha` refers to 64 CPU 256 GB memory.
* - Following enumerative value for TSDB:
* - `tsdb.1x.basic` refers to basic edition I;
* - `tsdb.3x.basic` refers to basic edition II;
* - `tsdb.4x.basic` refers to basic edtion III;
* - `tsdb.12x.standard` refers to standard edition I;
* - `tsdb.24x.standard` refers to standard edition II;
* - `tsdb.48x.large` refers to ultimate edition I;
* - `tsdb.96x.large` refers to ultimate edition II.
*
*/
public Optional> instanceClass() {
return Optional.ofNullable(this.instanceClass);
}
/**
* The storage capacity of the instance. Unit: GB. For example, the value 50 indicates 50 GB. Does not support shrink storage.
*
*/
@Import(name="instanceStorage")
private @Nullable Output instanceStorage;
/**
* @return The storage capacity of the instance. Unit: GB. For example, the value 50 indicates 50 GB. Does not support shrink storage.
*
*/
public Optional> instanceStorage() {
return Optional.ofNullable(this.instanceStorage);
}
/**
* The billing method. Valid values: `PayAsYouGo` and `Subscription`. The `PayAsYouGo` value indicates the pay-as-you-go method, and the `Subscription` value indicates the subscription method.
*
*/
@Import(name="paymentType")
private @Nullable Output paymentType;
/**
* @return The billing method. Valid values: `PayAsYouGo` and `Subscription`. The `PayAsYouGo` value indicates the pay-as-you-go method, and the `Subscription` value indicates the subscription method.
*
*/
public Optional> paymentType() {
return Optional.ofNullable(this.paymentType);
}
/**
* Instance status, enumerative: `ACTIVATION`, `DELETED`, `CREATING`, `CLASS_CHANGING`, `LOCKED`.
*
*/
@Import(name="status")
private @Nullable Output status;
/**
* @return Instance status, enumerative: `ACTIVATION`, `DELETED`, `CREATING`, `CLASS_CHANGING`, `LOCKED`.
*
*/
public Optional> status() {
return Optional.ofNullable(this.status);
}
/**
* The vswitch id.
*
*/
@Import(name="vswitchId")
private @Nullable Output vswitchId;
/**
* @return The vswitch id.
*
*/
public Optional> vswitchId() {
return Optional.ofNullable(this.vswitchId);
}
/**
* The zone ID of the instance.
*
*/
@Import(name="zoneId")
private @Nullable Output zoneId;
/**
* @return The zone ID of the instance.
*
*/
public Optional> zoneId() {
return Optional.ofNullable(this.zoneId);
}
private InstanceState() {}
private InstanceState(InstanceState $) {
this.appKey = $.appKey;
this.diskCategory = $.diskCategory;
this.duration = $.duration;
this.engineType = $.engineType;
this.instanceAlias = $.instanceAlias;
this.instanceClass = $.instanceClass;
this.instanceStorage = $.instanceStorage;
this.paymentType = $.paymentType;
this.status = $.status;
this.vswitchId = $.vswitchId;
this.zoneId = $.zoneId;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(InstanceState defaults) {
return new Builder(defaults);
}
public static final class Builder {
private InstanceState $;
public Builder() {
$ = new InstanceState();
}
public Builder(InstanceState defaults) {
$ = new InstanceState(Objects.requireNonNull(defaults));
}
/**
* @param appKey The app key.
*
* @return builder
*
*/
public Builder appKey(@Nullable Output appKey) {
$.appKey = appKey;
return this;
}
/**
* @param appKey The app key.
*
* @return builder
*
*/
public Builder appKey(String appKey) {
return appKey(Output.of(appKey));
}
/**
* @param diskCategory The disk type of instance. Valid when the engine type is `tsdb_influxdb`. `cloud_ssd` refers to SSD disk, `cloud_efficiency` refers to efficiency disk, `cloud_essd` refers to ESSD PL1 disk. Valid values: `cloud_efficiency`, `cloud_essd`, `cloud_ssd`.
*
* @return builder
*
*/
public Builder diskCategory(@Nullable Output diskCategory) {
$.diskCategory = diskCategory;
return this;
}
/**
* @param diskCategory The disk type of instance. Valid when the engine type is `tsdb_influxdb`. `cloud_ssd` refers to SSD disk, `cloud_efficiency` refers to efficiency disk, `cloud_essd` refers to ESSD PL1 disk. Valid values: `cloud_efficiency`, `cloud_essd`, `cloud_ssd`.
*
* @return builder
*
*/
public Builder diskCategory(String diskCategory) {
return diskCategory(Output.of(diskCategory));
}
/**
* @param duration The duration.
*
* @return builder
*
*/
public Builder duration(@Nullable Output duration) {
$.duration = duration;
return this;
}
/**
* @param duration The duration.
*
* @return builder
*
*/
public Builder duration(String duration) {
return duration(Output.of(duration));
}
/**
* @param engineType The engine type of instance Enumerative: `tsdb_tsdb` refers to TSDB, `tsdb_influxdb` refers to TSDB for InfluxDB️.
*
* @return builder
*
*/
public Builder engineType(@Nullable Output engineType) {
$.engineType = engineType;
return this;
}
/**
* @param engineType The engine type of instance Enumerative: `tsdb_tsdb` refers to TSDB, `tsdb_influxdb` refers to TSDB for InfluxDB️.
*
* @return builder
*
*/
public Builder engineType(String engineType) {
return engineType(Output.of(engineType));
}
/**
* @param instanceAlias The alias of the instance.
*
* @return builder
*
*/
public Builder instanceAlias(@Nullable Output instanceAlias) {
$.instanceAlias = instanceAlias;
return this;
}
/**
* @param instanceAlias The alias of the instance.
*
* @return builder
*
*/
public Builder instanceAlias(String instanceAlias) {
return instanceAlias(Output.of(instanceAlias));
}
/**
* @param instanceClass The specification of the instance.
* - Following enumerative value for TSDB for InfluxDB️ standart edition:
* - `influxdata.n1.mxlarge` refers to 2 CPU 8GB memory;
* - `influxdata.n1.xlarge` refers to 4 CPU 16GB memory;
* - `influxdata.n1.2xlarge` refers to 8 CPU 32 GB memory;
* - `influxdata.n1.4xlarge` refers to 16 CPU 64 GB memory;
* - `influxdata.n1.8xlarge` refers to 32 CPU 128 GB memory;
* - `influxdata.n1.16xlarge` refers to 64 CPU 256 GB memory.
* - Following enumerative value for TSDB for InfluxDB High-availability edition:
* - `influxdata.n1.mxlarge_ha` refers to 2 CPU 8GB memory;
* - `influxdata.n1.xlarge_ha` refers to 4 CPU 16GB memory;
* - `influxdata.n1.2xlarge_ha` refers to 8 CPU 32 GB memory;
* - `influxdata.n1.4xlarge_ha` refers to 16 CPU 64 GB memory;
* - `influxdata.n1.8xlarge_ha` refers to 32 CPU 128 GB memory;
* - `influxdata.n1.16xlarge_ha` refers to 64 CPU 256 GB memory.
* - Following enumerative value for TSDB:
* - `tsdb.1x.basic` refers to basic edition I;
* - `tsdb.3x.basic` refers to basic edition II;
* - `tsdb.4x.basic` refers to basic edtion III;
* - `tsdb.12x.standard` refers to standard edition I;
* - `tsdb.24x.standard` refers to standard edition II;
* - `tsdb.48x.large` refers to ultimate edition I;
* - `tsdb.96x.large` refers to ultimate edition II.
*
* @return builder
*
*/
public Builder instanceClass(@Nullable Output instanceClass) {
$.instanceClass = instanceClass;
return this;
}
/**
* @param instanceClass The specification of the instance.
* - Following enumerative value for TSDB for InfluxDB️ standart edition:
* - `influxdata.n1.mxlarge` refers to 2 CPU 8GB memory;
* - `influxdata.n1.xlarge` refers to 4 CPU 16GB memory;
* - `influxdata.n1.2xlarge` refers to 8 CPU 32 GB memory;
* - `influxdata.n1.4xlarge` refers to 16 CPU 64 GB memory;
* - `influxdata.n1.8xlarge` refers to 32 CPU 128 GB memory;
* - `influxdata.n1.16xlarge` refers to 64 CPU 256 GB memory.
* - Following enumerative value for TSDB for InfluxDB High-availability edition:
* - `influxdata.n1.mxlarge_ha` refers to 2 CPU 8GB memory;
* - `influxdata.n1.xlarge_ha` refers to 4 CPU 16GB memory;
* - `influxdata.n1.2xlarge_ha` refers to 8 CPU 32 GB memory;
* - `influxdata.n1.4xlarge_ha` refers to 16 CPU 64 GB memory;
* - `influxdata.n1.8xlarge_ha` refers to 32 CPU 128 GB memory;
* - `influxdata.n1.16xlarge_ha` refers to 64 CPU 256 GB memory.
* - Following enumerative value for TSDB:
* - `tsdb.1x.basic` refers to basic edition I;
* - `tsdb.3x.basic` refers to basic edition II;
* - `tsdb.4x.basic` refers to basic edtion III;
* - `tsdb.12x.standard` refers to standard edition I;
* - `tsdb.24x.standard` refers to standard edition II;
* - `tsdb.48x.large` refers to ultimate edition I;
* - `tsdb.96x.large` refers to ultimate edition II.
*
* @return builder
*
*/
public Builder instanceClass(String instanceClass) {
return instanceClass(Output.of(instanceClass));
}
/**
* @param instanceStorage The storage capacity of the instance. Unit: GB. For example, the value 50 indicates 50 GB. Does not support shrink storage.
*
* @return builder
*
*/
public Builder instanceStorage(@Nullable Output instanceStorage) {
$.instanceStorage = instanceStorage;
return this;
}
/**
* @param instanceStorage The storage capacity of the instance. Unit: GB. For example, the value 50 indicates 50 GB. Does not support shrink storage.
*
* @return builder
*
*/
public Builder instanceStorage(String instanceStorage) {
return instanceStorage(Output.of(instanceStorage));
}
/**
* @param paymentType The billing method. Valid values: `PayAsYouGo` and `Subscription`. The `PayAsYouGo` value indicates the pay-as-you-go method, and the `Subscription` value indicates the subscription method.
*
* @return builder
*
*/
public Builder paymentType(@Nullable Output paymentType) {
$.paymentType = paymentType;
return this;
}
/**
* @param paymentType The billing method. Valid values: `PayAsYouGo` and `Subscription`. The `PayAsYouGo` value indicates the pay-as-you-go method, and the `Subscription` value indicates the subscription method.
*
* @return builder
*
*/
public Builder paymentType(String paymentType) {
return paymentType(Output.of(paymentType));
}
/**
* @param status Instance status, enumerative: `ACTIVATION`, `DELETED`, `CREATING`, `CLASS_CHANGING`, `LOCKED`.
*
* @return builder
*
*/
public Builder status(@Nullable Output status) {
$.status = status;
return this;
}
/**
* @param status Instance status, enumerative: `ACTIVATION`, `DELETED`, `CREATING`, `CLASS_CHANGING`, `LOCKED`.
*
* @return builder
*
*/
public Builder status(String status) {
return status(Output.of(status));
}
/**
* @param vswitchId The vswitch id.
*
* @return builder
*
*/
public Builder vswitchId(@Nullable Output vswitchId) {
$.vswitchId = vswitchId;
return this;
}
/**
* @param vswitchId The vswitch id.
*
* @return builder
*
*/
public Builder vswitchId(String vswitchId) {
return vswitchId(Output.of(vswitchId));
}
/**
* @param zoneId The zone ID of the instance.
*
* @return builder
*
*/
public Builder zoneId(@Nullable Output zoneId) {
$.zoneId = zoneId;
return this;
}
/**
* @param zoneId The zone ID of the instance.
*
* @return builder
*
*/
public Builder zoneId(String zoneId) {
return zoneId(Output.of(zoneId));
}
public InstanceState build() {
return $;
}
}
}