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

com.pulumi.azurenative.mobilenetwork.inputs.PortReuseHoldTimesArgs 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.azurenative.mobilenetwork.inputs;

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


/**
 * The minimum time (in seconds) that will pass before a port that was used by a closed pinhole can be recycled for use by another pinhole. All hold times must be minimum 1 second.
 * 
 */
public final class PortReuseHoldTimesArgs extends com.pulumi.resources.ResourceArgs {

    public static final PortReuseHoldTimesArgs Empty = new PortReuseHoldTimesArgs();

    /**
     * Minimum time in seconds that will pass before a TCP port that was used by a closed pinhole can be reused. Default for TCP is 2 minutes.
     * 
     */
    @Import(name="tcp")
    private @Nullable Output tcp;

    /**
     * @return Minimum time in seconds that will pass before a TCP port that was used by a closed pinhole can be reused. Default for TCP is 2 minutes.
     * 
     */
    public Optional> tcp() {
        return Optional.ofNullable(this.tcp);
    }

    /**
     * Minimum time in seconds that will pass before a UDP port that was used by a closed pinhole can be reused. Default for UDP is 1 minute.
     * 
     */
    @Import(name="udp")
    private @Nullable Output udp;

    /**
     * @return Minimum time in seconds that will pass before a UDP port that was used by a closed pinhole can be reused. Default for UDP is 1 minute.
     * 
     */
    public Optional> udp() {
        return Optional.ofNullable(this.udp);
    }

    private PortReuseHoldTimesArgs() {}

    private PortReuseHoldTimesArgs(PortReuseHoldTimesArgs $) {
        this.tcp = $.tcp;
        this.udp = $.udp;
    }

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

    public static final class Builder {
        private PortReuseHoldTimesArgs $;

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

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

        /**
         * @param tcp Minimum time in seconds that will pass before a TCP port that was used by a closed pinhole can be reused. Default for TCP is 2 minutes.
         * 
         * @return builder
         * 
         */
        public Builder tcp(@Nullable Output tcp) {
            $.tcp = tcp;
            return this;
        }

        /**
         * @param tcp Minimum time in seconds that will pass before a TCP port that was used by a closed pinhole can be reused. Default for TCP is 2 minutes.
         * 
         * @return builder
         * 
         */
        public Builder tcp(Integer tcp) {
            return tcp(Output.of(tcp));
        }

        /**
         * @param udp Minimum time in seconds that will pass before a UDP port that was used by a closed pinhole can be reused. Default for UDP is 1 minute.
         * 
         * @return builder
         * 
         */
        public Builder udp(@Nullable Output udp) {
            $.udp = udp;
            return this;
        }

        /**
         * @param udp Minimum time in seconds that will pass before a UDP port that was used by a closed pinhole can be reused. Default for UDP is 1 minute.
         * 
         * @return builder
         * 
         */
        public Builder udp(Integer udp) {
            return udp(Output.of(udp));
        }

        public PortReuseHoldTimesArgs build() {
            $.tcp = Codegen.integerProp("tcp").output().arg($.tcp).def(120).getNullable();
            $.udp = Codegen.integerProp("udp").output().arg($.udp).def(60).getNullable();
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy