com.spotinst.sdkjava.model.bl.ocean.gke.LaunchSpecSpecification Maven / Gradle / Ivy
package com.spotinst.sdkjava.model.bl.ocean.gke;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.spotinst.sdkjava.enums.OceanGkeLaunchSpecRootVolumeTypeEnum;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class LaunchSpecSpecification {
@JsonIgnore
private Set isSet;
private String oceanId;
private String id;
private String name;
private String sourceImage;
private String serviceAccount;
private Integer rootVolumeSizeInGb;
private OceanGkeLaunchSpecRootVolumeTypeEnum rootVolumeType;
private Boolean restrictScaleDown = false;
private List metadata;
private List instanceTypes;
private List taints;
private List labels;
private LaunchSpecAutoScaleSpecification autoScale;
private LaunchSpecResourceLimitsSpecification resourceLimits;
private LaunchSpecShieldedInstanceConfigSpecification shieldedInstanceConfig;
private LaunchSpecStrategySpecification strategy;
private LaunchSpecStorageSpecification storage;
private Boolean ipForwarding;
private String minCpuPlatform;
private List tags;
private LaunchSpecSpecification() {
isSet = new HashSet<>();
}
public Set getIsSet() {
return isSet;
}
public void setIsSet(Set isSet) {
this.isSet = isSet;
}
public String getId() {
return id;
}
public void setId(String launchSpecId) {
this.id = launchSpecId;
isSet.add("id");
}
public String getOceanId() {
return oceanId;
}
public void setOceanId(String oceanId) {
this.oceanId = oceanId;
isSet.add("oceanId");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
isSet.add("name");
}
public String getSourceImage() {
return sourceImage;
}
public void setSourceImage(String sourceImage) {
this.sourceImage = sourceImage;
isSet.add("sourceImage");
}
public String getServiceAccount() {
return serviceAccount;
}
public void setServiceAccount(String serviceAccount) {
this.serviceAccount = serviceAccount;
isSet.add("serviceAccount");
}
public Integer getRootVolumeSizeInGb() {
return rootVolumeSizeInGb;
}
public void setRootVolumeSizeInGb(Integer rootVolumeSizeInGb) {
this.rootVolumeSizeInGb = rootVolumeSizeInGb;
isSet.add("rootVolumeSizeInGb");
}
public OceanGkeLaunchSpecRootVolumeTypeEnum getRootVolumeType() {
return rootVolumeType;
}
public void setRootVolumeType(OceanGkeLaunchSpecRootVolumeTypeEnum rootVolumeType) {
this.rootVolumeType = rootVolumeType;
isSet.add("rootVolumeType");
}
public Boolean getRestrictScaleDown() {
return restrictScaleDown;
}
public void setRestrictScaleDown(Boolean restrictScaleDown) {
this.restrictScaleDown = restrictScaleDown;
isSet.add("restrictScaleDown");
}
public List getMetadata() {
return metadata;
}
public void setMetadata(List metadata) {
this.metadata = metadata;
isSet.add("metadata");
}
public List getInstanceTypes() {
return instanceTypes;
}
public void setInstanceTypes(List instanceTypes) {
this.instanceTypes = instanceTypes;
isSet.add("instanceTypes");
}
public List getTaints() {
return taints;
}
public void setTaints(List taints) {
this.taints = taints;
isSet.add("taints");
}
public List getLabels() {
return labels;
}
public void setLabels(List labels) {
this.labels = labels;
isSet.add("labels");
}
public LaunchSpecAutoScaleSpecification getAutoScale() {
return autoScale;
}
public void setAutoScale(LaunchSpecAutoScaleSpecification autoScale) {
isSet.add("autoScale");
this.autoScale = autoScale;
}
public LaunchSpecResourceLimitsSpecification getResourceLimits() {
return resourceLimits;
}
public void setResourceLimits(LaunchSpecResourceLimitsSpecification resourceLimits) {
isSet.add("resourceLimits");
this.resourceLimits = resourceLimits;
}
public LaunchSpecShieldedInstanceConfigSpecification getShieldedInstanceConfig() {
return shieldedInstanceConfig;
}
public void setShieldedInstanceConfig(LaunchSpecShieldedInstanceConfigSpecification shieldedInstanceConfig) {
this.shieldedInstanceConfig = shieldedInstanceConfig;
isSet.add("shieldedInstanceConfig");
}
public LaunchSpecStrategySpecification getStrategy() {
return strategy;
}
public void setStrategy(LaunchSpecStrategySpecification strategy) {
this.strategy = strategy;
isSet.add("strategy");
}
public LaunchSpecStorageSpecification getStorage() {
return storage;
}
public void setStorage(LaunchSpecStorageSpecification storage) {
this.storage = storage;
isSet.add("storage");
}
public Boolean getIpForwarding() {
return ipForwarding;
}
public void setIpForwarding(Boolean ipForwarding) {
isSet.add("ipForwarding");
this.ipForwarding = ipForwarding;
}
public String getMinCpuPlatform() {
return minCpuPlatform;
}
public void setMinCpuPlatform(String minCpuPlatform) {
isSet.add("minCpuPlatform");
this.minCpuPlatform = minCpuPlatform;
}
public List getTags() {
return tags;
}
public void setTags(List tags) {
isSet.add("tags");
this.tags = tags;
}
public static class Builder {
//region Members
private LaunchSpecSpecification launchSpec;
//endregion
private Builder() {
this.launchSpec = new LaunchSpecSpecification();
}
public static Builder get() {
return new Builder();
}
public Builder setId(final String launchSpecId) {
launchSpec.setId(launchSpecId);
return this;
}
public Builder setOceanId(final String oceanId) {
launchSpec.setOceanId(oceanId);
return this;
}
public Builder setName(final String name) {
launchSpec.setName(name);
return this;
}
public Builder setSourceImage(final String description) {
launchSpec.setSourceImage(description);
return this;
}
public Builder setServiceAccount(final String region) {
launchSpec.setServiceAccount(region);
return this;
}
public Builder setRootVolumeSizeInGb(final Integer rootVolumeSizeInGb) {
launchSpec.setRootVolumeSizeInGb(rootVolumeSizeInGb);
return this;
}
public Builder setStrategy(final LaunchSpecStrategySpecification strategy) {
launchSpec.setStrategy(strategy);
return this;
}
public Builder setRootVolumeType(final OceanGkeLaunchSpecRootVolumeTypeEnum rootVolumeType) {
launchSpec.setRootVolumeType(rootVolumeType);
return this;
}
public Builder setMetadata(final List metadata) {
launchSpec.setMetadata(metadata);
return this;
}
public Builder setInstanceTypes(final List instanceTypes) {
launchSpec.setInstanceTypes(instanceTypes);
return this;
}
public Builder setRestrictScaleDown(final Boolean restrictScaleDown) {
launchSpec.setRestrictScaleDown(restrictScaleDown);
return this;
}
public Builder setTaints(final List taints) {
launchSpec.setTaints(taints);
return this;
}
public Builder setLabels(final List labels) {
launchSpec.setLabels(labels);
return this;
}
public Builder setResourceLimits(final LaunchSpecResourceLimitsSpecification resourceLimits) {
launchSpec.setResourceLimits(resourceLimits);
return this;
}
public Builder setShieldedInstanceConfig(final LaunchSpecShieldedInstanceConfigSpecification shieldedInstanceConfig) {
launchSpec.setShieldedInstanceConfig(shieldedInstanceConfig);
return this;
}
public Builder setAutoScale(final LaunchSpecAutoScaleSpecification autoScales) {
launchSpec.setAutoScale(autoScales);
return this;
}
public Builder setStorage(final LaunchSpecStorageSpecification storage) {
launchSpec.setStorage(storage);
return this;
}
public Builder setIpForwarding(final Boolean ipForwarding) {
launchSpec.setIpForwarding(ipForwarding);
return this;
}
public Builder setMinCpuPlatform(final String minCpuPlatform) {
launchSpec.setMinCpuPlatform(minCpuPlatform);
return this;
}
public Builder setTags(final List tags) {
launchSpec.setTags(tags);
return this;
}
public LaunchSpecSpecification build() {
// Validations
return launchSpec;
}
//endregion
}
@JsonIgnore
public Boolean isIdSet() { return isSet.contains("id"); }
@JsonIgnore
public Boolean isOceanIdSet() { return isSet.contains("oceanId"); }
@JsonIgnore
public Boolean isNameSet() { return isSet.contains("name"); }
@JsonIgnore
public Boolean isSourceImageSet() { return isSet.contains("sourceImage"); }
@JsonIgnore
public Boolean isServiceAccountSet() { return isSet.contains("serviceAccount"); }
@JsonIgnore
public Boolean isRootVolumeSizeInGbSet() { return isSet.contains("rootVolumeSizeInGb"); }
@JsonIgnore
public Boolean isRootVolumeTypeSet() { return isSet.contains("rootVolumeType"); }
@JsonIgnore
public Boolean isRestrictScaleDownSet() { return isSet.contains("restrictScaleDown"); }
@JsonIgnore
public Boolean isMetadataSet() { return isSet.contains("metadata"); }
@JsonIgnore
public Boolean isInstanceTypesSet() { return isSet.contains("instanceTypes"); }
@JsonIgnore
public Boolean isTaintsSet() { return isSet.contains("taints"); }
@JsonIgnore
public Boolean isLabelsSet() { return isSet.contains("labels"); }
@JsonIgnore
public Boolean isAutoScaleSet() { return isSet.contains("autoScale"); }
@JsonIgnore
public Boolean isResourceLimitsSet() { return isSet.contains("resourceLimits"); }
@JsonIgnore
public Boolean isShieldedInstanceConfigSet() { return isSet.contains("shieldedInstanceConfig"); }
@JsonIgnore
public Boolean isStrategySet() { return isSet.contains("strategy"); }
@JsonIgnore
public Boolean isStorageSet() { return isSet.contains("storage"); }
@JsonIgnore
public Boolean isIpForwardingSet() { return isSet.contains("ipForwarding"); }
@JsonIgnore
public Boolean isMinCpuPlatformSet() { return isSet.contains("minCpuPlatform"); }
@JsonIgnore
public Boolean isTagsSet() { return isSet.contains("tags"); }
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy