All Downloads are FREE. Search and download functionalities are using the official Maven repository.

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;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy