com.pulumi.azurenative.network.kotlin.inputs.AzureFirewallNatRuleCollectionArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.network.kotlin.inputs
import com.pulumi.azurenative.network.inputs.AzureFirewallNatRuleCollectionArgs.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
/**
* NAT rule collection resource.
* @property action The action type of a NAT rule collection.
* @property id Resource ID.
* @property name The name of the resource that is unique within the Azure firewall. This name can be used to access the resource.
* @property priority Priority of the NAT rule collection resource.
* @property rules Collection of rules used by a NAT rule collection.
*/
public data class AzureFirewallNatRuleCollectionArgs(
public val action: Output? = null,
public val id: Output? = null,
public val name: Output? = null,
public val priority: Output? = null,
public val rules: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.network.inputs.AzureFirewallNatRuleCollectionArgs =
com.pulumi.azurenative.network.inputs.AzureFirewallNatRuleCollectionArgs.builder()
.action(action?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.id(id?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.priority(priority?.applyValue({ args0 -> args0 }))
.rules(
rules?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [AzureFirewallNatRuleCollectionArgs].
*/
@PulumiTagMarker
public class AzureFirewallNatRuleCollectionArgsBuilder internal constructor() {
private var action: Output? = null
private var id: Output? = null
private var name: Output? = null
private var priority: Output? = null
private var rules: Output>? = null
/**
* @param value The action type of a NAT rule collection.
*/
@JvmName("cjeguprkbdsvxolc")
public suspend fun action(`value`: Output) {
this.action = value
}
/**
* @param value Resource ID.
*/
@JvmName("htkbukjiwnquqdwf")
public suspend fun id(`value`: Output) {
this.id = value
}
/**
* @param value The name of the resource that is unique within the Azure firewall. This name can be used to access the resource.
*/
@JvmName("fhtoreuiaqocucpi")
public suspend fun name(`value`: Output) {
this.name = value
}
/**
* @param value Priority of the NAT rule collection resource.
*/
@JvmName("cysbgfinogvlcvff")
public suspend fun priority(`value`: Output) {
this.priority = value
}
/**
* @param value Collection of rules used by a NAT rule collection.
*/
@JvmName("woocslambfmtaygn")
public suspend fun rules(`value`: Output>) {
this.rules = value
}
@JvmName("vnxyyxtgdtyhpbxg")
public suspend fun rules(vararg values: Output) {
this.rules = Output.all(values.asList())
}
/**
* @param values Collection of rules used by a NAT rule collection.
*/
@JvmName("qjnieqmklqndvcsr")
public suspend fun rules(values: List