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

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

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

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

import com.pulumi.azurenative.datafactory.inputs.ExecuteSSISPackageActivityArgs.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.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName

/**
 * Execute SSIS package activity.
 * @property connectVia The integration runtime reference.
 * @property dependsOn Activity depends on condition.
 * @property description Activity description.
 * @property environmentPath The environment path to execute the SSIS package. Type: string (or Expression with resultType string).
 * @property executionCredential The package execution credential.
 * @property linkedServiceName Linked service reference.
 * @property logLocation SSIS package execution log location.
 * @property loggingLevel The logging level of SSIS package execution. Type: string (or Expression with resultType string).
 * @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 packageConnectionManagers The package level connection managers to execute the SSIS package.
 * @property packageLocation SSIS package location.
 * @property packageParameters The package level parameters to execute the SSIS package.
 * @property policy Activity policy.
 * @property projectConnectionManagers The project level connection managers to execute the SSIS package.
 * @property projectParameters The project level parameters to execute the SSIS package.
 * @property propertyOverrides The property overrides to execute the SSIS package.
 * @property runtime Specifies the runtime to execute SSIS package. The value should be "x86" or "x64". Type: string (or Expression with resultType string).
 * @property state Activity state. This is an optional property and if not provided, the state will be Active by default.
 * @property type Type of activity.
 * Expected value is 'ExecuteSSISPackage'.
 * @property userProperties Activity user properties.
 */
public data class ExecuteSSISPackageActivityArgs(
    public val connectVia: Output,
    public val dependsOn: Output>? = null,
    public val description: Output? = null,
    public val environmentPath: Output? = null,
    public val executionCredential: Output? = null,
    public val linkedServiceName: Output? = null,
    public val logLocation: Output? = null,
    public val loggingLevel: Output? = null,
    public val name: Output,
    public val onInactiveMarkAs: Output>? = null,
    public val packageConnectionManagers: Output>>? = null,
    public val packageLocation: Output,
    public val packageParameters: Output>? = null,
    public val policy: Output? = null,
    public val projectConnectionManagers: Output>>? = null,
    public val projectParameters: Output>? = null,
    public val propertyOverrides: Output>? = null,
    public val runtime: Output? = null,
    public val state: Output>? = null,
    public val type: Output,
    public val userProperties: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.datafactory.inputs.ExecuteSSISPackageActivityArgs =
        com.pulumi.azurenative.datafactory.inputs.ExecuteSSISPackageActivityArgs.builder()
            .connectVia(connectVia.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .dependsOn(
                dependsOn?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .description(description?.applyValue({ args0 -> args0 }))
            .environmentPath(environmentPath?.applyValue({ args0 -> args0 }))
            .executionCredential(
                executionCredential?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .linkedServiceName(linkedServiceName?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .logLocation(logLocation?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .loggingLevel(loggingLevel?.applyValue({ args0 -> args0 }))
            .name(name.applyValue({ args0 -> args0 }))
            .onInactiveMarkAs(
                onInactiveMarkAs?.applyValue({ args0 ->
                    args0.transform(
                        { args0 -> args0 },
                        { args0 -> args0.let({ args0 -> args0.toJava() }) },
                    )
                }),
            )
            .packageConnectionManagers(
                packageConnectionManagers?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(
                            args0.value.map({ args0 ->
                                args0.key.to(
                                    args0.value.let({ args0 ->
                                        args0.toJava()
                                    }),
                                )
                            }).toMap(),
                        )
                    }).toMap()
                }),
            )
            .packageLocation(packageLocation.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .packageParameters(
                packageParameters?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(args0.value.let({ args0 -> args0.toJava() }))
                    }).toMap()
                }),
            )
            .policy(policy?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .projectConnectionManagers(
                projectConnectionManagers?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(
                            args0.value.map({ args0 ->
                                args0.key.to(
                                    args0.value.let({ args0 ->
                                        args0.toJava()
                                    }),
                                )
                            }).toMap(),
                        )
                    }).toMap()
                }),
            )
            .projectParameters(
                projectParameters?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(args0.value.let({ args0 -> args0.toJava() }))
                    }).toMap()
                }),
            )
            .propertyOverrides(
                propertyOverrides?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(args0.value.let({ args0 -> args0.toJava() }))
                    }).toMap()
                }),
            )
            .runtime(runtime?.applyValue({ args0 -> args0 }))
            .state(
                state?.applyValue({ args0 ->
                    args0.transform({ args0 -> args0 }, { args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .type(type.applyValue({ args0 -> args0 }))
            .userProperties(
                userProperties?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            ).build()
}

/**
 * Builder for [ExecuteSSISPackageActivityArgs].
 */
@PulumiTagMarker
public class ExecuteSSISPackageActivityArgsBuilder internal constructor() {
    private var connectVia: Output? = null

    private var dependsOn: Output>? = null

    private var description: Output? = null

    private var environmentPath: Output? = null

    private var executionCredential: Output? = null

    private var linkedServiceName: Output? = null

    private var logLocation: Output? = null

    private var loggingLevel: Output? = null

    private var name: Output? = null

    private var onInactiveMarkAs: Output>? = null

    private var packageConnectionManagers:
        Output>>? = null

    private var packageLocation: Output? = null

    private var packageParameters: Output>? = null

    private var policy: Output? = null

    private var projectConnectionManagers:
        Output>>? = null

    private var projectParameters: Output>? = null

    private var propertyOverrides: Output>? = null

    private var runtime: Output? = null

    private var state: Output>? = null

    private var type: Output? = null

    private var userProperties: Output>? = null

    /**
     * @param value The integration runtime reference.
     */
    @JvmName("hyenlwtvhfgfiqhb")
    public suspend fun connectVia(`value`: Output) {
        this.connectVia = value
    }

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

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

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

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

    /**
     * @param value The environment path to execute the SSIS package. Type: string (or Expression with resultType string).
     */
    @JvmName("nigfxwyoxttcthth")
    public suspend fun environmentPath(`value`: Output) {
        this.environmentPath = value
    }

    /**
     * @param value The package execution credential.
     */
    @JvmName("tixtpywqtvquqfqh")
    public suspend fun executionCredential(`value`: Output) {
        this.executionCredential = value
    }

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

    /**
     * @param value SSIS package execution log location.
     */
    @JvmName("vpbmmcpaqmdtbqca")
    public suspend fun logLocation(`value`: Output) {
        this.logLocation = value
    }

    /**
     * @param value The logging level of SSIS package execution. Type: string (or Expression with resultType string).
     */
    @JvmName("lxjlaimvbywbnaer")
    public suspend fun loggingLevel(`value`: Output) {
        this.loggingLevel = value
    }

    /**
     * @param value Activity name.
     */
    @JvmName("owbedpbblmtdlawt")
    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("dtsrowumivxblwlf")
    public suspend fun onInactiveMarkAs(`value`: Output>) {
        this.onInactiveMarkAs = value
    }

    /**
     * @param value The package level connection managers to execute the SSIS package.
     */
    @JvmName("aorfnvjooqbhfppd")
    public suspend fun packageConnectionManagers(`value`: Output>>) {
        this.packageConnectionManagers = value
    }

    /**
     * @param value SSIS package location.
     */
    @JvmName("bvygvaouoknikilr")
    public suspend fun packageLocation(`value`: Output) {
        this.packageLocation = value
    }

    /**
     * @param value The package level parameters to execute the SSIS package.
     */
    @JvmName("dguuhsivnajuamfm")
    public suspend fun packageParameters(`value`: Output>) {
        this.packageParameters = value
    }

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

    /**
     * @param value The project level connection managers to execute the SSIS package.
     */
    @JvmName("rccvqdtiwtdsudsp")
    public suspend fun projectConnectionManagers(`value`: Output>>) {
        this.projectConnectionManagers = value
    }

    /**
     * @param value The project level parameters to execute the SSIS package.
     */
    @JvmName("tidugdsytutqkktb")
    public suspend fun projectParameters(`value`: Output>) {
        this.projectParameters = value
    }

    /**
     * @param value The property overrides to execute the SSIS package.
     */
    @JvmName("kftnkripaqhyvasg")
    public suspend fun propertyOverrides(`value`: Output>) {
        this.propertyOverrides = value
    }

    /**
     * @param value Specifies the runtime to execute SSIS package. The value should be "x86" or "x64". Type: string (or Expression with resultType string).
     */
    @JvmName("qppyriyngdxudoqe")
    public suspend fun runtime(`value`: Output) {
        this.runtime = value
    }

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

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

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

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

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

    /**
     * @param value The integration runtime reference.
     */
    @JvmName("exhnxveugokvmjex")
    public suspend fun connectVia(`value`: IntegrationRuntimeReferenceArgs) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.connectVia = mapped
    }

    /**
     * @param argument The integration runtime reference.
     */
    @JvmName("jyxkfemcttyjijnm")
    public suspend fun connectVia(argument: suspend IntegrationRuntimeReferenceArgsBuilder.() -> Unit) {
        val toBeMapped = IntegrationRuntimeReferenceArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.connectVia = mapped
    }

    /**
     * @param value Activity depends on condition.
     */
    @JvmName("aepowfmcjxvqnaod")
    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("gpvmhjnlekwghcpb")
    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("gnbbxbrxqlgrlrdt")
    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("snbybsihljkuldmy")
    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("hargibjwaqlkpmpu")
    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("cljebdesodcfqqdv")
    public suspend fun description(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.description = mapped
    }

    /**
     * @param value The environment path to execute the SSIS package. Type: string (or Expression with resultType string).
     */
    @JvmName("eacnjbaswsedxtas")
    public suspend fun environmentPath(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.environmentPath = mapped
    }

    /**
     * @param value The package execution credential.
     */
    @JvmName("uljwoipjtrkhylvy")
    public suspend fun executionCredential(`value`: SSISExecutionCredentialArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.executionCredential = mapped
    }

    /**
     * @param argument The package execution credential.
     */
    @JvmName("qalnqjpluprxpmhj")
    public suspend fun executionCredential(argument: suspend SSISExecutionCredentialArgsBuilder.() -> Unit) {
        val toBeMapped = SSISExecutionCredentialArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.executionCredential = mapped
    }

    /**
     * @param value Linked service reference.
     */
    @JvmName("xsxhixbvvlyfyyqj")
    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("mesigcxifcjwxavs")
    public suspend fun linkedServiceName(argument: suspend LinkedServiceReferenceArgsBuilder.() -> Unit) {
        val toBeMapped = LinkedServiceReferenceArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.linkedServiceName = mapped
    }

    /**
     * @param value SSIS package execution log location.
     */
    @JvmName("jjeahukghwwntkbq")
    public suspend fun logLocation(`value`: SSISLogLocationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.logLocation = mapped
    }

    /**
     * @param argument SSIS package execution log location.
     */
    @JvmName("kqutvgwprjwmjtok")
    public suspend fun logLocation(argument: suspend SSISLogLocationArgsBuilder.() -> Unit) {
        val toBeMapped = SSISLogLocationArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.logLocation = mapped
    }

    /**
     * @param value The logging level of SSIS package execution. Type: string (or Expression with resultType string).
     */
    @JvmName("pqownludddxrgfyq")
    public suspend fun loggingLevel(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.loggingLevel = mapped
    }

    /**
     * @param value Activity name.
     */
    @JvmName("wiyxkaxhadjutxgu")
    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("inddnvndjfigxvic")
    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("tpnbufciqmjpqjrk")
    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("uqfdmlgklfhfrysn")
    public fun onInactiveMarkAs(`value`: ActivityOnInactiveMarkAs) {
        val toBeMapped = Either.ofRight(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.onInactiveMarkAs = mapped
    }

    /**
     * @param value The package level connection managers to execute the SSIS package.
     */
    @JvmName("qndgukrbqwnipymf")
    public suspend fun packageConnectionManagers(`value`: Map>?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.packageConnectionManagers = mapped
    }

    /**
     * @param values The package level connection managers to execute the SSIS package.
     */
    @JvmName("dtdqbbsxsemfjhdq")
    public fun packageConnectionManagers(vararg values: Pair>) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.packageConnectionManagers = mapped
    }

    /**
     * @param value SSIS package location.
     */
    @JvmName("axteumquyyrcmkna")
    public suspend fun packageLocation(`value`: SSISPackageLocationArgs) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.packageLocation = mapped
    }

    /**
     * @param argument SSIS package location.
     */
    @JvmName("kaungspsbpucxxuh")
    public suspend fun packageLocation(argument: suspend SSISPackageLocationArgsBuilder.() -> Unit) {
        val toBeMapped = SSISPackageLocationArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.packageLocation = mapped
    }

    /**
     * @param value The package level parameters to execute the SSIS package.
     */
    @JvmName("kdkchhxxybxqhwvl")
    public suspend fun packageParameters(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.packageParameters = mapped
    }

    /**
     * @param argument The package level parameters to execute the SSIS package.
     */
    @JvmName("pwseykraufioascj")
    public suspend fun packageParameters(vararg argument: Pair Unit>) {
        val toBeMapped = argument.toList().map { (left, right) ->
            left to
                SSISExecutionParameterArgsBuilder().applySuspend { right() }.build()
        }.toMap()
        val mapped = of(toBeMapped)
        this.packageParameters = mapped
    }

    /**
     * @param values The package level parameters to execute the SSIS package.
     */
    @JvmName("egwvrybvnypmbwub")
    public fun packageParameters(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.packageParameters = mapped
    }

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

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

    /**
     * @param value The project level connection managers to execute the SSIS package.
     */
    @JvmName("ouqljftdefrmgptt")
    public suspend fun projectConnectionManagers(`value`: Map>?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.projectConnectionManagers = mapped
    }

    /**
     * @param values The project level connection managers to execute the SSIS package.
     */
    @JvmName("iekrdpnrwwnrdytq")
    public fun projectConnectionManagers(vararg values: Pair>) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.projectConnectionManagers = mapped
    }

    /**
     * @param value The project level parameters to execute the SSIS package.
     */
    @JvmName("dreptaxysawsfsjw")
    public suspend fun projectParameters(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.projectParameters = mapped
    }

    /**
     * @param argument The project level parameters to execute the SSIS package.
     */
    @JvmName("cfbvbjvyeeobwxvf")
    public suspend fun projectParameters(vararg argument: Pair Unit>) {
        val toBeMapped = argument.toList().map { (left, right) ->
            left to
                SSISExecutionParameterArgsBuilder().applySuspend { right() }.build()
        }.toMap()
        val mapped = of(toBeMapped)
        this.projectParameters = mapped
    }

    /**
     * @param values The project level parameters to execute the SSIS package.
     */
    @JvmName("kqvucjryksidyvcl")
    public fun projectParameters(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.projectParameters = mapped
    }

    /**
     * @param value The property overrides to execute the SSIS package.
     */
    @JvmName("eribqgeygbiscnjm")
    public suspend fun propertyOverrides(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.propertyOverrides = mapped
    }

    /**
     * @param argument The property overrides to execute the SSIS package.
     */
    @JvmName("ujcbxavfwjpegbhs")
    public suspend fun propertyOverrides(vararg argument: Pair Unit>) {
        val toBeMapped = argument.toList().map { (left, right) ->
            left to
                SSISPropertyOverrideArgsBuilder().applySuspend { right() }.build()
        }.toMap()
        val mapped = of(toBeMapped)
        this.propertyOverrides = mapped
    }

    /**
     * @param values The property overrides to execute the SSIS package.
     */
    @JvmName("kyqpyyglqkrqudam")
    public fun propertyOverrides(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.propertyOverrides = mapped
    }

    /**
     * @param value Specifies the runtime to execute SSIS package. The value should be "x86" or "x64". Type: string (or Expression with resultType string).
     */
    @JvmName("marbhhkrininarpp")
    public suspend fun runtime(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.runtime = mapped
    }

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

    /**
     * @param value Type of activity.
     * Expected value is 'ExecuteSSISPackage'.
     */
    @JvmName("itqnhssplqsbllcm")
    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("xrumdaihpixfjdrp")
    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("qgqunrrttdiidgbt")
    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("xntqtyrppfklaofw")
    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("gelqfsvnehivpyke")
    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("xmqawdnvkhnxlyfw")
    public suspend fun userProperties(vararg values: UserPropertyArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.userProperties = mapped
    }

    internal fun build(): ExecuteSSISPackageActivityArgs = ExecuteSSISPackageActivityArgs(
        connectVia = connectVia ?: throw PulumiNullFieldException("connectVia"),
        dependsOn = dependsOn,
        description = description,
        environmentPath = environmentPath,
        executionCredential = executionCredential,
        linkedServiceName = linkedServiceName,
        logLocation = logLocation,
        loggingLevel = loggingLevel,
        name = name ?: throw PulumiNullFieldException("name"),
        onInactiveMarkAs = onInactiveMarkAs,
        packageConnectionManagers = packageConnectionManagers,
        packageLocation = packageLocation ?: throw PulumiNullFieldException("packageLocation"),
        packageParameters = packageParameters,
        policy = policy,
        projectConnectionManagers = projectConnectionManagers,
        projectParameters = projectParameters,
        propertyOverrides = propertyOverrides,
        runtime = runtime,
        state = state,
        type = type ?: throw PulumiNullFieldException("type"),
        userProperties = userProperties,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy