![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.awsnative.ec2.kotlin.inputs.NetworkInterfaceAttachmentEnaSrdSpecificationArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.ec2.kotlin.inputs
import com.pulumi.awsnative.ec2.inputs.NetworkInterfaceAttachmentEnaSrdSpecificationArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* ENA Express uses AWS Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. With ENA Express, you can communicate between two EC2 instances in the same subnet within the same account, or in different accounts. Both sending and receiving instances must have ENA Express enabled.
* To improve the reliability of network packet delivery, ENA Express reorders network packets on the receiving end by default. However, some UDP-based applications are designed to handle network packets that are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express is enabled, you can specify whether UDP network traffic uses it.
* @property enaSrdEnabled Indicates whether ENA Express is enabled for the network interface.
* @property enaSrdUdpSpecification Configures ENA Express for UDP network traffic.
*/
public data class NetworkInterfaceAttachmentEnaSrdSpecificationArgs(
public val enaSrdEnabled: Output? = null,
public val enaSrdUdpSpecification: Output? =
null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.ec2.inputs.NetworkInterfaceAttachmentEnaSrdSpecificationArgs =
com.pulumi.awsnative.ec2.inputs.NetworkInterfaceAttachmentEnaSrdSpecificationArgs.builder()
.enaSrdEnabled(enaSrdEnabled?.applyValue({ args0 -> args0 }))
.enaSrdUdpSpecification(
enaSrdUdpSpecification?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [NetworkInterfaceAttachmentEnaSrdSpecificationArgs].
*/
@PulumiTagMarker
public class NetworkInterfaceAttachmentEnaSrdSpecificationArgsBuilder internal constructor() {
private var enaSrdEnabled: Output? = null
private var enaSrdUdpSpecification:
Output? =
null
/**
* @param value Indicates whether ENA Express is enabled for the network interface.
*/
@JvmName("lpwvmrmjiddfwatd")
public suspend fun enaSrdEnabled(`value`: Output) {
this.enaSrdEnabled = value
}
/**
* @param value Configures ENA Express for UDP network traffic.
*/
@JvmName("inmyoymyxtgpnert")
public suspend fun enaSrdUdpSpecification(`value`: Output) {
this.enaSrdUdpSpecification = value
}
/**
* @param value Indicates whether ENA Express is enabled for the network interface.
*/
@JvmName("icisdihmmfsalauh")
public suspend fun enaSrdEnabled(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.enaSrdEnabled = mapped
}
/**
* @param value Configures ENA Express for UDP network traffic.
*/
@JvmName("btxvoidwhopipcar")
public suspend fun enaSrdUdpSpecification(`value`: NetworkInterfaceAttachmentEnaSrdSpecificationEnaSrdUdpSpecificationPropertiesArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.enaSrdUdpSpecification = mapped
}
/**
* @param argument Configures ENA Express for UDP network traffic.
*/
@JvmName("pqudkggpwxsfieih")
public suspend fun enaSrdUdpSpecification(argument: suspend NetworkInterfaceAttachmentEnaSrdSpecificationEnaSrdUdpSpecificationPropertiesArgsBuilder.() -> Unit) {
val toBeMapped =
NetworkInterfaceAttachmentEnaSrdSpecificationEnaSrdUdpSpecificationPropertiesArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.enaSrdUdpSpecification = mapped
}
internal fun build(): NetworkInterfaceAttachmentEnaSrdSpecificationArgs =
NetworkInterfaceAttachmentEnaSrdSpecificationArgs(
enaSrdEnabled = enaSrdEnabled,
enaSrdUdpSpecification = enaSrdUdpSpecification,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy