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

com.pulumi.azure.streamanalytics.kotlin.inputs.StreamInputEventHubSerializationArgs.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: 6.14.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.streamanalytics.kotlin.inputs

import com.pulumi.azure.streamanalytics.inputs.StreamInputEventHubSerializationArgs.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 kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property encoding The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to `UTF8`.
 * > **NOTE:** This is required when `type` is set to `Csv` or `Json`.
 * @property fieldDelimiter The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are ` ` (space), `,` (comma), `	` (tab), `|` (pipe) and `;`.
 * > **NOTE:** This is required when `type` is set to `Csv`.
 * @property type The serialization format used for incoming data streams. Possible values are `Avro`, `Csv` and `Json`.
 */
public data class StreamInputEventHubSerializationArgs(
    public val encoding: Output? = null,
    public val fieldDelimiter: Output? = null,
    public val type: Output,
) : ConvertibleToJava {
    override fun toJava():
        com.pulumi.azure.streamanalytics.inputs.StreamInputEventHubSerializationArgs =
        com.pulumi.azure.streamanalytics.inputs.StreamInputEventHubSerializationArgs.builder()
            .encoding(encoding?.applyValue({ args0 -> args0 }))
            .fieldDelimiter(fieldDelimiter?.applyValue({ args0 -> args0 }))
            .type(type.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [StreamInputEventHubSerializationArgs].
 */
@PulumiTagMarker
public class StreamInputEventHubSerializationArgsBuilder internal constructor() {
    private var encoding: Output? = null

    private var fieldDelimiter: Output? = null

    private var type: Output? = null

    /**
     * @param value The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to `UTF8`.
     * > **NOTE:** This is required when `type` is set to `Csv` or `Json`.
     */
    @JvmName("jhqpjugfsnhypaut")
    public suspend fun encoding(`value`: Output) {
        this.encoding = value
    }

    /**
     * @param value The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are ` ` (space), `,` (comma), `	` (tab), `|` (pipe) and `;`.
     * > **NOTE:** This is required when `type` is set to `Csv`.
     */
    @JvmName("inilraoajhxyqnvt")
    public suspend fun fieldDelimiter(`value`: Output) {
        this.fieldDelimiter = value
    }

    /**
     * @param value The serialization format used for incoming data streams. Possible values are `Avro`, `Csv` and `Json`.
     */
    @JvmName("dmgtftjgpnjwebpb")
    public suspend fun type(`value`: Output) {
        this.type = value
    }

    /**
     * @param value The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to `UTF8`.
     * > **NOTE:** This is required when `type` is set to `Csv` or `Json`.
     */
    @JvmName("ksficgwfqstmviqb")
    public suspend fun encoding(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.encoding = mapped
    }

    /**
     * @param value The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are ` ` (space), `,` (comma), `	` (tab), `|` (pipe) and `;`.
     * > **NOTE:** This is required when `type` is set to `Csv`.
     */
    @JvmName("puumcdsmkbrawhjr")
    public suspend fun fieldDelimiter(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.fieldDelimiter = mapped
    }

    /**
     * @param value The serialization format used for incoming data streams. Possible values are `Avro`, `Csv` and `Json`.
     */
    @JvmName("prtfvsmrrdnxbubm")
    public suspend fun type(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.type = mapped
    }

    internal fun build(): StreamInputEventHubSerializationArgs = StreamInputEventHubSerializationArgs(
        encoding = encoding,
        fieldDelimiter = fieldDelimiter,
        type = type ?: throw PulumiNullFieldException("type"),
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy