com.pulumi.azurenative.cloudngfw.kotlin.inputs.FrontendSettingArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.cloudngfw.kotlin.inputs
import com.pulumi.azurenative.cloudngfw.inputs.FrontendSettingArgs.builder
import com.pulumi.azurenative.cloudngfw.kotlin.enums.ProtocolType
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 com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* Frontend setting for Firewall
* @property backendConfiguration Backend configurations
* @property frontendConfiguration Frontend configurations
* @property name Settings name
* @property protocol Protocol Type
*/
public data class FrontendSettingArgs(
public val backendConfiguration: Output,
public val frontendConfiguration: Output,
public val name: Output,
public val protocol: Output>,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.cloudngfw.inputs.FrontendSettingArgs =
com.pulumi.azurenative.cloudngfw.inputs.FrontendSettingArgs.builder()
.backendConfiguration(
backendConfiguration.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.frontendConfiguration(
frontendConfiguration.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.name(name.applyValue({ args0 -> args0 }))
.protocol(
protocol.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
).build()
}
/**
* Builder for [FrontendSettingArgs].
*/
@PulumiTagMarker
public class FrontendSettingArgsBuilder internal constructor() {
private var backendConfiguration: Output? = null
private var frontendConfiguration: Output? = null
private var name: Output? = null
private var protocol: Output>? = null
/**
* @param value Backend configurations
*/
@JvmName("qtjfltjibpxgneaq")
public suspend fun backendConfiguration(`value`: Output) {
this.backendConfiguration = value
}
/**
* @param value Frontend configurations
*/
@JvmName("kqhyokcisqhxlvqc")
public suspend fun frontendConfiguration(`value`: Output) {
this.frontendConfiguration = value
}
/**
* @param value Settings name
*/
@JvmName("dsssedxgfgpffjwn")
public suspend fun name(`value`: Output) {
this.name = value
}
/**
* @param value Protocol Type
*/
@JvmName("apyspuofgittabgf")
public suspend fun protocol(`value`: Output>) {
this.protocol = value
}
/**
* @param value Backend configurations
*/
@JvmName("vbwjiwweoiujgqvl")
public suspend fun backendConfiguration(`value`: EndpointConfigurationArgs) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.backendConfiguration = mapped
}
/**
* @param argument Backend configurations
*/
@JvmName("utxaphyudafuyhdd")
public suspend fun backendConfiguration(argument: suspend EndpointConfigurationArgsBuilder.() -> Unit) {
val toBeMapped = EndpointConfigurationArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.backendConfiguration = mapped
}
/**
* @param value Frontend configurations
*/
@JvmName("kpekjpamordpcgfd")
public suspend fun frontendConfiguration(`value`: EndpointConfigurationArgs) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.frontendConfiguration = mapped
}
/**
* @param argument Frontend configurations
*/
@JvmName("tottbbuelogitxpx")
public suspend fun frontendConfiguration(argument: suspend EndpointConfigurationArgsBuilder.() -> Unit) {
val toBeMapped = EndpointConfigurationArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.frontendConfiguration = mapped
}
/**
* @param value Settings name
*/
@JvmName("nappcubkxsywfiya")
public suspend fun name(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.name = mapped
}
/**
* @param value Protocol Type
*/
@JvmName("tduoijuptunxplse")
public suspend fun protocol(`value`: Either) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.protocol = mapped
}
/**
* @param value Protocol Type
*/
@JvmName("grhkjhdlrkofcbkc")
public fun protocol(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.protocol = mapped
}
/**
* @param value Protocol Type
*/
@JvmName("byboggiefgnsdxoh")
public fun protocol(`value`: ProtocolType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.protocol = mapped
}
internal fun build(): FrontendSettingArgs = FrontendSettingArgs(
backendConfiguration = backendConfiguration ?: throw
PulumiNullFieldException("backendConfiguration"),
frontendConfiguration = frontendConfiguration ?: throw
PulumiNullFieldException("frontendConfiguration"),
name = name ?: throw PulumiNullFieldException("name"),
protocol = protocol ?: throw PulumiNullFieldException("protocol"),
)
}