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

com.pulumi.azurenative.compute.kotlin.inputs.DiskRestorePointAttributesArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.azurenative.compute.kotlin.inputs

import com.pulumi.azurenative.compute.inputs.DiskRestorePointAttributesArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 * Disk Restore Point details.
 * @property encryption Encryption at rest settings for disk restore point. It is an optional property that can be specified in the input while creating a restore point.
 * @property sourceDiskRestorePoint Resource Id of the source disk restore point.
 */
public data class DiskRestorePointAttributesArgs(
    public val encryption: Output? = null,
    public val sourceDiskRestorePoint: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.compute.inputs.DiskRestorePointAttributesArgs =
        com.pulumi.azurenative.compute.inputs.DiskRestorePointAttributesArgs.builder()
            .encryption(encryption?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .sourceDiskRestorePoint(
                sourceDiskRestorePoint?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            ).build()
}

/**
 * Builder for [DiskRestorePointAttributesArgs].
 */
@PulumiTagMarker
public class DiskRestorePointAttributesArgsBuilder internal constructor() {
    private var encryption: Output? = null

    private var sourceDiskRestorePoint: Output? = null

    /**
     * @param value Encryption at rest settings for disk restore point. It is an optional property that can be specified in the input while creating a restore point.
     */
    @JvmName("ginlnkdpsobwigcx")
    public suspend fun encryption(`value`: Output) {
        this.encryption = value
    }

    /**
     * @param value Resource Id of the source disk restore point.
     */
    @JvmName("vtwbjiuvqublqhrk")
    public suspend fun sourceDiskRestorePoint(`value`: Output) {
        this.sourceDiskRestorePoint = value
    }

    /**
     * @param value Encryption at rest settings for disk restore point. It is an optional property that can be specified in the input while creating a restore point.
     */
    @JvmName("asytstonrqiwmowk")
    public suspend fun encryption(`value`: RestorePointEncryptionArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.encryption = mapped
    }

    /**
     * @param argument Encryption at rest settings for disk restore point. It is an optional property that can be specified in the input while creating a restore point.
     */
    @JvmName("kyfomdoixynamdvn")
    public suspend fun encryption(argument: suspend RestorePointEncryptionArgsBuilder.() -> Unit) {
        val toBeMapped = RestorePointEncryptionArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.encryption = mapped
    }

    /**
     * @param value Resource Id of the source disk restore point.
     */
    @JvmName("ivmfmgooqjxkvjft")
    public suspend fun sourceDiskRestorePoint(`value`: ApiEntityReferenceArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sourceDiskRestorePoint = mapped
    }

    /**
     * @param argument Resource Id of the source disk restore point.
     */
    @JvmName("yfyxpncwvmdqgxij")
    public suspend fun sourceDiskRestorePoint(argument: suspend ApiEntityReferenceArgsBuilder.() -> Unit) {
        val toBeMapped = ApiEntityReferenceArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.sourceDiskRestorePoint = mapped
    }

    internal fun build(): DiskRestorePointAttributesArgs = DiskRestorePointAttributesArgs(
        encryption = encryption,
        sourceDiskRestorePoint = sourceDiskRestorePoint,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy