
com.pulumi.azurenative.iotoperations.kotlin.inputs.BrokerAuthenticatorMethodsArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.iotoperations.kotlin.inputs
import com.pulumi.azurenative.iotoperations.inputs.BrokerAuthenticatorMethodsArgs.builder
import com.pulumi.azurenative.iotoperations.kotlin.enums.BrokerAuthenticationMethod
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
/**
* Set of broker authentication policies. Only one method is supported for each entry.
* @property custom Custom authentication configuration.
* @property method Custom authentication configuration.
* @property serviceAccountToken ServiceAccountToken authentication configuration.
* @property x509Credentials X.509 authentication configuration.
*/
public data class BrokerAuthenticatorMethodsArgs(
public val custom: Output? = null,
public val method: Output>,
public val serviceAccountToken: Output? = null,
public val x509Credentials: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.iotoperations.inputs.BrokerAuthenticatorMethodsArgs = com.pulumi.azurenative.iotoperations.inputs.BrokerAuthenticatorMethodsArgs.builder()
.custom(custom?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.method(
method.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.serviceAccountToken(
serviceAccountToken?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.x509Credentials(
x509Credentials?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [BrokerAuthenticatorMethodsArgs].
*/
@PulumiTagMarker
public class BrokerAuthenticatorMethodsArgsBuilder internal constructor() {
private var custom: Output? = null
private var method: Output>? = null
private var serviceAccountToken: Output? = null
private var x509Credentials: Output? = null
/**
* @param value Custom authentication configuration.
*/
@JvmName("lpvhyrnhdscflajc")
public suspend fun custom(`value`: Output) {
this.custom = value
}
/**
* @param value Custom authentication configuration.
*/
@JvmName("bpusmbctattrbfad")
public suspend fun method(`value`: Output>) {
this.method = value
}
/**
* @param value ServiceAccountToken authentication configuration.
*/
@JvmName("cuqwqkxalyioanbs")
public suspend fun serviceAccountToken(`value`: Output) {
this.serviceAccountToken = value
}
/**
* @param value X.509 authentication configuration.
*/
@JvmName("npngvirrtixqihov")
public suspend fun x509Credentials(`value`: Output) {
this.x509Credentials = value
}
/**
* @param value Custom authentication configuration.
*/
@JvmName("hmcxemnprdfgehra")
public suspend fun custom(`value`: BrokerAuthenticatorMethodCustomArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.custom = mapped
}
/**
* @param argument Custom authentication configuration.
*/
@JvmName("ngdivstcyvglunxv")
public suspend fun custom(argument: suspend BrokerAuthenticatorMethodCustomArgsBuilder.() -> Unit) {
val toBeMapped = BrokerAuthenticatorMethodCustomArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.custom = mapped
}
/**
* @param value Custom authentication configuration.
*/
@JvmName("kybierjgmfvdkbkt")
public suspend fun method(`value`: Either) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.method = mapped
}
/**
* @param value Custom authentication configuration.
*/
@JvmName("stbixqmhbvfbqstt")
public fun method(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.method = mapped
}
/**
* @param value Custom authentication configuration.
*/
@JvmName("pmaofcorjmyxijfp")
public fun method(`value`: BrokerAuthenticationMethod) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.method = mapped
}
/**
* @param value ServiceAccountToken authentication configuration.
*/
@JvmName("rethctofmkwymivs")
public suspend fun serviceAccountToken(`value`: BrokerAuthenticatorMethodSatArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.serviceAccountToken = mapped
}
/**
* @param argument ServiceAccountToken authentication configuration.
*/
@JvmName("uuhmjqdjptikcnkw")
public suspend fun serviceAccountToken(argument: suspend BrokerAuthenticatorMethodSatArgsBuilder.() -> Unit) {
val toBeMapped = BrokerAuthenticatorMethodSatArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.serviceAccountToken = mapped
}
/**
* @param value X.509 authentication configuration.
*/
@JvmName("sadaueeowytgrrey")
public suspend fun x509Credentials(`value`: BrokerAuthenticatorMethodX509Args?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.x509Credentials = mapped
}
/**
* @param argument X.509 authentication configuration.
*/
@JvmName("qdaoqkcxhqfuofhr")
public suspend fun x509Credentials(argument: suspend BrokerAuthenticatorMethodX509ArgsBuilder.() -> Unit) {
val toBeMapped = BrokerAuthenticatorMethodX509ArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.x509Credentials = mapped
}
internal fun build(): BrokerAuthenticatorMethodsArgs = BrokerAuthenticatorMethodsArgs(
custom = custom,
method = method ?: throw PulumiNullFieldException("method"),
serviceAccountToken = serviceAccountToken,
x509Credentials = x509Credentials,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy