
com.pulumi.azurenative.networkcloud.kotlin.inputs.ServiceLoadBalancerBgpPeerArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.networkcloud.kotlin.inputs
import com.pulumi.azurenative.networkcloud.inputs.ServiceLoadBalancerBgpPeerArgs.builder
import com.pulumi.azurenative.networkcloud.kotlin.enums.BfdEnabled
import com.pulumi.azurenative.networkcloud.kotlin.enums.BgpMultiHop
import com.pulumi.core.Either
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Double
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property bfdEnabled The indicator of BFD enablement for this BgpPeer.
* @property bgpMultiHop The indicator to enable multi-hop peering support.
* @property holdTime The requested BGP hold time value. This field uses ISO 8601 duration format, for example P1H.
* @property keepAliveTime The requested BGP keepalive time value. This field uses ISO 8601 duration format, for example P1H.
* @property myAsn The autonomous system number used for the local end of the BGP session.
* @property name The name used to identify this BGP peer for association with a BGP advertisement.
* @property password The authentication password for routers enforcing TCP MD5 authenticated sessions.
* @property peerAddress The IPv4 or IPv6 address used to connect this BGP session.
* @property peerAsn The autonomous system number expected from the remote end of the BGP session.
* @property peerPort The port used to connect this BGP session.
*/
public data class ServiceLoadBalancerBgpPeerArgs(
public val bfdEnabled: Output>? = null,
public val bgpMultiHop: Output>? = null,
public val holdTime: Output? = null,
public val keepAliveTime: Output? = null,
public val myAsn: Output? = null,
public val name: Output,
public val password: Output? = null,
public val peerAddress: Output,
public val peerAsn: Output,
public val peerPort: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.networkcloud.inputs.ServiceLoadBalancerBgpPeerArgs =
com.pulumi.azurenative.networkcloud.inputs.ServiceLoadBalancerBgpPeerArgs.builder()
.bfdEnabled(
bfdEnabled?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.bgpMultiHop(
bgpMultiHop?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.holdTime(holdTime?.applyValue({ args0 -> args0 }))
.keepAliveTime(keepAliveTime?.applyValue({ args0 -> args0 }))
.myAsn(myAsn?.applyValue({ args0 -> args0 }))
.name(name.applyValue({ args0 -> args0 }))
.password(password?.applyValue({ args0 -> args0 }))
.peerAddress(peerAddress.applyValue({ args0 -> args0 }))
.peerAsn(peerAsn.applyValue({ args0 -> args0 }))
.peerPort(peerPort?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ServiceLoadBalancerBgpPeerArgs].
*/
@PulumiTagMarker
public class ServiceLoadBalancerBgpPeerArgsBuilder internal constructor() {
private var bfdEnabled: Output>? = null
private var bgpMultiHop: Output>? = null
private var holdTime: Output? = null
private var keepAliveTime: Output? = null
private var myAsn: Output? = null
private var name: Output? = null
private var password: Output? = null
private var peerAddress: Output? = null
private var peerAsn: Output? = null
private var peerPort: Output? = null
/**
* @param value The indicator of BFD enablement for this BgpPeer.
*/
@JvmName("bbeuxcfswhqngphw")
public suspend fun bfdEnabled(`value`: Output>) {
this.bfdEnabled = value
}
/**
* @param value The indicator to enable multi-hop peering support.
*/
@JvmName("oeumctlqpnipfgts")
public suspend fun bgpMultiHop(`value`: Output>) {
this.bgpMultiHop = value
}
/**
* @param value The requested BGP hold time value. This field uses ISO 8601 duration format, for example P1H.
*/
@JvmName("coypbxfmraakjnfp")
public suspend fun holdTime(`value`: Output) {
this.holdTime = value
}
/**
* @param value The requested BGP keepalive time value. This field uses ISO 8601 duration format, for example P1H.
*/
@JvmName("dymgolyrclunjnul")
public suspend fun keepAliveTime(`value`: Output) {
this.keepAliveTime = value
}
/**
* @param value The autonomous system number used for the local end of the BGP session.
*/
@JvmName("qvioqibqotsqxmdb")
public suspend fun myAsn(`value`: Output) {
this.myAsn = value
}
/**
* @param value The name used to identify this BGP peer for association with a BGP advertisement.
*/
@JvmName("spxypqllouyliird")
public suspend fun name(`value`: Output) {
this.name = value
}
/**
* @param value The authentication password for routers enforcing TCP MD5 authenticated sessions.
*/
@JvmName("ksvmjohbngnogsva")
public suspend fun password(`value`: Output) {
this.password = value
}
/**
* @param value The IPv4 or IPv6 address used to connect this BGP session.
*/
@JvmName("lvbvgslgvghjppml")
public suspend fun peerAddress(`value`: Output) {
this.peerAddress = value
}
/**
* @param value The autonomous system number expected from the remote end of the BGP session.
*/
@JvmName("sygghnqvyhlxnlsa")
public suspend fun peerAsn(`value`: Output) {
this.peerAsn = value
}
/**
* @param value The port used to connect this BGP session.
*/
@JvmName("hlqtafiwqdydbfka")
public suspend fun peerPort(`value`: Output) {
this.peerPort = value
}
/**
* @param value The indicator of BFD enablement for this BgpPeer.
*/
@JvmName("fovlyebjkmcmghwe")
public suspend fun bfdEnabled(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.bfdEnabled = mapped
}
/**
* @param value The indicator of BFD enablement for this BgpPeer.
*/
@JvmName("iaxhpbnesjkfggyd")
public fun bfdEnabled(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.bfdEnabled = mapped
}
/**
* @param value The indicator of BFD enablement for this BgpPeer.
*/
@JvmName("gprxdsmurswydtgq")
public fun bfdEnabled(`value`: BfdEnabled) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.bfdEnabled = mapped
}
/**
* @param value The indicator to enable multi-hop peering support.
*/
@JvmName("vudgbbotmpyyasgm")
public suspend fun bgpMultiHop(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.bgpMultiHop = mapped
}
/**
* @param value The indicator to enable multi-hop peering support.
*/
@JvmName("kmhylufhbofwtosb")
public fun bgpMultiHop(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.bgpMultiHop = mapped
}
/**
* @param value The indicator to enable multi-hop peering support.
*/
@JvmName("wuprvviljdlnbmwh")
public fun bgpMultiHop(`value`: BgpMultiHop) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.bgpMultiHop = mapped
}
/**
* @param value The requested BGP hold time value. This field uses ISO 8601 duration format, for example P1H.
*/
@JvmName("dnstiniktqufkxgo")
public suspend fun holdTime(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.holdTime = mapped
}
/**
* @param value The requested BGP keepalive time value. This field uses ISO 8601 duration format, for example P1H.
*/
@JvmName("rxddnnbcchgarkop")
public suspend fun keepAliveTime(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.keepAliveTime = mapped
}
/**
* @param value The autonomous system number used for the local end of the BGP session.
*/
@JvmName("mqociopvdbccxthg")
public suspend fun myAsn(`value`: Double?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.myAsn = mapped
}
/**
* @param value The name used to identify this BGP peer for association with a BGP advertisement.
*/
@JvmName("crsjeusqniyqpsqd")
public suspend fun name(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.name = mapped
}
/**
* @param value The authentication password for routers enforcing TCP MD5 authenticated sessions.
*/
@JvmName("cdlwegjxohrrelrb")
public suspend fun password(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.password = mapped
}
/**
* @param value The IPv4 or IPv6 address used to connect this BGP session.
*/
@JvmName("nemlulhnaogdukvg")
public suspend fun peerAddress(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.peerAddress = mapped
}
/**
* @param value The autonomous system number expected from the remote end of the BGP session.
*/
@JvmName("rfdyhhcgtqajnvgc")
public suspend fun peerAsn(`value`: Double) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.peerAsn = mapped
}
/**
* @param value The port used to connect this BGP session.
*/
@JvmName("sdkoacxnmtqamjbm")
public suspend fun peerPort(`value`: Double?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.peerPort = mapped
}
internal fun build(): ServiceLoadBalancerBgpPeerArgs = ServiceLoadBalancerBgpPeerArgs(
bfdEnabled = bfdEnabled,
bgpMultiHop = bgpMultiHop,
holdTime = holdTime,
keepAliveTime = keepAliveTime,
myAsn = myAsn,
name = name ?: throw PulumiNullFieldException("name"),
password = password,
peerAddress = peerAddress ?: throw PulumiNullFieldException("peerAddress"),
peerAsn = peerAsn ?: throw PulumiNullFieldException("peerAsn"),
peerPort = peerPort,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy