com.pulumi.azure.webpubsub.kotlin.inputs.ServiceIdentityArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.webpubsub.kotlin.inputs
import com.pulumi.azure.webpubsub.inputs.ServiceIdentityArgs.builder
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.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
*
* @property identityIds Specifies a list of User Assigned Managed Identity IDs to be assigned to this Web PubSub.
* > **NOTE:** This is required when `type` is set to `UserAssigned`
* @property principalId The Principal ID associated with this Managed Service Identity.
* @property tenantId The Tenant ID associated with this Managed Service Identity.
* @property type Specifies the type of Managed Service Identity that should be configured on this Web PubSub. Possible values are `SystemAssigned`, `UserAssigned`.
*/
public data class ServiceIdentityArgs(
public val identityIds: Output>? = null,
public val principalId: Output? = null,
public val tenantId: Output? = null,
public val type: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azure.webpubsub.inputs.ServiceIdentityArgs =
com.pulumi.azure.webpubsub.inputs.ServiceIdentityArgs.builder()
.identityIds(identityIds?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.principalId(principalId?.applyValue({ args0 -> args0 }))
.tenantId(tenantId?.applyValue({ args0 -> args0 }))
.type(type.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ServiceIdentityArgs].
*/
@PulumiTagMarker
public class ServiceIdentityArgsBuilder internal constructor() {
private var identityIds: Output>? = null
private var principalId: Output? = null
private var tenantId: Output? = null
private var type: Output? = null
/**
* @param value Specifies a list of User Assigned Managed Identity IDs to be assigned to this Web PubSub.
* > **NOTE:** This is required when `type` is set to `UserAssigned`
*/
@JvmName("ajwagdhshmettfeo")
public suspend fun identityIds(`value`: Output>) {
this.identityIds = value
}
@JvmName("sfamqwsdxhefayiy")
public suspend fun identityIds(vararg values: Output) {
this.identityIds = Output.all(values.asList())
}
/**
* @param values Specifies a list of User Assigned Managed Identity IDs to be assigned to this Web PubSub.
* > **NOTE:** This is required when `type` is set to `UserAssigned`
*/
@JvmName("sokgafnaoobbpfvb")
public suspend fun identityIds(values: List