com.spotinst.sdkjava.model.bl.azure.elastiGroup.V3.NetworkInterfaceAzure Maven / Gradle / Ivy
package com.spotinst.sdkjava.model.bl.azure.elastiGroup.V3;
import com.fasterxml.jackson.annotation.JsonIgnore;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class NetworkInterfaceAzure {
// Partial Update support
@JsonIgnore
private Set isSet;
private Boolean isPrimary;
private String subnetName;
private Boolean assignPublicIp;
private String publicIpSku;
private Boolean enableIPForwarding;
private List additionalIpConfigurations;
//todo add security group in future
//region Constructor
private NetworkInterfaceAzure() {
isSet = new HashSet<>();
}
//endregion
public Set getIsSet() {
return isSet;
}
public void setIsSet(Set isSet) {
this.isSet = isSet;
}
public Boolean getIsPrimary() {
return isPrimary;
}
public void setIsPrimary(Boolean isPrimary) {
isSet.add("isPrimary");
this.isPrimary = isPrimary;
}
public List getAdditionalIpConfigurations() {
return additionalIpConfigurations;
}
public void setAdditionalIpConfigurations(List additionalIpConfigurations) {
isSet.add("additionalIpConfigurations");
this.additionalIpConfigurations = additionalIpConfigurations;
}
public String getSubnetName() {
return subnetName;
}
public void setSubnetName(String subnetName) {
isSet.add("subnetName");
this.subnetName = subnetName;
}
public Boolean getAssignPublicIp() {
return assignPublicIp;
}
public void setAssignPublicIp(Boolean assignPublicIp) {
isSet.add("assignPublicIp");
this.assignPublicIp = assignPublicIp;
}
public Boolean getEnableIPForwarding() {
return enableIPForwarding;
}
public void setEnableIPForwarding(Boolean enableIPForwarding) {
isSet.add("enableIPForwarding");
this.enableIPForwarding = enableIPForwarding;
}
public String getPublicIpSku() {
return publicIpSku;
}
public void setPublicIpSku(String publicIpSku) {
isSet.add("publicIpSku");
this.publicIpSku = publicIpSku;
}
//region Builder class
public static class Builder {
private NetworkInterfaceAzure networkInterface;
private Builder() {
this.networkInterface = new NetworkInterfaceAzure();
}
public static Builder get() {
return new Builder();
}
public Builder setEnableIPForwarding(final Boolean enableIPForwarding) {
networkInterface.setEnableIPForwarding(enableIPForwarding);
return this;
}
public Builder setAssignPublicIp(final Boolean assignPublicIp) {
networkInterface.setAssignPublicIp(assignPublicIp);
return this;
}
public Builder setIsPrimary(final Boolean isPrimary) {
networkInterface.setIsPrimary(isPrimary);
return this;
}
public Builder setPublicIpSku(final String publicIpSku) {
networkInterface.setPublicIpSku(publicIpSku);
return this;
}
public Builder setSubnetName(final String subnetName) {
networkInterface.setSubnetName(subnetName);
return this;
}
public Builder setAdditionalIpConfigurations(
final List additionalIpConfigurations) {
networkInterface.setAdditionalIpConfigurations(additionalIpConfigurations);
return this;
}
public NetworkInterfaceAzure build() {
// TODO : Validations
return networkInterface;
}
}
//endregion
//region isSet methods
// Is isPrimary Set boolean method
@JsonIgnore
public boolean isIsPrimarySet() {
return isSet.contains("isPrimary");
}
// Is assignPublicIp Set boolean method
@JsonIgnore
public boolean isSetAssignPublicIpSet() {
return isSet.contains("assignPublicIp");
}
// Is enableIPForwarding Set boolean method
@JsonIgnore
public boolean isEnableIPForwardingSet() {
return isSet.contains("enableIPForwarding");
}
// Is additionalIpConfigurations Set boolean method
@JsonIgnore
public boolean isAdditionalIpConfigurationsSet() {
return isSet.contains("additionalIpConfigurations");
}
// Is publicIpSku Set boolean method
@JsonIgnore
public boolean isPublicIpSkuSet() {
return isSet.contains("publicIpSku");
}
// Is subnetName Set boolean method
@JsonIgnore
public boolean isSubnetNameSet() {
return isSet.contains("subnetName");
}
//endregion
}