com.pulumi.azure.lb.outputs.GetLBOutboundRuleResult Maven / Gradle / Ivy
// *** 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.azure.lb.outputs;
import com.pulumi.azure.lb.outputs.GetLBOutboundRuleFrontendIpConfiguration;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
@CustomType
public final class GetLBOutboundRuleResult {
/**
* @return The number of outbound ports used for NAT.
*
*/
private Integer allocatedOutboundPorts;
/**
* @return The ID of the Backend Address Pool. Outbound traffic is randomly load balanced across IPs in the backend IPs.
*
*/
private String backendAddressPoolId;
/**
* @return A `frontend_ip_configuration` block as defined below.
*
*/
private List frontendIpConfigurations;
/**
* @return The provider-assigned unique ID for this managed resource.
*
*/
private String id;
/**
* @return The timeout for the TCP idle connection.
*
*/
private Integer idleTimeoutInMinutes;
private String loadbalancerId;
/**
* @return The name of the Frontend IP Configuration.
*
*/
private String name;
/**
* @return The transport protocol for the external endpoint.
*
*/
private String protocol;
/**
* @return Is the bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination enabled? This value is useful when the protocol is set to TCP.
*
*/
private Boolean tcpResetEnabled;
private GetLBOutboundRuleResult() {}
/**
* @return The number of outbound ports used for NAT.
*
*/
public Integer allocatedOutboundPorts() {
return this.allocatedOutboundPorts;
}
/**
* @return The ID of the Backend Address Pool. Outbound traffic is randomly load balanced across IPs in the backend IPs.
*
*/
public String backendAddressPoolId() {
return this.backendAddressPoolId;
}
/**
* @return A `frontend_ip_configuration` block as defined below.
*
*/
public List frontendIpConfigurations() {
return this.frontendIpConfigurations;
}
/**
* @return The provider-assigned unique ID for this managed resource.
*
*/
public String id() {
return this.id;
}
/**
* @return The timeout for the TCP idle connection.
*
*/
public Integer idleTimeoutInMinutes() {
return this.idleTimeoutInMinutes;
}
public String loadbalancerId() {
return this.loadbalancerId;
}
/**
* @return The name of the Frontend IP Configuration.
*
*/
public String name() {
return this.name;
}
/**
* @return The transport protocol for the external endpoint.
*
*/
public String protocol() {
return this.protocol;
}
/**
* @return Is the bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination enabled? This value is useful when the protocol is set to TCP.
*
*/
public Boolean tcpResetEnabled() {
return this.tcpResetEnabled;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(GetLBOutboundRuleResult defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private Integer allocatedOutboundPorts;
private String backendAddressPoolId;
private List frontendIpConfigurations;
private String id;
private Integer idleTimeoutInMinutes;
private String loadbalancerId;
private String name;
private String protocol;
private Boolean tcpResetEnabled;
public Builder() {}
public Builder(GetLBOutboundRuleResult defaults) {
Objects.requireNonNull(defaults);
this.allocatedOutboundPorts = defaults.allocatedOutboundPorts;
this.backendAddressPoolId = defaults.backendAddressPoolId;
this.frontendIpConfigurations = defaults.frontendIpConfigurations;
this.id = defaults.id;
this.idleTimeoutInMinutes = defaults.idleTimeoutInMinutes;
this.loadbalancerId = defaults.loadbalancerId;
this.name = defaults.name;
this.protocol = defaults.protocol;
this.tcpResetEnabled = defaults.tcpResetEnabled;
}
@CustomType.Setter
public Builder allocatedOutboundPorts(Integer allocatedOutboundPorts) {
if (allocatedOutboundPorts == null) {
throw new MissingRequiredPropertyException("GetLBOutboundRuleResult", "allocatedOutboundPorts");
}
this.allocatedOutboundPorts = allocatedOutboundPorts;
return this;
}
@CustomType.Setter
public Builder backendAddressPoolId(String backendAddressPoolId) {
if (backendAddressPoolId == null) {
throw new MissingRequiredPropertyException("GetLBOutboundRuleResult", "backendAddressPoolId");
}
this.backendAddressPoolId = backendAddressPoolId;
return this;
}
@CustomType.Setter
public Builder frontendIpConfigurations(List frontendIpConfigurations) {
if (frontendIpConfigurations == null) {
throw new MissingRequiredPropertyException("GetLBOutboundRuleResult", "frontendIpConfigurations");
}
this.frontendIpConfigurations = frontendIpConfigurations;
return this;
}
public Builder frontendIpConfigurations(GetLBOutboundRuleFrontendIpConfiguration... frontendIpConfigurations) {
return frontendIpConfigurations(List.of(frontendIpConfigurations));
}
@CustomType.Setter
public Builder id(String id) {
if (id == null) {
throw new MissingRequiredPropertyException("GetLBOutboundRuleResult", "id");
}
this.id = id;
return this;
}
@CustomType.Setter
public Builder idleTimeoutInMinutes(Integer idleTimeoutInMinutes) {
if (idleTimeoutInMinutes == null) {
throw new MissingRequiredPropertyException("GetLBOutboundRuleResult", "idleTimeoutInMinutes");
}
this.idleTimeoutInMinutes = idleTimeoutInMinutes;
return this;
}
@CustomType.Setter
public Builder loadbalancerId(String loadbalancerId) {
if (loadbalancerId == null) {
throw new MissingRequiredPropertyException("GetLBOutboundRuleResult", "loadbalancerId");
}
this.loadbalancerId = loadbalancerId;
return this;
}
@CustomType.Setter
public Builder name(String name) {
if (name == null) {
throw new MissingRequiredPropertyException("GetLBOutboundRuleResult", "name");
}
this.name = name;
return this;
}
@CustomType.Setter
public Builder protocol(String protocol) {
if (protocol == null) {
throw new MissingRequiredPropertyException("GetLBOutboundRuleResult", "protocol");
}
this.protocol = protocol;
return this;
}
@CustomType.Setter
public Builder tcpResetEnabled(Boolean tcpResetEnabled) {
if (tcpResetEnabled == null) {
throw new MissingRequiredPropertyException("GetLBOutboundRuleResult", "tcpResetEnabled");
}
this.tcpResetEnabled = tcpResetEnabled;
return this;
}
public GetLBOutboundRuleResult build() {
final var _resultValue = new GetLBOutboundRuleResult();
_resultValue.allocatedOutboundPorts = allocatedOutboundPorts;
_resultValue.backendAddressPoolId = backendAddressPoolId;
_resultValue.frontendIpConfigurations = frontendIpConfigurations;
_resultValue.id = id;
_resultValue.idleTimeoutInMinutes = idleTimeoutInMinutes;
_resultValue.loadbalancerId = loadbalancerId;
_resultValue.name = name;
_resultValue.protocol = protocol;
_resultValue.tcpResetEnabled = tcpResetEnabled;
return _resultValue;
}
}
}