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

com.pulumi.azure.compute.kotlin.inputs.ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.compute.kotlin.inputs

import com.pulumi.azure.compute.inputs.ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs.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.jvm.JvmName

/**
 *
 * @property keyUrl The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `azure.keyvault.Key` resource.
 * @property sourceVaultId The ID of the source Key Vault. This can be found as `id` on the `azure.keyvault.KeyVault` resource.
 */
public data class ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs(
    public val keyUrl: Output,
    public val sourceVaultId: Output,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.compute.inputs.ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs =
        com.pulumi.azure.compute.inputs.ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs.builder()
            .keyUrl(keyUrl.applyValue({ args0 -> args0 }))
            .sourceVaultId(sourceVaultId.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs].
 */
@PulumiTagMarker
public class ManagedDiskEncryptionSettingsKeyEncryptionKeyArgsBuilder internal constructor() {
    private var keyUrl: Output? = null

    private var sourceVaultId: Output? = null

    /**
     * @param value The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `azure.keyvault.Key` resource.
     */
    @JvmName("epsbamxfrwmkwxnv")
    public suspend fun keyUrl(`value`: Output) {
        this.keyUrl = value
    }

    /**
     * @param value The ID of the source Key Vault. This can be found as `id` on the `azure.keyvault.KeyVault` resource.
     */
    @JvmName("tkeubkrrvrqrmqtq")
    public suspend fun sourceVaultId(`value`: Output) {
        this.sourceVaultId = value
    }

    /**
     * @param value The URL to the Key Vault Key used as the Key Encryption Key. This can be found as `id` on the `azure.keyvault.Key` resource.
     */
    @JvmName("agxhhbkkfvymhkhv")
    public suspend fun keyUrl(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.keyUrl = mapped
    }

    /**
     * @param value The ID of the source Key Vault. This can be found as `id` on the `azure.keyvault.KeyVault` resource.
     */
    @JvmName("sdvlpqkliprknyro")
    public suspend fun sourceVaultId(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.sourceVaultId = mapped
    }

    internal fun build(): ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs =
        ManagedDiskEncryptionSettingsKeyEncryptionKeyArgs(
            keyUrl = keyUrl ?: throw PulumiNullFieldException("keyUrl"),
            sourceVaultId = sourceVaultId ?: throw PulumiNullFieldException("sourceVaultId"),
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy