![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.azurenative.databox.kotlin.inputs.ManagedDiskDetailsArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-azure-native-kotlin Show documentation
Show all versions of pulumi-azure-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.databox.kotlin.inputs
import com.pulumi.azurenative.databox.inputs.ManagedDiskDetailsArgs.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
/**
* Details of the managed disks.
* @property dataAccountType Account Type of the data to be transferred.
* Expected value is 'ManagedDisk'.
* @property resourceGroupId Resource Group Id of the compute disks.
* @property sharePassword Password for all the shares to be created on the device. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\-$%^!+=;:_()]+
* @property stagingStorageAccountId Resource Id of the storage account that can be used to copy the vhd for staging.
*/
public data class ManagedDiskDetailsArgs(
public val dataAccountType: Output,
public val resourceGroupId: Output,
public val sharePassword: Output? = null,
public val stagingStorageAccountId: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.databox.inputs.ManagedDiskDetailsArgs =
com.pulumi.azurenative.databox.inputs.ManagedDiskDetailsArgs.builder()
.dataAccountType(dataAccountType.applyValue({ args0 -> args0 }))
.resourceGroupId(resourceGroupId.applyValue({ args0 -> args0 }))
.sharePassword(sharePassword?.applyValue({ args0 -> args0 }))
.stagingStorageAccountId(stagingStorageAccountId.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ManagedDiskDetailsArgs].
*/
@PulumiTagMarker
public class ManagedDiskDetailsArgsBuilder internal constructor() {
private var dataAccountType: Output? = null
private var resourceGroupId: Output? = null
private var sharePassword: Output? = null
private var stagingStorageAccountId: Output? = null
/**
* @param value Account Type of the data to be transferred.
* Expected value is 'ManagedDisk'.
*/
@JvmName("ntunxwvnymdyomgk")
public suspend fun dataAccountType(`value`: Output) {
this.dataAccountType = value
}
/**
* @param value Resource Group Id of the compute disks.
*/
@JvmName("lbibmoonabrifvnm")
public suspend fun resourceGroupId(`value`: Output) {
this.resourceGroupId = value
}
/**
* @param value Password for all the shares to be created on the device. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\-$%^!+=;:_()]+
*/
@JvmName("qmbmecmobjtxxeby")
public suspend fun sharePassword(`value`: Output) {
this.sharePassword = value
}
/**
* @param value Resource Id of the storage account that can be used to copy the vhd for staging.
*/
@JvmName("evuuecpcldsvpuni")
public suspend fun stagingStorageAccountId(`value`: Output) {
this.stagingStorageAccountId = value
}
/**
* @param value Account Type of the data to be transferred.
* Expected value is 'ManagedDisk'.
*/
@JvmName("bwmymjalcimtjnpl")
public suspend fun dataAccountType(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.dataAccountType = mapped
}
/**
* @param value Resource Group Id of the compute disks.
*/
@JvmName("awaqsyomeakvqygh")
public suspend fun resourceGroupId(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.resourceGroupId = mapped
}
/**
* @param value Password for all the shares to be created on the device. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\-$%^!+=;:_()]+
*/
@JvmName("pjnriwsqvjqnapij")
public suspend fun sharePassword(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sharePassword = mapped
}
/**
* @param value Resource Id of the storage account that can be used to copy the vhd for staging.
*/
@JvmName("asyemdrnclypxbxl")
public suspend fun stagingStorageAccountId(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.stagingStorageAccountId = mapped
}
internal fun build(): ManagedDiskDetailsArgs = ManagedDiskDetailsArgs(
dataAccountType = dataAccountType ?: throw PulumiNullFieldException("dataAccountType"),
resourceGroupId = resourceGroupId ?: throw PulumiNullFieldException("resourceGroupId"),
sharePassword = sharePassword,
stagingStorageAccountId = stagingStorageAccountId ?: throw
PulumiNullFieldException("stagingStorageAccountId"),
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy