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

com.pulumi.azure.lb.inputs.NatPoolState Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.

There is a newer version: 6.10.0-alpha.1731737215
Show newest version
// *** 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.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class NatPoolState extends com.pulumi.resources.ResourceArgs {

    public static final NatPoolState Empty = new NatPoolState();

    /**
     * The port used for the internal endpoint. Possible values range between 1 and 65535, inclusive.
     * 
     */
    @Import(name="backendPort")
    private @Nullable Output backendPort;

    /**
     * @return The port used for the internal endpoint. Possible values range between 1 and 65535, inclusive.
     * 
     */
    public Optional> backendPort() {
        return Optional.ofNullable(this.backendPort);
    }

    /**
     * Are the floating IPs enabled for this Load Balancer Rule? A floating IP is reassigned to a secondary server in case the primary server fails. Required to configure a SQL AlwaysOn Availability Group.
     * 
     */
    @Import(name="floatingIpEnabled")
    private @Nullable Output floatingIpEnabled;

    /**
     * @return Are the floating IPs enabled for this Load Balancer Rule? A floating IP is reassigned to a secondary server in case the primary server fails. Required to configure a SQL AlwaysOn Availability Group.
     * 
     */
    public Optional> floatingIpEnabled() {
        return Optional.ofNullable(this.floatingIpEnabled);
    }

    @Import(name="frontendIpConfigurationId")
    private @Nullable Output frontendIpConfigurationId;

    public Optional> frontendIpConfigurationId() {
        return Optional.ofNullable(this.frontendIpConfigurationId);
    }

    /**
     * The name of the frontend IP configuration exposing this rule.
     * 
     */
    @Import(name="frontendIpConfigurationName")
    private @Nullable Output frontendIpConfigurationName;

    /**
     * @return The name of the frontend IP configuration exposing this rule.
     * 
     */
    public Optional> frontendIpConfigurationName() {
        return Optional.ofNullable(this.frontendIpConfigurationName);
    }

    /**
     * The last port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive.
     * 
     */
    @Import(name="frontendPortEnd")
    private @Nullable Output frontendPortEnd;

    /**
     * @return The last port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive.
     * 
     */
    public Optional> frontendPortEnd() {
        return Optional.ofNullable(this.frontendPortEnd);
    }

    /**
     * The first port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive.
     * 
     */
    @Import(name="frontendPortStart")
    private @Nullable Output frontendPortStart;

    /**
     * @return The first port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive.
     * 
     */
    public Optional> frontendPortStart() {
        return Optional.ofNullable(this.frontendPortStart);
    }

    /**
     * Specifies the idle timeout in minutes for TCP connections. Valid values are between `4` and `30`. Defaults to `4`.
     * 
     */
    @Import(name="idleTimeoutInMinutes")
    private @Nullable Output idleTimeoutInMinutes;

    /**
     * @return Specifies the idle timeout in minutes for TCP connections. Valid values are between `4` and `30`. Defaults to `4`.
     * 
     */
    public Optional> idleTimeoutInMinutes() {
        return Optional.ofNullable(this.idleTimeoutInMinutes);
    }

    /**
     * The ID of the Load Balancer in which to create the NAT pool. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="loadbalancerId")
    private @Nullable Output loadbalancerId;

    /**
     * @return The ID of the Load Balancer in which to create the NAT pool. Changing this forces a new resource to be created.
     * 
     */
    public Optional> loadbalancerId() {
        return Optional.ofNullable(this.loadbalancerId);
    }

    /**
     * Specifies the name of the NAT pool. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return Specifies the name of the NAT pool. Changing this forces a new resource to be created.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * The transport protocol for the external endpoint. Possible values are `All`, `Tcp` and `Udp`.
     * 
     */
    @Import(name="protocol")
    private @Nullable Output protocol;

    /**
     * @return The transport protocol for the external endpoint. Possible values are `All`, `Tcp` and `Udp`.
     * 
     */
    public Optional> protocol() {
        return Optional.ofNullable(this.protocol);
    }

    /**
     * The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="resourceGroupName")
    private @Nullable Output resourceGroupName;

    /**
     * @return The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
     * 
     */
    public Optional> resourceGroupName() {
        return Optional.ofNullable(this.resourceGroupName);
    }

    /**
     * Is TCP Reset enabled for this Load Balancer Rule?
     * 
     */
    @Import(name="tcpResetEnabled")
    private @Nullable Output tcpResetEnabled;

    /**
     * @return Is TCP Reset enabled for this Load Balancer Rule?
     * 
     */
    public Optional> tcpResetEnabled() {
        return Optional.ofNullable(this.tcpResetEnabled);
    }

    private NatPoolState() {}

    private NatPoolState(NatPoolState $) {
        this.backendPort = $.backendPort;
        this.floatingIpEnabled = $.floatingIpEnabled;
        this.frontendIpConfigurationId = $.frontendIpConfigurationId;
        this.frontendIpConfigurationName = $.frontendIpConfigurationName;
        this.frontendPortEnd = $.frontendPortEnd;
        this.frontendPortStart = $.frontendPortStart;
        this.idleTimeoutInMinutes = $.idleTimeoutInMinutes;
        this.loadbalancerId = $.loadbalancerId;
        this.name = $.name;
        this.protocol = $.protocol;
        this.resourceGroupName = $.resourceGroupName;
        this.tcpResetEnabled = $.tcpResetEnabled;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(NatPoolState defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private NatPoolState $;

        public Builder() {
            $ = new NatPoolState();
        }

        public Builder(NatPoolState defaults) {
            $ = new NatPoolState(Objects.requireNonNull(defaults));
        }

        /**
         * @param backendPort The port used for the internal endpoint. Possible values range between 1 and 65535, inclusive.
         * 
         * @return builder
         * 
         */
        public Builder backendPort(@Nullable Output backendPort) {
            $.backendPort = backendPort;
            return this;
        }

        /**
         * @param backendPort The port used for the internal endpoint. Possible values range between 1 and 65535, inclusive.
         * 
         * @return builder
         * 
         */
        public Builder backendPort(Integer backendPort) {
            return backendPort(Output.of(backendPort));
        }

        /**
         * @param floatingIpEnabled Are the floating IPs enabled for this Load Balancer Rule? A floating IP is reassigned to a secondary server in case the primary server fails. Required to configure a SQL AlwaysOn Availability Group.
         * 
         * @return builder
         * 
         */
        public Builder floatingIpEnabled(@Nullable Output floatingIpEnabled) {
            $.floatingIpEnabled = floatingIpEnabled;
            return this;
        }

        /**
         * @param floatingIpEnabled Are the floating IPs enabled for this Load Balancer Rule? A floating IP is reassigned to a secondary server in case the primary server fails. Required to configure a SQL AlwaysOn Availability Group.
         * 
         * @return builder
         * 
         */
        public Builder floatingIpEnabled(Boolean floatingIpEnabled) {
            return floatingIpEnabled(Output.of(floatingIpEnabled));
        }

        public Builder frontendIpConfigurationId(@Nullable Output frontendIpConfigurationId) {
            $.frontendIpConfigurationId = frontendIpConfigurationId;
            return this;
        }

        public Builder frontendIpConfigurationId(String frontendIpConfigurationId) {
            return frontendIpConfigurationId(Output.of(frontendIpConfigurationId));
        }

        /**
         * @param frontendIpConfigurationName The name of the frontend IP configuration exposing this rule.
         * 
         * @return builder
         * 
         */
        public Builder frontendIpConfigurationName(@Nullable Output frontendIpConfigurationName) {
            $.frontendIpConfigurationName = frontendIpConfigurationName;
            return this;
        }

        /**
         * @param frontendIpConfigurationName The name of the frontend IP configuration exposing this rule.
         * 
         * @return builder
         * 
         */
        public Builder frontendIpConfigurationName(String frontendIpConfigurationName) {
            return frontendIpConfigurationName(Output.of(frontendIpConfigurationName));
        }

        /**
         * @param frontendPortEnd The last port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive.
         * 
         * @return builder
         * 
         */
        public Builder frontendPortEnd(@Nullable Output frontendPortEnd) {
            $.frontendPortEnd = frontendPortEnd;
            return this;
        }

        /**
         * @param frontendPortEnd The last port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive.
         * 
         * @return builder
         * 
         */
        public Builder frontendPortEnd(Integer frontendPortEnd) {
            return frontendPortEnd(Output.of(frontendPortEnd));
        }

        /**
         * @param frontendPortStart The first port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive.
         * 
         * @return builder
         * 
         */
        public Builder frontendPortStart(@Nullable Output frontendPortStart) {
            $.frontendPortStart = frontendPortStart;
            return this;
        }

        /**
         * @param frontendPortStart The first port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive.
         * 
         * @return builder
         * 
         */
        public Builder frontendPortStart(Integer frontendPortStart) {
            return frontendPortStart(Output.of(frontendPortStart));
        }

        /**
         * @param idleTimeoutInMinutes Specifies the idle timeout in minutes for TCP connections. Valid values are between `4` and `30`. Defaults to `4`.
         * 
         * @return builder
         * 
         */
        public Builder idleTimeoutInMinutes(@Nullable Output idleTimeoutInMinutes) {
            $.idleTimeoutInMinutes = idleTimeoutInMinutes;
            return this;
        }

        /**
         * @param idleTimeoutInMinutes Specifies the idle timeout in minutes for TCP connections. Valid values are between `4` and `30`. Defaults to `4`.
         * 
         * @return builder
         * 
         */
        public Builder idleTimeoutInMinutes(Integer idleTimeoutInMinutes) {
            return idleTimeoutInMinutes(Output.of(idleTimeoutInMinutes));
        }

        /**
         * @param loadbalancerId The ID of the Load Balancer in which to create the NAT pool. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder loadbalancerId(@Nullable Output loadbalancerId) {
            $.loadbalancerId = loadbalancerId;
            return this;
        }

        /**
         * @param loadbalancerId The ID of the Load Balancer in which to create the NAT pool. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder loadbalancerId(String loadbalancerId) {
            return loadbalancerId(Output.of(loadbalancerId));
        }

        /**
         * @param name Specifies the name of the NAT pool. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name Specifies the name of the NAT pool. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param protocol The transport protocol for the external endpoint. Possible values are `All`, `Tcp` and `Udp`.
         * 
         * @return builder
         * 
         */
        public Builder protocol(@Nullable Output protocol) {
            $.protocol = protocol;
            return this;
        }

        /**
         * @param protocol The transport protocol for the external endpoint. Possible values are `All`, `Tcp` and `Udp`.
         * 
         * @return builder
         * 
         */
        public Builder protocol(String protocol) {
            return protocol(Output.of(protocol));
        }

        /**
         * @param resourceGroupName The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(@Nullable Output resourceGroupName) {
            $.resourceGroupName = resourceGroupName;
            return this;
        }

        /**
         * @param resourceGroupName The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(String resourceGroupName) {
            return resourceGroupName(Output.of(resourceGroupName));
        }

        /**
         * @param tcpResetEnabled Is TCP Reset enabled for this Load Balancer Rule?
         * 
         * @return builder
         * 
         */
        public Builder tcpResetEnabled(@Nullable Output tcpResetEnabled) {
            $.tcpResetEnabled = tcpResetEnabled;
            return this;
        }

        /**
         * @param tcpResetEnabled Is TCP Reset enabled for this Load Balancer Rule?
         * 
         * @return builder
         * 
         */
        public Builder tcpResetEnabled(Boolean tcpResetEnabled) {
            return tcpResetEnabled(Output.of(tcpResetEnabled));
        }

        public NatPoolState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy