All Downloads are FREE. Search and download functionalities are using the official Maven repository.

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(),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy