com.pulumi.azurenative.containerstorage.outputs.GetPoolResult 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.containerstorage.outputs;
import com.pulumi.azurenative.containerstorage.outputs.AssignmentResponse;
import com.pulumi.azurenative.containerstorage.outputs.PoolTypeResponse;
import com.pulumi.azurenative.containerstorage.outputs.ResourceOperationalStatusResponse;
import com.pulumi.azurenative.containerstorage.outputs.ResourcesResponse;
import com.pulumi.azurenative.containerstorage.outputs.SystemDataResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class GetPoolResult {
/**
* @return List of resources that should have access to the pool. Typically ARM references to AKS clusters or ACI Container Groups. For local and standard this must be a single reference. For ElasticSAN there can be many.
*
*/
private @Nullable List assignments;
/**
* @return Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
*
*/
private String id;
/**
* @return The geo-location where the resource lives
*
*/
private String location;
/**
* @return The name of the resource
*
*/
private String name;
/**
* @return Type of the Pool: ephemeralDisk, azureDisk, or elasticsan.
*
*/
private PoolTypeResponse poolType;
/**
* @return The status of the last operation.
*
*/
private String provisioningState;
/**
* @return ReclaimPolicy defines what happens to the backend storage when StoragePool is deleted
*
*/
private @Nullable String reclaimPolicy;
/**
* @return Resources represent the resources the pool should have.
*
*/
private @Nullable ResourcesResponse resources;
/**
* @return The operational status of the resource
*
*/
private ResourceOperationalStatusResponse status;
/**
* @return Azure Resource Manager metadata containing createdBy and modifiedBy information.
*
*/
private SystemDataResponse systemData;
/**
* @return Resource tags.
*
*/
private @Nullable Map tags;
/**
* @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*
*/
private String type;
/**
* @return List of availability zones that resources can be created in.
*
*/
private @Nullable List zones;
private GetPoolResult() {}
/**
* @return List of resources that should have access to the pool. Typically ARM references to AKS clusters or ACI Container Groups. For local and standard this must be a single reference. For ElasticSAN there can be many.
*
*/
public List assignments() {
return this.assignments == null ? List.of() : this.assignments;
}
/**
* @return Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
*
*/
public String id() {
return this.id;
}
/**
* @return The geo-location where the resource lives
*
*/
public String location() {
return this.location;
}
/**
* @return The name of the resource
*
*/
public String name() {
return this.name;
}
/**
* @return Type of the Pool: ephemeralDisk, azureDisk, or elasticsan.
*
*/
public PoolTypeResponse poolType() {
return this.poolType;
}
/**
* @return The status of the last operation.
*
*/
public String provisioningState() {
return this.provisioningState;
}
/**
* @return ReclaimPolicy defines what happens to the backend storage when StoragePool is deleted
*
*/
public Optional reclaimPolicy() {
return Optional.ofNullable(this.reclaimPolicy);
}
/**
* @return Resources represent the resources the pool should have.
*
*/
public Optional resources() {
return Optional.ofNullable(this.resources);
}
/**
* @return The operational status of the resource
*
*/
public ResourceOperationalStatusResponse status() {
return this.status;
}
/**
* @return Azure Resource Manager metadata containing createdBy and modifiedBy information.
*
*/
public SystemDataResponse systemData() {
return this.systemData;
}
/**
* @return Resource tags.
*
*/
public Map tags() {
return this.tags == null ? Map.of() : this.tags;
}
/**
* @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*
*/
public String type() {
return this.type;
}
/**
* @return List of availability zones that resources can be created in.
*
*/
public List zones() {
return this.zones == null ? List.of() : this.zones;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(GetPoolResult defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable List assignments;
private String id;
private String location;
private String name;
private PoolTypeResponse poolType;
private String provisioningState;
private @Nullable String reclaimPolicy;
private @Nullable ResourcesResponse resources;
private ResourceOperationalStatusResponse status;
private SystemDataResponse systemData;
private @Nullable Map tags;
private String type;
private @Nullable List zones;
public Builder() {}
public Builder(GetPoolResult defaults) {
Objects.requireNonNull(defaults);
this.assignments = defaults.assignments;
this.id = defaults.id;
this.location = defaults.location;
this.name = defaults.name;
this.poolType = defaults.poolType;
this.provisioningState = defaults.provisioningState;
this.reclaimPolicy = defaults.reclaimPolicy;
this.resources = defaults.resources;
this.status = defaults.status;
this.systemData = defaults.systemData;
this.tags = defaults.tags;
this.type = defaults.type;
this.zones = defaults.zones;
}
@CustomType.Setter
public Builder assignments(@Nullable List assignments) {
this.assignments = assignments;
return this;
}
public Builder assignments(AssignmentResponse... assignments) {
return assignments(List.of(assignments));
}
@CustomType.Setter
public Builder id(String id) {
if (id == null) {
throw new MissingRequiredPropertyException("GetPoolResult", "id");
}
this.id = id;
return this;
}
@CustomType.Setter
public Builder location(String location) {
if (location == null) {
throw new MissingRequiredPropertyException("GetPoolResult", "location");
}
this.location = location;
return this;
}
@CustomType.Setter
public Builder name(String name) {
if (name == null) {
throw new MissingRequiredPropertyException("GetPoolResult", "name");
}
this.name = name;
return this;
}
@CustomType.Setter
public Builder poolType(PoolTypeResponse poolType) {
if (poolType == null) {
throw new MissingRequiredPropertyException("GetPoolResult", "poolType");
}
this.poolType = poolType;
return this;
}
@CustomType.Setter
public Builder provisioningState(String provisioningState) {
if (provisioningState == null) {
throw new MissingRequiredPropertyException("GetPoolResult", "provisioningState");
}
this.provisioningState = provisioningState;
return this;
}
@CustomType.Setter
public Builder reclaimPolicy(@Nullable String reclaimPolicy) {
this.reclaimPolicy = reclaimPolicy;
return this;
}
@CustomType.Setter
public Builder resources(@Nullable ResourcesResponse resources) {
this.resources = resources;
return this;
}
@CustomType.Setter
public Builder status(ResourceOperationalStatusResponse status) {
if (status == null) {
throw new MissingRequiredPropertyException("GetPoolResult", "status");
}
this.status = status;
return this;
}
@CustomType.Setter
public Builder systemData(SystemDataResponse systemData) {
if (systemData == null) {
throw new MissingRequiredPropertyException("GetPoolResult", "systemData");
}
this.systemData = systemData;
return this;
}
@CustomType.Setter
public Builder tags(@Nullable Map tags) {
this.tags = tags;
return this;
}
@CustomType.Setter
public Builder type(String type) {
if (type == null) {
throw new MissingRequiredPropertyException("GetPoolResult", "type");
}
this.type = type;
return this;
}
@CustomType.Setter
public Builder zones(@Nullable List zones) {
this.zones = zones;
return this;
}
public Builder zones(String... zones) {
return zones(List.of(zones));
}
public GetPoolResult build() {
final var _resultValue = new GetPoolResult();
_resultValue.assignments = assignments;
_resultValue.id = id;
_resultValue.location = location;
_resultValue.name = name;
_resultValue.poolType = poolType;
_resultValue.provisioningState = provisioningState;
_resultValue.reclaimPolicy = reclaimPolicy;
_resultValue.resources = resources;
_resultValue.status = status;
_resultValue.systemData = systemData;
_resultValue.tags = tags;
_resultValue.type = type;
_resultValue.zones = zones;
return _resultValue;
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy