com.pulumi.azurenative.appconfiguration.kotlin.outputs.ResourceIdentityResponse.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.appconfiguration.kotlin.outputs
import kotlin.String
import kotlin.Suppress
import kotlin.collections.Map
/**
* An identity that can be associated with a resource.
* @property principalId The principal id of the identity. This property will only be provided for a system-assigned identity.
* @property tenantId The tenant id associated with the resource's identity. This property will only be provided for a system-assigned identity.
* @property type The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identities.
* @property userAssignedIdentities The list of user-assigned identities associated with the resource. The user-assigned identity dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
*/
public data class ResourceIdentityResponse(
public val principalId: String,
public val tenantId: String,
public val type: String? = null,
public val userAssignedIdentities: Map? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.azurenative.appconfiguration.outputs.ResourceIdentityResponse): ResourceIdentityResponse = ResourceIdentityResponse(
principalId = javaType.principalId(),
tenantId = javaType.tenantId(),
type = javaType.type().map({ args0 -> args0 }).orElse(null),
userAssignedIdentities = javaType.userAssignedIdentities().map({ args0 ->
args0.key.to(
args0.value.let({ args0 ->
com.pulumi.azurenative.appconfiguration.kotlin.outputs.UserIdentityResponse.Companion.toKotlin(args0)
}),
)
}).toMap(),
)
}
}