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

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

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

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

import com.pulumi.azurenative.datafactory.inputs.SqlDWSourceArgs.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 com.pulumi.kotlin.applySuspend
import kotlin.Any
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 * A copy activity SQL Data Warehouse source.
 * @property additionalColumns Specifies the additional columns to be added to source data. Type: array of objects(AdditionalColumns) (or Expression with resultType array of objects).
 * @property disableMetricsCollection If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean).
 * @property isolationLevel Specifies the transaction locking behavior for the SQL source. Allowed values: ReadCommitted/ReadUncommitted/RepeatableRead/Serializable/Snapshot. The default value is ReadCommitted. Type: string (or Expression with resultType string).
 * @property maxConcurrentConnections The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer).
 * @property partitionOption The partition mechanism that will be used for Sql read in parallel. Possible values include: "None", "PhysicalPartitionsOfTable", "DynamicRange". Type: string (or Expression with resultType string).
 * @property partitionSettings The settings that will be leveraged for Sql source partitioning.
 * @property queryTimeout Query timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
 * @property sourceRetryCount Source retry count. Type: integer (or Expression with resultType integer).
 * @property sourceRetryWait Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
 * @property sqlReaderQuery SQL Data Warehouse reader query. Type: string (or Expression with resultType string).
 * @property sqlReaderStoredProcedureName Name of the stored procedure for a SQL Data Warehouse source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string).
 * @property storedProcedureParameters Value and type setting for stored procedure parameters. Example: "{Parameter1: {value: "1", type: "int"}}". Type: object (or Expression with resultType object), itemType: StoredProcedureParameter.
 * @property type Copy source type.
 * Expected value is 'SqlDWSource'.
 */
public data class SqlDWSourceArgs(
    public val additionalColumns: Output? = null,
    public val disableMetricsCollection: Output? = null,
    public val isolationLevel: Output? = null,
    public val maxConcurrentConnections: Output? = null,
    public val partitionOption: Output? = null,
    public val partitionSettings: Output? = null,
    public val queryTimeout: Output? = null,
    public val sourceRetryCount: Output? = null,
    public val sourceRetryWait: Output? = null,
    public val sqlReaderQuery: Output? = null,
    public val sqlReaderStoredProcedureName: Output? = null,
    public val storedProcedureParameters: Output? = null,
    public val type: Output,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.datafactory.inputs.SqlDWSourceArgs =
        com.pulumi.azurenative.datafactory.inputs.SqlDWSourceArgs.builder()
            .additionalColumns(additionalColumns?.applyValue({ args0 -> args0 }))
            .disableMetricsCollection(disableMetricsCollection?.applyValue({ args0 -> args0 }))
            .isolationLevel(isolationLevel?.applyValue({ args0 -> args0 }))
            .maxConcurrentConnections(maxConcurrentConnections?.applyValue({ args0 -> args0 }))
            .partitionOption(partitionOption?.applyValue({ args0 -> args0 }))
            .partitionSettings(partitionSettings?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .queryTimeout(queryTimeout?.applyValue({ args0 -> args0 }))
            .sourceRetryCount(sourceRetryCount?.applyValue({ args0 -> args0 }))
            .sourceRetryWait(sourceRetryWait?.applyValue({ args0 -> args0 }))
            .sqlReaderQuery(sqlReaderQuery?.applyValue({ args0 -> args0 }))
            .sqlReaderStoredProcedureName(sqlReaderStoredProcedureName?.applyValue({ args0 -> args0 }))
            .storedProcedureParameters(storedProcedureParameters?.applyValue({ args0 -> args0 }))
            .type(type.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [SqlDWSourceArgs].
 */
@PulumiTagMarker
public class SqlDWSourceArgsBuilder internal constructor() {
    private var additionalColumns: Output? = null

    private var disableMetricsCollection: Output? = null

    private var isolationLevel: Output? = null

    private var maxConcurrentConnections: Output? = null

    private var partitionOption: Output? = null

    private var partitionSettings: Output? = null

    private var queryTimeout: Output? = null

    private var sourceRetryCount: Output? = null

    private var sourceRetryWait: Output? = null

    private var sqlReaderQuery: Output? = null

    private var sqlReaderStoredProcedureName: Output? = null

    private var storedProcedureParameters: Output? = null

    private var type: Output? = null

    /**
     * @param value Specifies the additional columns to be added to source data. Type: array of objects(AdditionalColumns) (or Expression with resultType array of objects).
     */
    @JvmName("cutrnuiahejljosj")
    public suspend fun additionalColumns(`value`: Output) {
        this.additionalColumns = value
    }

    /**
     * @param value If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean).
     */
    @JvmName("njftqdolvdoavlwc")
    public suspend fun disableMetricsCollection(`value`: Output) {
        this.disableMetricsCollection = value
    }

    /**
     * @param value Specifies the transaction locking behavior for the SQL source. Allowed values: ReadCommitted/ReadUncommitted/RepeatableRead/Serializable/Snapshot. The default value is ReadCommitted. Type: string (or Expression with resultType string).
     */
    @JvmName("jgnxmukjqecunyld")
    public suspend fun isolationLevel(`value`: Output) {
        this.isolationLevel = value
    }

    /**
     * @param value The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer).
     */
    @JvmName("aspgehgfnucscxqs")
    public suspend fun maxConcurrentConnections(`value`: Output) {
        this.maxConcurrentConnections = value
    }

    /**
     * @param value The partition mechanism that will be used for Sql read in parallel. Possible values include: "None", "PhysicalPartitionsOfTable", "DynamicRange". Type: string (or Expression with resultType string).
     */
    @JvmName("hllcwpnewckstilt")
    public suspend fun partitionOption(`value`: Output) {
        this.partitionOption = value
    }

    /**
     * @param value The settings that will be leveraged for Sql source partitioning.
     */
    @JvmName("jagcoencdwabivmo")
    public suspend fun partitionSettings(`value`: Output) {
        this.partitionSettings = value
    }

    /**
     * @param value Query timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
     */
    @JvmName("rmadgmdqrhiqeapo")
    public suspend fun queryTimeout(`value`: Output) {
        this.queryTimeout = value
    }

    /**
     * @param value Source retry count. Type: integer (or Expression with resultType integer).
     */
    @JvmName("cgsxfwsykuasmsje")
    public suspend fun sourceRetryCount(`value`: Output) {
        this.sourceRetryCount = value
    }

    /**
     * @param value Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
     */
    @JvmName("ixtsjkobjjwpxuly")
    public suspend fun sourceRetryWait(`value`: Output) {
        this.sourceRetryWait = value
    }

    /**
     * @param value SQL Data Warehouse reader query. Type: string (or Expression with resultType string).
     */
    @JvmName("botrcxvnhumqcfrx")
    public suspend fun sqlReaderQuery(`value`: Output) {
        this.sqlReaderQuery = value
    }

    /**
     * @param value Name of the stored procedure for a SQL Data Warehouse source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string).
     */
    @JvmName("fdidvlixbcjtwqgn")
    public suspend fun sqlReaderStoredProcedureName(`value`: Output) {
        this.sqlReaderStoredProcedureName = value
    }

    /**
     * @param value Value and type setting for stored procedure parameters. Example: "{Parameter1: {value: "1", type: "int"}}". Type: object (or Expression with resultType object), itemType: StoredProcedureParameter.
     */
    @JvmName("onkwfmftlkbalncl")
    public suspend fun storedProcedureParameters(`value`: Output) {
        this.storedProcedureParameters = value
    }

    /**
     * @param value Copy source type.
     * Expected value is 'SqlDWSource'.
     */
    @JvmName("rjlfneoghwvmahln")
    public suspend fun type(`value`: Output) {
        this.type = value
    }

    /**
     * @param value Specifies the additional columns to be added to source data. Type: array of objects(AdditionalColumns) (or Expression with resultType array of objects).
     */
    @JvmName("xuielylilwdfqwwv")
    public suspend fun additionalColumns(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.additionalColumns = mapped
    }

    /**
     * @param value If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean).
     */
    @JvmName("kyssvwpbwlrgagkv")
    public suspend fun disableMetricsCollection(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.disableMetricsCollection = mapped
    }

    /**
     * @param value Specifies the transaction locking behavior for the SQL source. Allowed values: ReadCommitted/ReadUncommitted/RepeatableRead/Serializable/Snapshot. The default value is ReadCommitted. Type: string (or Expression with resultType string).
     */
    @JvmName("aekhmrymvwisorle")
    public suspend fun isolationLevel(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.isolationLevel = mapped
    }

    /**
     * @param value The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer).
     */
    @JvmName("sddrudjxjcbmeibx")
    public suspend fun maxConcurrentConnections(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxConcurrentConnections = mapped
    }

    /**
     * @param value The partition mechanism that will be used for Sql read in parallel. Possible values include: "None", "PhysicalPartitionsOfTable", "DynamicRange". Type: string (or Expression with resultType string).
     */
    @JvmName("ejxyybhboecyiqbm")
    public suspend fun partitionOption(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.partitionOption = mapped
    }

    /**
     * @param value The settings that will be leveraged for Sql source partitioning.
     */
    @JvmName("jaggltocwnottumo")
    public suspend fun partitionSettings(`value`: SqlPartitionSettingsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.partitionSettings = mapped
    }

    /**
     * @param argument The settings that will be leveraged for Sql source partitioning.
     */
    @JvmName("sfrutipltiakylvk")
    public suspend fun partitionSettings(argument: suspend SqlPartitionSettingsArgsBuilder.() -> Unit) {
        val toBeMapped = SqlPartitionSettingsArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.partitionSettings = mapped
    }

    /**
     * @param value Query timeout. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
     */
    @JvmName("pvdfbjnftivbkbef")
    public suspend fun queryTimeout(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.queryTimeout = mapped
    }

    /**
     * @param value Source retry count. Type: integer (or Expression with resultType integer).
     */
    @JvmName("qqxqitwkgjujvxvi")
    public suspend fun sourceRetryCount(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sourceRetryCount = mapped
    }

    /**
     * @param value Source retry wait. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
     */
    @JvmName("dumielybxpuakurl")
    public suspend fun sourceRetryWait(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sourceRetryWait = mapped
    }

    /**
     * @param value SQL Data Warehouse reader query. Type: string (or Expression with resultType string).
     */
    @JvmName("mehvubdlsipordar")
    public suspend fun sqlReaderQuery(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sqlReaderQuery = mapped
    }

    /**
     * @param value Name of the stored procedure for a SQL Data Warehouse source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string).
     */
    @JvmName("rwmlrdrwrryrdyyr")
    public suspend fun sqlReaderStoredProcedureName(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sqlReaderStoredProcedureName = mapped
    }

    /**
     * @param value Value and type setting for stored procedure parameters. Example: "{Parameter1: {value: "1", type: "int"}}". Type: object (or Expression with resultType object), itemType: StoredProcedureParameter.
     */
    @JvmName("bnctaqohqdpobybp")
    public suspend fun storedProcedureParameters(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.storedProcedureParameters = mapped
    }

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

    internal fun build(): SqlDWSourceArgs = SqlDWSourceArgs(
        additionalColumns = additionalColumns,
        disableMetricsCollection = disableMetricsCollection,
        isolationLevel = isolationLevel,
        maxConcurrentConnections = maxConcurrentConnections,
        partitionOption = partitionOption,
        partitionSettings = partitionSettings,
        queryTimeout = queryTimeout,
        sourceRetryCount = sourceRetryCount,
        sourceRetryWait = sourceRetryWait,
        sqlReaderQuery = sqlReaderQuery,
        sqlReaderStoredProcedureName = sqlReaderStoredProcedureName,
        storedProcedureParameters = storedProcedureParameters,
        type = type ?: throw PulumiNullFieldException("type"),
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy