![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.azurenative.network.kotlin.inputs.BackendAddressPoolArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-azure-native-kotlin Show documentation
Show all versions of pulumi-azure-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.azurenative.network.kotlin.inputs
import com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs.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.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Pool of backend IP addresses.
* @property drainPeriodInSeconds Amount of seconds Load Balancer waits for before sending RESET to client and backend address.
* @property id Resource ID.
* @property loadBalancerBackendAddresses An array of backend addresses.
* @property location The location of the backend address pool.
* @property name The name of the resource that is unique within the set of backend address pools used by the load balancer. This name can be used to access the resource.
* @property tunnelInterfaces An array of gateway load balancer tunnel interfaces.
* @property virtualNetwork A reference to a virtual network.
*/
public data class BackendAddressPoolArgs(
public val drainPeriodInSeconds: Output? = null,
public val id: Output? = null,
public val loadBalancerBackendAddresses: Output>? = null,
public val location: Output? = null,
public val name: Output? = null,
public val tunnelInterfaces: Output>? = null,
public val virtualNetwork: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs =
com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs.builder()
.drainPeriodInSeconds(drainPeriodInSeconds?.applyValue({ args0 -> args0 }))
.id(id?.applyValue({ args0 -> args0 }))
.loadBalancerBackendAddresses(
loadBalancerBackendAddresses?.applyValue({ args0 ->
args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.location(location?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.tunnelInterfaces(
tunnelInterfaces?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.virtualNetwork(
virtualNetwork?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [BackendAddressPoolArgs].
*/
@PulumiTagMarker
public class BackendAddressPoolArgsBuilder internal constructor() {
private var drainPeriodInSeconds: Output? = null
private var id: Output? = null
private var loadBalancerBackendAddresses: Output>? = null
private var location: Output? = null
private var name: Output? = null
private var tunnelInterfaces: Output>? = null
private var virtualNetwork: Output? = null
/**
* @param value Amount of seconds Load Balancer waits for before sending RESET to client and backend address.
*/
@JvmName("xahouxhxhfkyqxdw")
public suspend fun drainPeriodInSeconds(`value`: Output) {
this.drainPeriodInSeconds = value
}
/**
* @param value Resource ID.
*/
@JvmName("hrkwlyiipjqjsdar")
public suspend fun id(`value`: Output) {
this.id = value
}
/**
* @param value An array of backend addresses.
*/
@JvmName("nrjyloqtqsxqrfvg")
public suspend fun loadBalancerBackendAddresses(`value`: Output>) {
this.loadBalancerBackendAddresses = value
}
@JvmName("rljjwlymkowcnxfg")
public suspend fun loadBalancerBackendAddresses(vararg values: Output) {
this.loadBalancerBackendAddresses = Output.all(values.asList())
}
/**
* @param values An array of backend addresses.
*/
@JvmName("iavtcvgtowuhqyyn")
public suspend fun loadBalancerBackendAddresses(values: List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy