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

com.pulumi.azurenative.databasewatcher.kotlin.inputs.DatastoreArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.azurenative.databasewatcher.kotlin.inputs

import com.pulumi.azurenative.databasewatcher.inputs.DatastoreArgs.builder
import com.pulumi.azurenative.databasewatcher.kotlin.enums.KustoOfferingType
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 kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 * The properties of a data store.
 * @property adxClusterResourceId The Azure ResourceId of an Azure Data Explorer cluster.
 * @property kustoClusterDisplayName The Kusto cluster display name.
 * @property kustoClusterUri The Kusto cluster URI.
 * @property kustoDataIngestionUri The Kusto data ingestion URI.
 * @property kustoDatabaseName The name of a Kusto database.
 * @property kustoManagementUrl The Kusto management URL.
 * @property kustoOfferingType The type of a Kusto offering.
 */
public data class DatastoreArgs(
    public val adxClusterResourceId: Output? = null,
    public val kustoClusterDisplayName: Output? = null,
    public val kustoClusterUri: Output,
    public val kustoDataIngestionUri: Output,
    public val kustoDatabaseName: Output,
    public val kustoManagementUrl: Output,
    public val kustoOfferingType: Output>,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.databasewatcher.inputs.DatastoreArgs =
        com.pulumi.azurenative.databasewatcher.inputs.DatastoreArgs.builder()
            .adxClusterResourceId(adxClusterResourceId?.applyValue({ args0 -> args0 }))
            .kustoClusterDisplayName(kustoClusterDisplayName?.applyValue({ args0 -> args0 }))
            .kustoClusterUri(kustoClusterUri.applyValue({ args0 -> args0 }))
            .kustoDataIngestionUri(kustoDataIngestionUri.applyValue({ args0 -> args0 }))
            .kustoDatabaseName(kustoDatabaseName.applyValue({ args0 -> args0 }))
            .kustoManagementUrl(kustoManagementUrl.applyValue({ args0 -> args0 }))
            .kustoOfferingType(
                kustoOfferingType.applyValue({ args0 ->
                    args0.transform(
                        { args0 -> args0 },
                        { args0 -> args0.let({ args0 -> args0.toJava() }) },
                    )
                }),
            ).build()
}

/**
 * Builder for [DatastoreArgs].
 */
@PulumiTagMarker
public class DatastoreArgsBuilder internal constructor() {
    private var adxClusterResourceId: Output? = null

    private var kustoClusterDisplayName: Output? = null

    private var kustoClusterUri: Output? = null

    private var kustoDataIngestionUri: Output? = null

    private var kustoDatabaseName: Output? = null

    private var kustoManagementUrl: Output? = null

    private var kustoOfferingType: Output>? = null

    /**
     * @param value The Azure ResourceId of an Azure Data Explorer cluster.
     */
    @JvmName("ovemdruiswvstvlb")
    public suspend fun adxClusterResourceId(`value`: Output) {
        this.adxClusterResourceId = value
    }

    /**
     * @param value The Kusto cluster display name.
     */
    @JvmName("jlmhgysxpuaccsca")
    public suspend fun kustoClusterDisplayName(`value`: Output) {
        this.kustoClusterDisplayName = value
    }

    /**
     * @param value The Kusto cluster URI.
     */
    @JvmName("rvjqqefptwrmhllm")
    public suspend fun kustoClusterUri(`value`: Output) {
        this.kustoClusterUri = value
    }

    /**
     * @param value The Kusto data ingestion URI.
     */
    @JvmName("yjewglfctbcjhsnu")
    public suspend fun kustoDataIngestionUri(`value`: Output) {
        this.kustoDataIngestionUri = value
    }

    /**
     * @param value The name of a Kusto database.
     */
    @JvmName("phtjhwwxnfqjrqqx")
    public suspend fun kustoDatabaseName(`value`: Output) {
        this.kustoDatabaseName = value
    }

    /**
     * @param value The Kusto management URL.
     */
    @JvmName("nhdcumfcdwrgrlpu")
    public suspend fun kustoManagementUrl(`value`: Output) {
        this.kustoManagementUrl = value
    }

    /**
     * @param value The type of a Kusto offering.
     */
    @JvmName("qlyrpvcpcfbprjoi")
    public suspend fun kustoOfferingType(`value`: Output>) {
        this.kustoOfferingType = value
    }

    /**
     * @param value The Azure ResourceId of an Azure Data Explorer cluster.
     */
    @JvmName("ldiguatqslrjomya")
    public suspend fun adxClusterResourceId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.adxClusterResourceId = mapped
    }

    /**
     * @param value The Kusto cluster display name.
     */
    @JvmName("utlsupabwdnmttac")
    public suspend fun kustoClusterDisplayName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.kustoClusterDisplayName = mapped
    }

    /**
     * @param value The Kusto cluster URI.
     */
    @JvmName("gobijajdwnvafqqj")
    public suspend fun kustoClusterUri(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.kustoClusterUri = mapped
    }

    /**
     * @param value The Kusto data ingestion URI.
     */
    @JvmName("ioyigpyvjxtxhqnd")
    public suspend fun kustoDataIngestionUri(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.kustoDataIngestionUri = mapped
    }

    /**
     * @param value The name of a Kusto database.
     */
    @JvmName("giqqcuegksiulobo")
    public suspend fun kustoDatabaseName(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.kustoDatabaseName = mapped
    }

    /**
     * @param value The Kusto management URL.
     */
    @JvmName("wgegdfdhbmfxjvtl")
    public suspend fun kustoManagementUrl(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.kustoManagementUrl = mapped
    }

    /**
     * @param value The type of a Kusto offering.
     */
    @JvmName("tyfpvhodlfybsooc")
    public suspend fun kustoOfferingType(`value`: Either) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.kustoOfferingType = mapped
    }

    /**
     * @param value The type of a Kusto offering.
     */
    @JvmName("wybcdapwdwammofw")
    public fun kustoOfferingType(`value`: String) {
        val toBeMapped = Either.ofLeft(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.kustoOfferingType = mapped
    }

    /**
     * @param value The type of a Kusto offering.
     */
    @JvmName("dhxeasvoksjcahqp")
    public fun kustoOfferingType(`value`: KustoOfferingType) {
        val toBeMapped = Either.ofRight(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.kustoOfferingType = mapped
    }

    internal fun build(): DatastoreArgs = DatastoreArgs(
        adxClusterResourceId = adxClusterResourceId,
        kustoClusterDisplayName = kustoClusterDisplayName,
        kustoClusterUri = kustoClusterUri ?: throw PulumiNullFieldException("kustoClusterUri"),
        kustoDataIngestionUri = kustoDataIngestionUri ?: throw
            PulumiNullFieldException("kustoDataIngestionUri"),
        kustoDatabaseName = kustoDatabaseName ?: throw PulumiNullFieldException("kustoDatabaseName"),
        kustoManagementUrl = kustoManagementUrl ?: throw PulumiNullFieldException("kustoManagementUrl"),
        kustoOfferingType = kustoOfferingType ?: throw PulumiNullFieldException("kustoOfferingType"),
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy