com.pulumi.azurenative.devcenter.outputs.DevCenterSkuResponse 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.devcenter.outputs;
import com.pulumi.azurenative.devcenter.outputs.CapabilityResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
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 DevCenterSkuResponse {
/**
* @return Collection of name/value pairs to describe the SKU capabilities.
*
*/
private List capabilities;
/**
* @return If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
*
*/
private @Nullable Integer capacity;
/**
* @return If the service has different generations of hardware, for the same SKU, then that can be captured here.
*
*/
private @Nullable String family;
/**
* @return SKU supported locations.
*
*/
private List locations;
/**
* @return The name of the SKU. E.g. P3. It is typically a letter+number code
*
*/
private String name;
/**
* @return The name of the resource type
*
*/
private String resourceType;
/**
* @return The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
*
*/
private @Nullable String size;
/**
* @return This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
*
*/
private @Nullable String tier;
private DevCenterSkuResponse() {}
/**
* @return Collection of name/value pairs to describe the SKU capabilities.
*
*/
public List capabilities() {
return this.capabilities;
}
/**
* @return If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
*
*/
public Optional capacity() {
return Optional.ofNullable(this.capacity);
}
/**
* @return If the service has different generations of hardware, for the same SKU, then that can be captured here.
*
*/
public Optional family() {
return Optional.ofNullable(this.family);
}
/**
* @return SKU supported locations.
*
*/
public List locations() {
return this.locations;
}
/**
* @return The name of the SKU. E.g. P3. It is typically a letter+number code
*
*/
public String name() {
return this.name;
}
/**
* @return The name of the resource type
*
*/
public String resourceType() {
return this.resourceType;
}
/**
* @return The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
*
*/
public Optional size() {
return Optional.ofNullable(this.size);
}
/**
* @return This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
*
*/
public Optional tier() {
return Optional.ofNullable(this.tier);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(DevCenterSkuResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private List capabilities;
private @Nullable Integer capacity;
private @Nullable String family;
private List locations;
private String name;
private String resourceType;
private @Nullable String size;
private @Nullable String tier;
public Builder() {}
public Builder(DevCenterSkuResponse defaults) {
Objects.requireNonNull(defaults);
this.capabilities = defaults.capabilities;
this.capacity = defaults.capacity;
this.family = defaults.family;
this.locations = defaults.locations;
this.name = defaults.name;
this.resourceType = defaults.resourceType;
this.size = defaults.size;
this.tier = defaults.tier;
}
@CustomType.Setter
public Builder capabilities(List capabilities) {
if (capabilities == null) {
throw new MissingRequiredPropertyException("DevCenterSkuResponse", "capabilities");
}
this.capabilities = capabilities;
return this;
}
public Builder capabilities(CapabilityResponse... capabilities) {
return capabilities(List.of(capabilities));
}
@CustomType.Setter
public Builder capacity(@Nullable Integer capacity) {
this.capacity = capacity;
return this;
}
@CustomType.Setter
public Builder family(@Nullable String family) {
this.family = family;
return this;
}
@CustomType.Setter
public Builder locations(List locations) {
if (locations == null) {
throw new MissingRequiredPropertyException("DevCenterSkuResponse", "locations");
}
this.locations = locations;
return this;
}
public Builder locations(String... locations) {
return locations(List.of(locations));
}
@CustomType.Setter
public Builder name(String name) {
if (name == null) {
throw new MissingRequiredPropertyException("DevCenterSkuResponse", "name");
}
this.name = name;
return this;
}
@CustomType.Setter
public Builder resourceType(String resourceType) {
if (resourceType == null) {
throw new MissingRequiredPropertyException("DevCenterSkuResponse", "resourceType");
}
this.resourceType = resourceType;
return this;
}
@CustomType.Setter
public Builder size(@Nullable String size) {
this.size = size;
return this;
}
@CustomType.Setter
public Builder tier(@Nullable String tier) {
this.tier = tier;
return this;
}
public DevCenterSkuResponse build() {
final var _resultValue = new DevCenterSkuResponse();
_resultValue.capabilities = capabilities;
_resultValue.capacity = capacity;
_resultValue.family = family;
_resultValue.locations = locations;
_resultValue.name = name;
_resultValue.resourceType = resourceType;
_resultValue.size = size;
_resultValue.tier = tier;
return _resultValue;
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy