![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.azurenative.databox.kotlin.inputs.DataExportDetailsArgs.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.DataExportDetailsArgs.builder
import com.pulumi.azurenative.databox.kotlin.enums.LogCollectionLevel
import com.pulumi.core.Either
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 com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* Details of the data to be used for exporting data from azure.
* @property accountDetails Account details of the data to be transferred
* @property logCollectionLevel Level of the logs to be collected.
* @property transferConfiguration Configuration for the data transfer.
*/
public data class DataExportDetailsArgs(
public val accountDetails: Output>,
public val logCollectionLevel: Output>? = null,
public val transferConfiguration: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.databox.inputs.DataExportDetailsArgs =
com.pulumi.azurenative.databox.inputs.DataExportDetailsArgs.builder()
.accountDetails(
accountDetails.applyValue({ args0 ->
args0.transform({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}, { args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.logCollectionLevel(
logCollectionLevel?.applyValue({ args0 ->
args0.transform(
{ args0 -> args0 },
{ args0 -> args0.let({ args0 -> args0.toJava() }) },
)
}),
)
.transferConfiguration(
transferConfiguration.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [DataExportDetailsArgs].
*/
@PulumiTagMarker
public class DataExportDetailsArgsBuilder internal constructor() {
private var accountDetails: Output>? =
null
private var logCollectionLevel: Output>? = null
private var transferConfiguration: Output? = null
/**
* @param value Account details of the data to be transferred
*/
@JvmName("wshitpqfoaipsfcy")
public suspend fun accountDetails(`value`: Output>) {
this.accountDetails = value
}
/**
* @param value Level of the logs to be collected.
*/
@JvmName("qjdyibubpxbirqqh")
public suspend fun logCollectionLevel(`value`: Output>) {
this.logCollectionLevel = value
}
/**
* @param value Configuration for the data transfer.
*/
@JvmName("fiaapcfqrxxsltrf")
public suspend fun transferConfiguration(`value`: Output) {
this.transferConfiguration = value
}
/**
* @param value Account details of the data to be transferred
*/
@JvmName("cdlrhkghihcjrkgo")
public suspend fun accountDetails(`value`: Either) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.accountDetails = mapped
}
/**
* @param value Account details of the data to be transferred
*/
@JvmName("diwemcwxjfgpyyxv")
public fun accountDetails(`value`: ManagedDiskDetailsArgs) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.accountDetails = mapped
}
/**
* @param value Account details of the data to be transferred
*/
@JvmName("weachorbuykrmolw")
public fun accountDetails(`value`: StorageAccountDetailsArgs) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.accountDetails = mapped
}
/**
* @param value Level of the logs to be collected.
*/
@JvmName("lmctbieboitbwaya")
public suspend fun logCollectionLevel(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.logCollectionLevel = mapped
}
/**
* @param value Level of the logs to be collected.
*/
@JvmName("nkgobpairbrvcnck")
public fun logCollectionLevel(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.logCollectionLevel = mapped
}
/**
* @param value Level of the logs to be collected.
*/
@JvmName("mpvwipglhcghameg")
public fun logCollectionLevel(`value`: LogCollectionLevel) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.logCollectionLevel = mapped
}
/**
* @param value Configuration for the data transfer.
*/
@JvmName("bxbogthbtdyaudgr")
public suspend fun transferConfiguration(`value`: TransferConfigurationArgs) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.transferConfiguration = mapped
}
/**
* @param argument Configuration for the data transfer.
*/
@JvmName("bqwbuopfwqvpuijg")
public suspend fun transferConfiguration(argument: suspend TransferConfigurationArgsBuilder.() -> Unit) {
val toBeMapped = TransferConfigurationArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.transferConfiguration = mapped
}
internal fun build(): DataExportDetailsArgs = DataExportDetailsArgs(
accountDetails = accountDetails ?: throw PulumiNullFieldException("accountDetails"),
logCollectionLevel = logCollectionLevel,
transferConfiguration = transferConfiguration ?: throw
PulumiNullFieldException("transferConfiguration"),
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy