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

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

/**
 * Excel dataset.
 * @property annotations List of tags that can be used for describing the Dataset.
 * @property compression The data compression method used for the json dataset.
 * @property description Dataset description.
 * @property firstRowAsHeader When used as input, treat the first row of data as headers. When used as output,write the headers into the output as the first row of data. The default value is false. Type: boolean (or Expression with resultType boolean).
 * @property folder The folder that this Dataset is in. If not specified, Dataset will appear at the root level.
 * @property linkedServiceName Linked service reference.
 * @property location The location of the excel storage.
 * @property nullValue The null value string. Type: string (or Expression with resultType string).
 * @property parameters Parameters for dataset.
 * @property range The partial data of one sheet. Type: string (or Expression with resultType string).
 * @property schema Columns that define the physical type schema of the dataset. Type: array (or Expression with resultType array), itemType: DatasetSchemaDataElement.
 * @property sheetIndex The sheet index of excel file and default value is 0. Type: integer (or Expression with resultType integer)
 * @property sheetName The sheet name of excel file. Type: string (or Expression with resultType string).
 * @property structure Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
 * @property type Type of dataset.
 * Expected value is 'Excel'.
 */
public data class ExcelDatasetArgs(
    public val annotations: Output>? = null,
    public val compression: Output? = null,
    public val description: Output? = null,
    public val firstRowAsHeader: Output? = null,
    public val folder: Output? = null,
    public val linkedServiceName: Output,
    public val location: Output,
    public val nullValue: Output? = null,
    public val parameters: Output>? = null,
    public val range: Output? = null,
    public val schema: Output? = null,
    public val sheetIndex: Output? = null,
    public val sheetName: Output? = null,
    public val structure: Output? = null,
    public val type: Output,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.datafactory.inputs.ExcelDatasetArgs =
        com.pulumi.azurenative.datafactory.inputs.ExcelDatasetArgs.builder()
            .annotations(annotations?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .compression(compression?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .description(description?.applyValue({ args0 -> args0 }))
            .firstRowAsHeader(firstRowAsHeader?.applyValue({ args0 -> args0 }))
            .folder(folder?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .linkedServiceName(linkedServiceName.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .location(location.applyValue({ args0 -> args0 }))
            .nullValue(nullValue?.applyValue({ args0 -> args0 }))
            .parameters(
                parameters?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(args0.value.let({ args0 -> args0.toJava() }))
                    }).toMap()
                }),
            )
            .range(range?.applyValue({ args0 -> args0 }))
            .schema(schema?.applyValue({ args0 -> args0 }))
            .sheetIndex(sheetIndex?.applyValue({ args0 -> args0 }))
            .sheetName(sheetName?.applyValue({ args0 -> args0 }))
            .structure(structure?.applyValue({ args0 -> args0 }))
            .type(type.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ExcelDatasetArgs].
 */
@PulumiTagMarker
public class ExcelDatasetArgsBuilder internal constructor() {
    private var annotations: Output>? = null

    private var compression: Output? = null

    private var description: Output? = null

    private var firstRowAsHeader: Output? = null

    private var folder: Output? = null

    private var linkedServiceName: Output? = null

    private var location: Output? = null

    private var nullValue: Output? = null

    private var parameters: Output>? = null

    private var range: Output? = null

    private var schema: Output? = null

    private var sheetIndex: Output? = null

    private var sheetName: Output? = null

    private var structure: Output? = null

    private var type: Output? = null

    /**
     * @param value List of tags that can be used for describing the Dataset.
     */
    @JvmName("oxmqyeysdmjahbfs")
    public suspend fun annotations(`value`: Output>) {
        this.annotations = value
    }

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

    /**
     * @param values List of tags that can be used for describing the Dataset.
     */
    @JvmName("hpodvrerkxksmimv")
    public suspend fun annotations(values: List>) {
        this.annotations = Output.all(values)
    }

    /**
     * @param value The data compression method used for the json dataset.
     */
    @JvmName("seyqmdttnfjoiubs")
    public suspend fun compression(`value`: Output) {
        this.compression = value
    }

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

    /**
     * @param value When used as input, treat the first row of data as headers. When used as output,write the headers into the output as the first row of data. The default value is false. Type: boolean (or Expression with resultType boolean).
     */
    @JvmName("ntuaculfxhyfbxvb")
    public suspend fun firstRowAsHeader(`value`: Output) {
        this.firstRowAsHeader = value
    }

    /**
     * @param value The folder that this Dataset is in. If not specified, Dataset will appear at the root level.
     */
    @JvmName("dilwlnonsmuhlnir")
    public suspend fun folder(`value`: Output) {
        this.folder = value
    }

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

    /**
     * @param value The location of the excel storage.
     */
    @JvmName("msycmxsxdntmofkr")
    public suspend fun location(`value`: Output) {
        this.location = value
    }

    /**
     * @param value The null value string. Type: string (or Expression with resultType string).
     */
    @JvmName("myuikotjeiyjhamp")
    public suspend fun nullValue(`value`: Output) {
        this.nullValue = value
    }

    /**
     * @param value Parameters for dataset.
     */
    @JvmName("ofrwtrnlwjifpxms")
    public suspend fun parameters(`value`: Output>) {
        this.parameters = value
    }

    /**
     * @param value The partial data of one sheet. Type: string (or Expression with resultType string).
     */
    @JvmName("mmlblslfsyopchdx")
    public suspend fun range(`value`: Output) {
        this.range = value
    }

    /**
     * @param value Columns that define the physical type schema of the dataset. Type: array (or Expression with resultType array), itemType: DatasetSchemaDataElement.
     */
    @JvmName("tlocrwipoqktdtos")
    public suspend fun schema(`value`: Output) {
        this.schema = value
    }

    /**
     * @param value The sheet index of excel file and default value is 0. Type: integer (or Expression with resultType integer)
     */
    @JvmName("lwtksodhsonwotkd")
    public suspend fun sheetIndex(`value`: Output) {
        this.sheetIndex = value
    }

    /**
     * @param value The sheet name of excel file. Type: string (or Expression with resultType string).
     */
    @JvmName("wlhghakuutnvpggu")
    public suspend fun sheetName(`value`: Output) {
        this.sheetName = value
    }

    /**
     * @param value Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
     */
    @JvmName("ymnbubixjgeppfow")
    public suspend fun structure(`value`: Output) {
        this.structure = value
    }

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

    /**
     * @param value List of tags that can be used for describing the Dataset.
     */
    @JvmName("ybvfacckthrmnovi")
    public suspend fun annotations(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.annotations = mapped
    }

    /**
     * @param values List of tags that can be used for describing the Dataset.
     */
    @JvmName("ktukvaolufstljtr")
    public suspend fun annotations(vararg values: Any) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.annotations = mapped
    }

    /**
     * @param value The data compression method used for the json dataset.
     */
    @JvmName("kewtncclbeqcarua")
    public suspend fun compression(`value`: DatasetCompressionArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.compression = mapped
    }

    /**
     * @param argument The data compression method used for the json dataset.
     */
    @JvmName("ialdcycfjhcgfpaw")
    public suspend fun compression(argument: suspend DatasetCompressionArgsBuilder.() -> Unit) {
        val toBeMapped = DatasetCompressionArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.compression = mapped
    }

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

    /**
     * @param value When used as input, treat the first row of data as headers. When used as output,write the headers into the output as the first row of data. The default value is false. Type: boolean (or Expression with resultType boolean).
     */
    @JvmName("kemumpncawkvisdo")
    public suspend fun firstRowAsHeader(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.firstRowAsHeader = mapped
    }

    /**
     * @param value The folder that this Dataset is in. If not specified, Dataset will appear at the root level.
     */
    @JvmName("wqodrbqmaeahqkjj")
    public suspend fun folder(`value`: DatasetFolderArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.folder = mapped
    }

    /**
     * @param argument The folder that this Dataset is in. If not specified, Dataset will appear at the root level.
     */
    @JvmName("ecumbitvbbdbnmho")
    public suspend fun folder(argument: suspend DatasetFolderArgsBuilder.() -> Unit) {
        val toBeMapped = DatasetFolderArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.folder = mapped
    }

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

    /**
     * @param value The location of the excel storage.
     */
    @JvmName("tniruflevbppsmwj")
    public suspend fun location(`value`: Any) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.location = mapped
    }

    /**
     * @param value The null value string. Type: string (or Expression with resultType string).
     */
    @JvmName("fpnrunnkafgmyevf")
    public suspend fun nullValue(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.nullValue = mapped
    }

    /**
     * @param value Parameters for dataset.
     */
    @JvmName("ratsmjprbmdvexko")
    public suspend fun parameters(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.parameters = mapped
    }

    /**
     * @param argument Parameters for dataset.
     */
    @JvmName("vqrovksstcjrqpbn")
    public suspend fun parameters(vararg argument: Pair Unit>) {
        val toBeMapped = argument.toList().map { (left, right) ->
            left to
                ParameterSpecificationArgsBuilder().applySuspend { right() }.build()
        }.toMap()
        val mapped = of(toBeMapped)
        this.parameters = mapped
    }

    /**
     * @param values Parameters for dataset.
     */
    @JvmName("pthgxvvffgfgjhui")
    public fun parameters(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.parameters = mapped
    }

    /**
     * @param value The partial data of one sheet. Type: string (or Expression with resultType string).
     */
    @JvmName("vmoleyittebicaxc")
    public suspend fun range(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.range = mapped
    }

    /**
     * @param value Columns that define the physical type schema of the dataset. Type: array (or Expression with resultType array), itemType: DatasetSchemaDataElement.
     */
    @JvmName("acrlylkphnpqjwnx")
    public suspend fun schema(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.schema = mapped
    }

    /**
     * @param value The sheet index of excel file and default value is 0. Type: integer (or Expression with resultType integer)
     */
    @JvmName("bojhqgntmxggmbps")
    public suspend fun sheetIndex(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sheetIndex = mapped
    }

    /**
     * @param value The sheet name of excel file. Type: string (or Expression with resultType string).
     */
    @JvmName("rtdmkoyaktcfijmx")
    public suspend fun sheetName(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sheetName = mapped
    }

    /**
     * @param value Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement.
     */
    @JvmName("bjdopgxiccsjthgo")
    public suspend fun structure(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.structure = mapped
    }

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

    internal fun build(): ExcelDatasetArgs = ExcelDatasetArgs(
        annotations = annotations,
        compression = compression,
        description = description,
        firstRowAsHeader = firstRowAsHeader,
        folder = folder,
        linkedServiceName = linkedServiceName ?: throw PulumiNullFieldException("linkedServiceName"),
        location = location ?: throw PulumiNullFieldException("location"),
        nullValue = nullValue,
        parameters = parameters,
        range = range,
        schema = schema,
        sheetIndex = sheetIndex,
        sheetName = sheetName,
        structure = structure,
        type = type ?: throw PulumiNullFieldException("type"),
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy