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

com.pulumi.awsnative.autoscaling.kotlin.inputs.AutoScalingGroupNetworkBandwidthGbpsRequestArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.autoscaling.kotlin.inputs

import com.pulumi.awsnative.autoscaling.inputs.AutoScalingGroupNetworkBandwidthGbpsRequestArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Double
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 * ``NetworkBandwidthGbpsRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum network bandwidth for an instance type, in Gbps.
 *   Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see [Available instance bandwidth](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html#available-instance-bandwidth) in the *Amazon EC2 User Guide for Linux Instances*.
 * @property max The maximum amount of network bandwidth, in gigabits per second (Gbps).
 * @property min The minimum amount of network bandwidth, in gigabits per second (Gbps).
 */
public data class AutoScalingGroupNetworkBandwidthGbpsRequestArgs(
    public val max: Output? = null,
    public val min: Output? = null,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.autoscaling.inputs.AutoScalingGroupNetworkBandwidthGbpsRequestArgs =
        com.pulumi.awsnative.autoscaling.inputs.AutoScalingGroupNetworkBandwidthGbpsRequestArgs.builder()
            .max(max?.applyValue({ args0 -> args0 }))
            .min(min?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [AutoScalingGroupNetworkBandwidthGbpsRequestArgs].
 */
@PulumiTagMarker
public class AutoScalingGroupNetworkBandwidthGbpsRequestArgsBuilder internal constructor() {
    private var max: Output? = null

    private var min: Output? = null

    /**
     * @param value The maximum amount of network bandwidth, in gigabits per second (Gbps).
     */
    @JvmName("gorcexxfkwfmxhmu")
    public suspend fun max(`value`: Output) {
        this.max = value
    }

    /**
     * @param value The minimum amount of network bandwidth, in gigabits per second (Gbps).
     */
    @JvmName("ilnwhspbpbdflggi")
    public suspend fun min(`value`: Output) {
        this.min = value
    }

    /**
     * @param value The maximum amount of network bandwidth, in gigabits per second (Gbps).
     */
    @JvmName("ypugwsjrqwcbsrhd")
    public suspend fun max(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.max = mapped
    }

    /**
     * @param value The minimum amount of network bandwidth, in gigabits per second (Gbps).
     */
    @JvmName("gviwqbbpwieutojx")
    public suspend fun min(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.min = mapped
    }

    internal fun build(): AutoScalingGroupNetworkBandwidthGbpsRequestArgs =
        AutoScalingGroupNetworkBandwidthGbpsRequestArgs(
            max = max,
            min = min,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy