
com.pulumi.azurenative.kubernetesruntime.outputs.GetStorageClassResult Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-native Show documentation
Show all versions of azure-native Show documentation
A native Pulumi package for creating and managing Azure 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.azurenative.kubernetesruntime.outputs;
import com.pulumi.azurenative.kubernetesruntime.outputs.BlobStorageClassTypePropertiesResponse;
import com.pulumi.azurenative.kubernetesruntime.outputs.NativeStorageClassTypePropertiesResponse;
import com.pulumi.azurenative.kubernetesruntime.outputs.NfsStorageClassTypePropertiesResponse;
import com.pulumi.azurenative.kubernetesruntime.outputs.RwxStorageClassTypePropertiesResponse;
import com.pulumi.azurenative.kubernetesruntime.outputs.SmbStorageClassTypePropertiesResponse;
import com.pulumi.azurenative.kubernetesruntime.outputs.SystemDataResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Double;
import java.lang.Object;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class GetStorageClassResult {
/**
* @return The access mode: [ReadWriteOnce, ReadWriteMany] or [ReadWriteOnce]
*
*/
private @Nullable List accessModes;
/**
* @return Volume can be expanded or not
*
*/
private @Nullable String allowVolumeExpansion;
/**
* @return Allow single data node failure
*
*/
private @Nullable String dataResilience;
/**
* @return Failover speed: NA, Slow, Fast
*
*/
private @Nullable String failoverSpeed;
/**
* @return Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
*
*/
private String id;
/**
* @return Limitations of the storage class
*
*/
private @Nullable List limitations;
/**
* @return Additional mount options
*
*/
private @Nullable List mountOptions;
/**
* @return The name of the resource
*
*/
private String name;
/**
* @return Performance tier
*
*/
private @Nullable String performance;
/**
* @return Selection priority when multiple storage classes meet the criteria. 0: Highest, -1: Never use
*
*/
private @Nullable Double priority;
/**
* @return Provisioner name
*
*/
private @Nullable String provisioner;
/**
* @return Resource provision state
*
*/
private String provisioningState;
/**
* @return Azure Resource Manager metadata containing createdBy and modifiedBy information.
*
*/
private SystemDataResponse systemData;
/**
* @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*
*/
private String type;
/**
* @return Properties of the StorageClass
*
*/
private Object typeProperties;
/**
* @return Binding mode of volumes: Immediate, WaitForFirstConsumer
*
*/
private @Nullable String volumeBindingMode;
private GetStorageClassResult() {}
/**
* @return The access mode: [ReadWriteOnce, ReadWriteMany] or [ReadWriteOnce]
*
*/
public List accessModes() {
return this.accessModes == null ? List.of() : this.accessModes;
}
/**
* @return Volume can be expanded or not
*
*/
public Optional allowVolumeExpansion() {
return Optional.ofNullable(this.allowVolumeExpansion);
}
/**
* @return Allow single data node failure
*
*/
public Optional dataResilience() {
return Optional.ofNullable(this.dataResilience);
}
/**
* @return Failover speed: NA, Slow, Fast
*
*/
public Optional failoverSpeed() {
return Optional.ofNullable(this.failoverSpeed);
}
/**
* @return Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
*
*/
public String id() {
return this.id;
}
/**
* @return Limitations of the storage class
*
*/
public List limitations() {
return this.limitations == null ? List.of() : this.limitations;
}
/**
* @return Additional mount options
*
*/
public List mountOptions() {
return this.mountOptions == null ? List.of() : this.mountOptions;
}
/**
* @return The name of the resource
*
*/
public String name() {
return this.name;
}
/**
* @return Performance tier
*
*/
public Optional performance() {
return Optional.ofNullable(this.performance);
}
/**
* @return Selection priority when multiple storage classes meet the criteria. 0: Highest, -1: Never use
*
*/
public Optional priority() {
return Optional.ofNullable(this.priority);
}
/**
* @return Provisioner name
*
*/
public Optional provisioner() {
return Optional.ofNullable(this.provisioner);
}
/**
* @return Resource provision state
*
*/
public String provisioningState() {
return this.provisioningState;
}
/**
* @return Azure Resource Manager metadata containing createdBy and modifiedBy information.
*
*/
public SystemDataResponse systemData() {
return this.systemData;
}
/**
* @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*
*/
public String type() {
return this.type;
}
/**
* @return Properties of the StorageClass
*
*/
public Object typeProperties() {
return this.typeProperties;
}
/**
* @return Binding mode of volumes: Immediate, WaitForFirstConsumer
*
*/
public Optional volumeBindingMode() {
return Optional.ofNullable(this.volumeBindingMode);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(GetStorageClassResult defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable List accessModes;
private @Nullable String allowVolumeExpansion;
private @Nullable String dataResilience;
private @Nullable String failoverSpeed;
private String id;
private @Nullable List limitations;
private @Nullable List mountOptions;
private String name;
private @Nullable String performance;
private @Nullable Double priority;
private @Nullable String provisioner;
private String provisioningState;
private SystemDataResponse systemData;
private String type;
private Object typeProperties;
private @Nullable String volumeBindingMode;
public Builder() {}
public Builder(GetStorageClassResult defaults) {
Objects.requireNonNull(defaults);
this.accessModes = defaults.accessModes;
this.allowVolumeExpansion = defaults.allowVolumeExpansion;
this.dataResilience = defaults.dataResilience;
this.failoverSpeed = defaults.failoverSpeed;
this.id = defaults.id;
this.limitations = defaults.limitations;
this.mountOptions = defaults.mountOptions;
this.name = defaults.name;
this.performance = defaults.performance;
this.priority = defaults.priority;
this.provisioner = defaults.provisioner;
this.provisioningState = defaults.provisioningState;
this.systemData = defaults.systemData;
this.type = defaults.type;
this.typeProperties = defaults.typeProperties;
this.volumeBindingMode = defaults.volumeBindingMode;
}
@CustomType.Setter
public Builder accessModes(@Nullable List accessModes) {
this.accessModes = accessModes;
return this;
}
public Builder accessModes(String... accessModes) {
return accessModes(List.of(accessModes));
}
@CustomType.Setter
public Builder allowVolumeExpansion(@Nullable String allowVolumeExpansion) {
this.allowVolumeExpansion = allowVolumeExpansion;
return this;
}
@CustomType.Setter
public Builder dataResilience(@Nullable String dataResilience) {
this.dataResilience = dataResilience;
return this;
}
@CustomType.Setter
public Builder failoverSpeed(@Nullable String failoverSpeed) {
this.failoverSpeed = failoverSpeed;
return this;
}
@CustomType.Setter
public Builder id(String id) {
if (id == null) {
throw new MissingRequiredPropertyException("GetStorageClassResult", "id");
}
this.id = id;
return this;
}
@CustomType.Setter
public Builder limitations(@Nullable List limitations) {
this.limitations = limitations;
return this;
}
public Builder limitations(String... limitations) {
return limitations(List.of(limitations));
}
@CustomType.Setter
public Builder mountOptions(@Nullable List mountOptions) {
this.mountOptions = mountOptions;
return this;
}
public Builder mountOptions(String... mountOptions) {
return mountOptions(List.of(mountOptions));
}
@CustomType.Setter
public Builder name(String name) {
if (name == null) {
throw new MissingRequiredPropertyException("GetStorageClassResult", "name");
}
this.name = name;
return this;
}
@CustomType.Setter
public Builder performance(@Nullable String performance) {
this.performance = performance;
return this;
}
@CustomType.Setter
public Builder priority(@Nullable Double priority) {
this.priority = priority;
return this;
}
@CustomType.Setter
public Builder provisioner(@Nullable String provisioner) {
this.provisioner = provisioner;
return this;
}
@CustomType.Setter
public Builder provisioningState(String provisioningState) {
if (provisioningState == null) {
throw new MissingRequiredPropertyException("GetStorageClassResult", "provisioningState");
}
this.provisioningState = provisioningState;
return this;
}
@CustomType.Setter
public Builder systemData(SystemDataResponse systemData) {
if (systemData == null) {
throw new MissingRequiredPropertyException("GetStorageClassResult", "systemData");
}
this.systemData = systemData;
return this;
}
@CustomType.Setter
public Builder type(String type) {
if (type == null) {
throw new MissingRequiredPropertyException("GetStorageClassResult", "type");
}
this.type = type;
return this;
}
@CustomType.Setter
public Builder typeProperties(Object typeProperties) {
if (typeProperties == null) {
throw new MissingRequiredPropertyException("GetStorageClassResult", "typeProperties");
}
this.typeProperties = typeProperties;
return this;
}
@CustomType.Setter
public Builder volumeBindingMode(@Nullable String volumeBindingMode) {
this.volumeBindingMode = volumeBindingMode;
return this;
}
public GetStorageClassResult build() {
final var _resultValue = new GetStorageClassResult();
_resultValue.accessModes = accessModes;
_resultValue.allowVolumeExpansion = allowVolumeExpansion;
_resultValue.dataResilience = dataResilience;
_resultValue.failoverSpeed = failoverSpeed;
_resultValue.id = id;
_resultValue.limitations = limitations;
_resultValue.mountOptions = mountOptions;
_resultValue.name = name;
_resultValue.performance = performance;
_resultValue.priority = priority;
_resultValue.provisioner = provisioner;
_resultValue.provisioningState = provisioningState;
_resultValue.systemData = systemData;
_resultValue.type = type;
_resultValue.typeProperties = typeProperties;
_resultValue.volumeBindingMode = volumeBindingMode;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy