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

com.pulumi.azurenative.datafactory.kotlin.inputs.CopyActivityArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 2.82.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.datafactory.kotlin.inputs

import com.pulumi.azurenative.datafactory.inputs.CopyActivityArgs.builder
import com.pulumi.azurenative.datafactory.kotlin.enums.ActivityOnInactiveMarkAs
import com.pulumi.azurenative.datafactory.kotlin.enums.ActivityState
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.Any
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 * Copy activity.
 * @property dataIntegrationUnits Maximum number of data integration units that can be used to perform this data movement. Type: integer (or Expression with resultType integer), minimum: 0.
 * @property dependsOn Activity depends on condition.
 * @property description Activity description.
 * @property enableSkipIncompatibleRow Whether to skip incompatible row. Default value is false. Type: boolean (or Expression with resultType boolean).
 * @property enableStaging Specifies whether to copy data via an interim staging. Default value is false. Type: boolean (or Expression with resultType boolean).
 * @property inputs List of inputs for the activity.
 * @property linkedServiceName Linked service reference.
 * @property logSettings Log settings customer needs provide when enabling log.
 * @property logStorageSettings (Deprecated. Please use LogSettings) Log storage settings customer need to provide when enabling session log.
 * @property name Activity name.
 * @property onInactiveMarkAs Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
 * @property outputs List of outputs for the activity.
 * @property parallelCopies Maximum number of concurrent sessions opened on the source or sink to avoid overloading the data store. Type: integer (or Expression with resultType integer), minimum: 0.
 * @property policy Activity policy.
 * @property preserve Preserve rules.
 * @property preserveRules Preserve Rules.
 * @property redirectIncompatibleRowSettings Redirect incompatible row settings when EnableSkipIncompatibleRow is true.
 * @property sink Copy activity sink.
 * @property skipErrorFile Specify the fault tolerance for data consistency.
 * @property source Copy activity source.
 * @property stagingSettings Specifies interim staging settings when EnableStaging is true.
 * @property state Activity state. This is an optional property and if not provided, the state will be Active by default.
 * @property translator Copy activity translator. If not specified, tabular translator is used.
 * @property type Type of activity.
 * Expected value is 'Copy'.
 * @property userProperties Activity user properties.
 * @property validateDataConsistency Whether to enable Data Consistency validation. Type: boolean (or Expression with resultType boolean).
 */
public data class CopyActivityArgs(
    public val dataIntegrationUnits: Output? = null,
    public val dependsOn: Output>? = null,
    public val description: Output? = null,
    public val enableSkipIncompatibleRow: Output? = null,
    public val enableStaging: Output? = null,
    public val inputs: Output>? = null,
    public val linkedServiceName: Output? = null,
    public val logSettings: Output? = null,
    public val logStorageSettings: Output? = null,
    public val name: Output,
    public val onInactiveMarkAs: Output>? = null,
    public val outputs: Output>? = null,
    public val parallelCopies: Output? = null,
    public val policy: Output? = null,
    public val preserve: Output>? = null,
    public val preserveRules: Output>? = null,
    public val redirectIncompatibleRowSettings: Output? = null,
    public val sink: Output,
    public val skipErrorFile: Output? = null,
    public val source: Output,
    public val stagingSettings: Output? = null,
    public val state: Output>? = null,
    public val translator: Output? = null,
    public val type: Output,
    public val userProperties: Output>? = null,
    public val validateDataConsistency: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.datafactory.inputs.CopyActivityArgs =
        com.pulumi.azurenative.datafactory.inputs.CopyActivityArgs.builder()
            .dataIntegrationUnits(dataIntegrationUnits?.applyValue({ args0 -> args0 }))
            .dependsOn(
                dependsOn?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .description(description?.applyValue({ args0 -> args0 }))
            .enableSkipIncompatibleRow(enableSkipIncompatibleRow?.applyValue({ args0 -> args0 }))
            .enableStaging(enableStaging?.applyValue({ args0 -> args0 }))
            .inputs(inputs?.applyValue({ args0 -> args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) }) }))
            .linkedServiceName(linkedServiceName?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .logSettings(logSettings?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .logStorageSettings(
                logStorageSettings?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .name(name.applyValue({ args0 -> args0 }))
            .onInactiveMarkAs(
                onInactiveMarkAs?.applyValue({ args0 ->
                    args0.transform(
                        { args0 -> args0 },
                        { args0 -> args0.let({ args0 -> args0.toJava() }) },
                    )
                }),
            )
            .outputs(
                outputs?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .parallelCopies(parallelCopies?.applyValue({ args0 -> args0 }))
            .policy(policy?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .preserve(preserve?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .preserveRules(preserveRules?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .redirectIncompatibleRowSettings(
                redirectIncompatibleRowSettings?.applyValue({ args0 ->
                    args0.let({ args0 -> args0.toJava() })
                }),
            )
            .sink(sink.applyValue({ args0 -> args0 }))
            .skipErrorFile(skipErrorFile?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .source(source.applyValue({ args0 -> args0 }))
            .stagingSettings(stagingSettings?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .state(
                state?.applyValue({ args0 ->
                    args0.transform({ args0 -> args0 }, { args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .translator(translator?.applyValue({ args0 -> args0 }))
            .type(type.applyValue({ args0 -> args0 }))
            .userProperties(
                userProperties?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .validateDataConsistency(validateDataConsistency?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [CopyActivityArgs].
 */
@PulumiTagMarker
public class CopyActivityArgsBuilder internal constructor() {
    private var dataIntegrationUnits: Output? = null

    private var dependsOn: Output>? = null

    private var description: Output? = null

    private var enableSkipIncompatibleRow: Output? = null

    private var enableStaging: Output? = null

    private var inputs: Output>? = null

    private var linkedServiceName: Output? = null

    private var logSettings: Output? = null

    private var logStorageSettings: Output? = null

    private var name: Output? = null

    private var onInactiveMarkAs: Output>? = null

    private var outputs: Output>? = null

    private var parallelCopies: Output? = null

    private var policy: Output? = null

    private var preserve: Output>? = null

    private var preserveRules: Output>? = null

    private var redirectIncompatibleRowSettings: Output? = null

    private var sink: Output? = null

    private var skipErrorFile: Output? = null

    private var source: Output? = null

    private var stagingSettings: Output? = null

    private var state: Output>? = null

    private var translator: Output? = null

    private var type: Output? = null

    private var userProperties: Output>? = null

    private var validateDataConsistency: Output? = null

    /**
     * @param value Maximum number of data integration units that can be used to perform this data movement. Type: integer (or Expression with resultType integer), minimum: 0.
     */
    @JvmName("skhnfcsitauahmgr")
    public suspend fun dataIntegrationUnits(`value`: Output) {
        this.dataIntegrationUnits = value
    }

    /**
     * @param value Activity depends on condition.
     */
    @JvmName("ncifwdgsaqjwxjsp")
    public suspend fun dependsOn(`value`: Output>) {
        this.dependsOn = value
    }

    @JvmName("mqypawvchgoxgbjt")
    public suspend fun dependsOn(vararg values: Output) {
        this.dependsOn = Output.all(values.asList())
    }

    /**
     * @param values Activity depends on condition.
     */
    @JvmName("qabwdnijtwfvjuxl")
    public suspend fun dependsOn(values: List>) {
        this.dependsOn = Output.all(values)
    }

    /**
     * @param value Activity description.
     */
    @JvmName("ryrmuauepvkprhjf")
    public suspend fun description(`value`: Output) {
        this.description = value
    }

    /**
     * @param value Whether to skip incompatible row. Default value is false. Type: boolean (or Expression with resultType boolean).
     */
    @JvmName("mwwceildwdrlmpef")
    public suspend fun enableSkipIncompatibleRow(`value`: Output) {
        this.enableSkipIncompatibleRow = value
    }

    /**
     * @param value Specifies whether to copy data via an interim staging. Default value is false. Type: boolean (or Expression with resultType boolean).
     */
    @JvmName("pxpibvdujchqbppg")
    public suspend fun enableStaging(`value`: Output) {
        this.enableStaging = value
    }

    /**
     * @param value List of inputs for the activity.
     */
    @JvmName("ugbskbkupbgfsoxe")
    public suspend fun inputs(`value`: Output>) {
        this.inputs = value
    }

    @JvmName("lpqklmkwsiswqgrk")
    public suspend fun inputs(vararg values: Output) {
        this.inputs = Output.all(values.asList())
    }

    /**
     * @param values List of inputs for the activity.
     */
    @JvmName("gtbkndmkndbkebbx")
    public suspend fun inputs(values: List>) {
        this.inputs = Output.all(values)
    }

    /**
     * @param value Linked service reference.
     */
    @JvmName("hjogolotvshxxxci")
    public suspend fun linkedServiceName(`value`: Output) {
        this.linkedServiceName = value
    }

    /**
     * @param value Log settings customer needs provide when enabling log.
     */
    @JvmName("vcvddkrbjphlblrk")
    public suspend fun logSettings(`value`: Output) {
        this.logSettings = value
    }

    /**
     * @param value (Deprecated. Please use LogSettings) Log storage settings customer need to provide when enabling session log.
     */
    @JvmName("oauoumxycrnefxtb")
    public suspend fun logStorageSettings(`value`: Output) {
        this.logStorageSettings = value
    }

    /**
     * @param value Activity name.
     */
    @JvmName("gxxuvrlhojtignib")
    public suspend fun name(`value`: Output) {
        this.name = value
    }

    /**
     * @param value Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
     */
    @JvmName("cycqnsiufaevrxpj")
    public suspend fun onInactiveMarkAs(`value`: Output>) {
        this.onInactiveMarkAs = value
    }

    /**
     * @param value List of outputs for the activity.
     */
    @JvmName("uilounnfscprkkbm")
    public suspend fun outputs(`value`: Output>) {
        this.outputs = value
    }

    @JvmName("tjljfhkatdhbdrwd")
    public suspend fun outputs(vararg values: Output) {
        this.outputs = Output.all(values.asList())
    }

    /**
     * @param values List of outputs for the activity.
     */
    @JvmName("elglgcgfvdswlpmo")
    public suspend fun outputs(values: List>) {
        this.outputs = Output.all(values)
    }

    /**
     * @param value Maximum number of concurrent sessions opened on the source or sink to avoid overloading the data store. Type: integer (or Expression with resultType integer), minimum: 0.
     */
    @JvmName("uipyphwhgasurtkw")
    public suspend fun parallelCopies(`value`: Output) {
        this.parallelCopies = value
    }

    /**
     * @param value Activity policy.
     */
    @JvmName("ldvuasraxksnwinh")
    public suspend fun policy(`value`: Output) {
        this.policy = value
    }

    /**
     * @param value Preserve rules.
     */
    @JvmName("geedbhvusujgkrkp")
    public suspend fun preserve(`value`: Output>) {
        this.preserve = value
    }

    @JvmName("tnbpuhyojqcbdyyv")
    public suspend fun preserve(vararg values: Output) {
        this.preserve = Output.all(values.asList())
    }

    /**
     * @param values Preserve rules.
     */
    @JvmName("eacsexmbalyqjawm")
    public suspend fun preserve(values: List>) {
        this.preserve = Output.all(values)
    }

    /**
     * @param value Preserve Rules.
     */
    @JvmName("cwrdlajhombyilte")
    public suspend fun preserveRules(`value`: Output>) {
        this.preserveRules = value
    }

    @JvmName("jgfcmoagpsijcdwp")
    public suspend fun preserveRules(vararg values: Output) {
        this.preserveRules = Output.all(values.asList())
    }

    /**
     * @param values Preserve Rules.
     */
    @JvmName("khjkjawtyhkgaboa")
    public suspend fun preserveRules(values: List>) {
        this.preserveRules = Output.all(values)
    }

    /**
     * @param value Redirect incompatible row settings when EnableSkipIncompatibleRow is true.
     */
    @JvmName("iqxdylgcrttstrwg")
    public suspend fun redirectIncompatibleRowSettings(`value`: Output) {
        this.redirectIncompatibleRowSettings = value
    }

    /**
     * @param value Copy activity sink.
     */
    @JvmName("xlosikjqitlfdiin")
    public suspend fun sink(`value`: Output) {
        this.sink = value
    }

    /**
     * @param value Specify the fault tolerance for data consistency.
     */
    @JvmName("euaytcbybkqwikqd")
    public suspend fun skipErrorFile(`value`: Output) {
        this.skipErrorFile = value
    }

    /**
     * @param value Copy activity source.
     */
    @JvmName("pionqrvfwdivicnr")
    public suspend fun source(`value`: Output) {
        this.source = value
    }

    /**
     * @param value Specifies interim staging settings when EnableStaging is true.
     */
    @JvmName("yocpnwthpvbdsiqm")
    public suspend fun stagingSettings(`value`: Output) {
        this.stagingSettings = value
    }

    /**
     * @param value Activity state. This is an optional property and if not provided, the state will be Active by default.
     */
    @JvmName("ooafskeinqmpirxc")
    public suspend fun state(`value`: Output>) {
        this.state = value
    }

    /**
     * @param value Copy activity translator. If not specified, tabular translator is used.
     */
    @JvmName("nylvkbmcklrdihvm")
    public suspend fun translator(`value`: Output) {
        this.translator = value
    }

    /**
     * @param value Type of activity.
     * Expected value is 'Copy'.
     */
    @JvmName("simbwfhkmynkfspb")
    public suspend fun type(`value`: Output) {
        this.type = value
    }

    /**
     * @param value Activity user properties.
     */
    @JvmName("klqwjhgvijyfymjc")
    public suspend fun userProperties(`value`: Output>) {
        this.userProperties = value
    }

    @JvmName("ybabiwciyphpdori")
    public suspend fun userProperties(vararg values: Output) {
        this.userProperties = Output.all(values.asList())
    }

    /**
     * @param values Activity user properties.
     */
    @JvmName("ykkadhiswgkfqlvj")
    public suspend fun userProperties(values: List>) {
        this.userProperties = Output.all(values)
    }

    /**
     * @param value Whether to enable Data Consistency validation. Type: boolean (or Expression with resultType boolean).
     */
    @JvmName("fguliblcvvucvilx")
    public suspend fun validateDataConsistency(`value`: Output) {
        this.validateDataConsistency = value
    }

    /**
     * @param value Maximum number of data integration units that can be used to perform this data movement. Type: integer (or Expression with resultType integer), minimum: 0.
     */
    @JvmName("hpdledipofliffmu")
    public suspend fun dataIntegrationUnits(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dataIntegrationUnits = mapped
    }

    /**
     * @param value Activity depends on condition.
     */
    @JvmName("pvpxlsiswutchfmp")
    public suspend fun dependsOn(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dependsOn = mapped
    }

    /**
     * @param argument Activity depends on condition.
     */
    @JvmName("hexlsbjwbletbwqj")
    public suspend fun dependsOn(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            ActivityDependencyArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.dependsOn = mapped
    }

    /**
     * @param argument Activity depends on condition.
     */
    @JvmName("qqulvghhguhseiwe")
    public suspend fun dependsOn(vararg argument: suspend ActivityDependencyArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            ActivityDependencyArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.dependsOn = mapped
    }

    /**
     * @param argument Activity depends on condition.
     */
    @JvmName("ldajmouoktlwwrnt")
    public suspend fun dependsOn(argument: suspend ActivityDependencyArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(ActivityDependencyArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.dependsOn = mapped
    }

    /**
     * @param values Activity depends on condition.
     */
    @JvmName("yxtxfbdvhyspguyd")
    public suspend fun dependsOn(vararg values: ActivityDependencyArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.dependsOn = mapped
    }

    /**
     * @param value Activity description.
     */
    @JvmName("qxwisvekopyuhxhq")
    public suspend fun description(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.description = mapped
    }

    /**
     * @param value Whether to skip incompatible row. Default value is false. Type: boolean (or Expression with resultType boolean).
     */
    @JvmName("ueualoppmeufvkam")
    public suspend fun enableSkipIncompatibleRow(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.enableSkipIncompatibleRow = mapped
    }

    /**
     * @param value Specifies whether to copy data via an interim staging. Default value is false. Type: boolean (or Expression with resultType boolean).
     */
    @JvmName("vvhfobjxxejetcxr")
    public suspend fun enableStaging(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.enableStaging = mapped
    }

    /**
     * @param value List of inputs for the activity.
     */
    @JvmName("ephxidbbjhwbsycc")
    public suspend fun inputs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.inputs = mapped
    }

    /**
     * @param argument List of inputs for the activity.
     */
    @JvmName("rljjhwmgptrqdcsw")
    public suspend fun inputs(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DatasetReferenceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.inputs = mapped
    }

    /**
     * @param argument List of inputs for the activity.
     */
    @JvmName("pmrkupryutfuvmvv")
    public suspend fun inputs(vararg argument: suspend DatasetReferenceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DatasetReferenceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.inputs = mapped
    }

    /**
     * @param argument List of inputs for the activity.
     */
    @JvmName("sydkniveqtuelpjk")
    public suspend fun inputs(argument: suspend DatasetReferenceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(DatasetReferenceArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.inputs = mapped
    }

    /**
     * @param values List of inputs for the activity.
     */
    @JvmName("acwgxqkuvainbckw")
    public suspend fun inputs(vararg values: DatasetReferenceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.inputs = mapped
    }

    /**
     * @param value Linked service reference.
     */
    @JvmName("wyimodwbmyjvddoc")
    public suspend fun linkedServiceName(`value`: LinkedServiceReferenceArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.linkedServiceName = mapped
    }

    /**
     * @param argument Linked service reference.
     */
    @JvmName("wrmilosgqybynjom")
    public suspend fun linkedServiceName(argument: suspend LinkedServiceReferenceArgsBuilder.() -> Unit) {
        val toBeMapped = LinkedServiceReferenceArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.linkedServiceName = mapped
    }

    /**
     * @param value Log settings customer needs provide when enabling log.
     */
    @JvmName("jbsxhoqgfdlbwmnk")
    public suspend fun logSettings(`value`: LogSettingsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.logSettings = mapped
    }

    /**
     * @param argument Log settings customer needs provide when enabling log.
     */
    @JvmName("resbmrqgqcfxjqle")
    public suspend fun logSettings(argument: suspend LogSettingsArgsBuilder.() -> Unit) {
        val toBeMapped = LogSettingsArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.logSettings = mapped
    }

    /**
     * @param value (Deprecated. Please use LogSettings) Log storage settings customer need to provide when enabling session log.
     */
    @JvmName("hidtbarvwfrklqqm")
    public suspend fun logStorageSettings(`value`: LogStorageSettingsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.logStorageSettings = mapped
    }

    /**
     * @param argument (Deprecated. Please use LogSettings) Log storage settings customer need to provide when enabling session log.
     */
    @JvmName("oehanpkelubnelfe")
    public suspend fun logStorageSettings(argument: suspend LogStorageSettingsArgsBuilder.() -> Unit) {
        val toBeMapped = LogStorageSettingsArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.logStorageSettings = mapped
    }

    /**
     * @param value Activity name.
     */
    @JvmName("vlndmkndoyudadje")
    public suspend fun name(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.name = mapped
    }

    /**
     * @param value Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
     */
    @JvmName("itrwxjtgbyeldfvn")
    public suspend fun onInactiveMarkAs(`value`: Either?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.onInactiveMarkAs = mapped
    }

    /**
     * @param value Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
     */
    @JvmName("kxyyjfuqfstnagjt")
    public fun onInactiveMarkAs(`value`: String) {
        val toBeMapped = Either.ofLeft(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.onInactiveMarkAs = mapped
    }

    /**
     * @param value Status result of the activity when the state is set to Inactive. This is an optional property and if not provided when the activity is inactive, the status will be Succeeded by default.
     */
    @JvmName("hxoepvjypwyjkdpv")
    public fun onInactiveMarkAs(`value`: ActivityOnInactiveMarkAs) {
        val toBeMapped = Either.ofRight(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.onInactiveMarkAs = mapped
    }

    /**
     * @param value List of outputs for the activity.
     */
    @JvmName("tibiafvnrwaqfqge")
    public suspend fun outputs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.outputs = mapped
    }

    /**
     * @param argument List of outputs for the activity.
     */
    @JvmName("aloxnxbljwdnlons")
    public suspend fun outputs(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DatasetReferenceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.outputs = mapped
    }

    /**
     * @param argument List of outputs for the activity.
     */
    @JvmName("ppdtyjebnpvlqarm")
    public suspend fun outputs(vararg argument: suspend DatasetReferenceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DatasetReferenceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.outputs = mapped
    }

    /**
     * @param argument List of outputs for the activity.
     */
    @JvmName("txxwkqtygkyhiesq")
    public suspend fun outputs(argument: suspend DatasetReferenceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(DatasetReferenceArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.outputs = mapped
    }

    /**
     * @param values List of outputs for the activity.
     */
    @JvmName("xbwfbqudwjfwsgti")
    public suspend fun outputs(vararg values: DatasetReferenceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.outputs = mapped
    }

    /**
     * @param value Maximum number of concurrent sessions opened on the source or sink to avoid overloading the data store. Type: integer (or Expression with resultType integer), minimum: 0.
     */
    @JvmName("pdfhvyuiktftycnm")
    public suspend fun parallelCopies(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.parallelCopies = mapped
    }

    /**
     * @param value Activity policy.
     */
    @JvmName("wkwdsisndjxinpym")
    public suspend fun policy(`value`: ActivityPolicyArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.policy = mapped
    }

    /**
     * @param argument Activity policy.
     */
    @JvmName("wwyyhayxtoaybgyo")
    public suspend fun policy(argument: suspend ActivityPolicyArgsBuilder.() -> Unit) {
        val toBeMapped = ActivityPolicyArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.policy = mapped
    }

    /**
     * @param value Preserve rules.
     */
    @JvmName("tqdxexwvriavoesn")
    public suspend fun preserve(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.preserve = mapped
    }

    /**
     * @param values Preserve rules.
     */
    @JvmName("korpyeohlhbbmvda")
    public suspend fun preserve(vararg values: Any) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.preserve = mapped
    }

    /**
     * @param value Preserve Rules.
     */
    @JvmName("djfiopqfwvtcttpg")
    public suspend fun preserveRules(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.preserveRules = mapped
    }

    /**
     * @param values Preserve Rules.
     */
    @JvmName("trroarborqisrojx")
    public suspend fun preserveRules(vararg values: Any) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.preserveRules = mapped
    }

    /**
     * @param value Redirect incompatible row settings when EnableSkipIncompatibleRow is true.
     */
    @JvmName("lhrrwpowtcttnufg")
    public suspend fun redirectIncompatibleRowSettings(`value`: RedirectIncompatibleRowSettingsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.redirectIncompatibleRowSettings = mapped
    }

    /**
     * @param argument Redirect incompatible row settings when EnableSkipIncompatibleRow is true.
     */
    @JvmName("hkqkqcvftgvvieub")
    public suspend fun redirectIncompatibleRowSettings(argument: suspend RedirectIncompatibleRowSettingsArgsBuilder.() -> Unit) {
        val toBeMapped = RedirectIncompatibleRowSettingsArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.redirectIncompatibleRowSettings = mapped
    }

    /**
     * @param value Copy activity sink.
     */
    @JvmName("naxucbyvdkaqsxgw")
    public suspend fun sink(`value`: Any) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.sink = mapped
    }

    /**
     * @param value Specify the fault tolerance for data consistency.
     */
    @JvmName("inwehdxqrhuxswwn")
    public suspend fun skipErrorFile(`value`: SkipErrorFileArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.skipErrorFile = mapped
    }

    /**
     * @param argument Specify the fault tolerance for data consistency.
     */
    @JvmName("mbigixcefeqbifow")
    public suspend fun skipErrorFile(argument: suspend SkipErrorFileArgsBuilder.() -> Unit) {
        val toBeMapped = SkipErrorFileArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.skipErrorFile = mapped
    }

    /**
     * @param value Copy activity source.
     */
    @JvmName("emvfmndpapdtmxjp")
    public suspend fun source(`value`: Any) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.source = mapped
    }

    /**
     * @param value Specifies interim staging settings when EnableStaging is true.
     */
    @JvmName("tlkcmtwxtnvwwuvf")
    public suspend fun stagingSettings(`value`: StagingSettingsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.stagingSettings = mapped
    }

    /**
     * @param argument Specifies interim staging settings when EnableStaging is true.
     */
    @JvmName("uevuejpecancpufc")
    public suspend fun stagingSettings(argument: suspend StagingSettingsArgsBuilder.() -> Unit) {
        val toBeMapped = StagingSettingsArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.stagingSettings = mapped
    }

    /**
     * @param value Activity state. This is an optional property and if not provided, the state will be Active by default.
     */
    @JvmName("jnkaxethuriwqvmc")
    public suspend fun state(`value`: Either?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.state = mapped
    }

    /**
     * @param value Activity state. This is an optional property and if not provided, the state will be Active by default.
     */
    @JvmName("fydexvdowrdqflsi")
    public fun state(`value`: String) {
        val toBeMapped = Either.ofLeft(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.state = mapped
    }

    /**
     * @param value Activity state. This is an optional property and if not provided, the state will be Active by default.
     */
    @JvmName("hteookdsqhqldqod")
    public fun state(`value`: ActivityState) {
        val toBeMapped = Either.ofRight(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.state = mapped
    }

    /**
     * @param value Copy activity translator. If not specified, tabular translator is used.
     */
    @JvmName("fmxxwwhqaybbusvc")
    public suspend fun translator(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.translator = mapped
    }

    /**
     * @param value Type of activity.
     * Expected value is 'Copy'.
     */
    @JvmName("pnvykgrpbbnqnobs")
    public suspend fun type(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.type = mapped
    }

    /**
     * @param value Activity user properties.
     */
    @JvmName("dyydhyjpsvkelwfb")
    public suspend fun userProperties(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.userProperties = mapped
    }

    /**
     * @param argument Activity user properties.
     */
    @JvmName("pyjdtwdysybtqroo")
    public suspend fun userProperties(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            UserPropertyArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.userProperties = mapped
    }

    /**
     * @param argument Activity user properties.
     */
    @JvmName("ehfqslyeshypiurs")
    public suspend fun userProperties(vararg argument: suspend UserPropertyArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            UserPropertyArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.userProperties = mapped
    }

    /**
     * @param argument Activity user properties.
     */
    @JvmName("eqfthdsetlcfdumw")
    public suspend fun userProperties(argument: suspend UserPropertyArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(UserPropertyArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.userProperties = mapped
    }

    /**
     * @param values Activity user properties.
     */
    @JvmName("shylggaieqyyyhgj")
    public suspend fun userProperties(vararg values: UserPropertyArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.userProperties = mapped
    }

    /**
     * @param value Whether to enable Data Consistency validation. Type: boolean (or Expression with resultType boolean).
     */
    @JvmName("vcnwhhivjloseamf")
    public suspend fun validateDataConsistency(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.validateDataConsistency = mapped
    }

    internal fun build(): CopyActivityArgs = CopyActivityArgs(
        dataIntegrationUnits = dataIntegrationUnits,
        dependsOn = dependsOn,
        description = description,
        enableSkipIncompatibleRow = enableSkipIncompatibleRow,
        enableStaging = enableStaging,
        inputs = inputs,
        linkedServiceName = linkedServiceName,
        logSettings = logSettings,
        logStorageSettings = logStorageSettings,
        name = name ?: throw PulumiNullFieldException("name"),
        onInactiveMarkAs = onInactiveMarkAs,
        outputs = outputs,
        parallelCopies = parallelCopies,
        policy = policy,
        preserve = preserve,
        preserveRules = preserveRules,
        redirectIncompatibleRowSettings = redirectIncompatibleRowSettings,
        sink = sink ?: throw PulumiNullFieldException("sink"),
        skipErrorFile = skipErrorFile,
        source = source ?: throw PulumiNullFieldException("source"),
        stagingSettings = stagingSettings,
        state = state,
        translator = translator,
        type = type ?: throw PulumiNullFieldException("type"),
        userProperties = userProperties,
        validateDataConsistency = validateDataConsistency,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy