
com.pulumi.azurenative.streamanalytics.kotlin.inputs.AzureSqlReferenceInputDataSourceArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.streamanalytics.kotlin.inputs
import com.pulumi.azurenative.streamanalytics.inputs.AzureSqlReferenceInputDataSourceArgs.builder
import com.pulumi.azurenative.streamanalytics.kotlin.enums.RefreshType
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
/**
* Describes an Azure SQL database reference input data source.
* @property database This element is associated with the datasource element. This is the name of the database that output will be written to.
* @property deltaSnapshotQuery This element is associated with the datasource element. This query is used to fetch incremental changes from the SQL database. To use this option, we recommend using temporal tables in Azure SQL Database.
* @property fullSnapshotQuery This element is associated with the datasource element. This query is used to fetch data from the sql database.
* @property password This element is associated with the datasource element. This is the password that will be used to connect to the SQL Database instance.
* @property refreshRate This element is associated with the datasource element. This indicates how frequently the data will be fetched from the database. It is of DateTime format.
* @property refreshType Indicates the type of data refresh option.
* @property server This element is associated with the datasource element. This is the name of the server that contains the database that will be written to.
* @property table This element is associated with the datasource element. The name of the table in the Azure SQL database..
* @property type Indicates the type of input data source containing reference data. Required on PUT (CreateOrReplace) requests.
* Expected value is 'Microsoft.Sql/Server/Database'.
* @property user This element is associated with the datasource element. This is the user name that will be used to connect to the SQL Database instance.
*/
public data class AzureSqlReferenceInputDataSourceArgs(
public val database: Output? = null,
public val deltaSnapshotQuery: Output? = null,
public val fullSnapshotQuery: Output? = null,
public val password: Output? = null,
public val refreshRate: Output? = null,
public val refreshType: Output>? = null,
public val server: Output? = null,
public val table: Output? = null,
public val type: Output,
public val user: Output? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.streamanalytics.inputs.AzureSqlReferenceInputDataSourceArgs =
com.pulumi.azurenative.streamanalytics.inputs.AzureSqlReferenceInputDataSourceArgs.builder()
.database(database?.applyValue({ args0 -> args0 }))
.deltaSnapshotQuery(deltaSnapshotQuery?.applyValue({ args0 -> args0 }))
.fullSnapshotQuery(fullSnapshotQuery?.applyValue({ args0 -> args0 }))
.password(password?.applyValue({ args0 -> args0 }))
.refreshRate(refreshRate?.applyValue({ args0 -> args0 }))
.refreshType(
refreshType?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.server(server?.applyValue({ args0 -> args0 }))
.table(table?.applyValue({ args0 -> args0 }))
.type(type.applyValue({ args0 -> args0 }))
.user(user?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [AzureSqlReferenceInputDataSourceArgs].
*/
@PulumiTagMarker
public class AzureSqlReferenceInputDataSourceArgsBuilder internal constructor() {
private var database: Output? = null
private var deltaSnapshotQuery: Output? = null
private var fullSnapshotQuery: Output? = null
private var password: Output? = null
private var refreshRate: Output? = null
private var refreshType: Output>? = null
private var server: Output? = null
private var table: Output? = null
private var type: Output? = null
private var user: Output? = null
/**
* @param value This element is associated with the datasource element. This is the name of the database that output will be written to.
*/
@JvmName("thwnmapigkcycyex")
public suspend fun database(`value`: Output) {
this.database = value
}
/**
* @param value This element is associated with the datasource element. This query is used to fetch incremental changes from the SQL database. To use this option, we recommend using temporal tables in Azure SQL Database.
*/
@JvmName("kxgpwivqbjgjspwa")
public suspend fun deltaSnapshotQuery(`value`: Output) {
this.deltaSnapshotQuery = value
}
/**
* @param value This element is associated with the datasource element. This query is used to fetch data from the sql database.
*/
@JvmName("vtuygdktnxpprxuv")
public suspend fun fullSnapshotQuery(`value`: Output) {
this.fullSnapshotQuery = value
}
/**
* @param value This element is associated with the datasource element. This is the password that will be used to connect to the SQL Database instance.
*/
@JvmName("llgwktpttoqwjqlr")
public suspend fun password(`value`: Output) {
this.password = value
}
/**
* @param value This element is associated with the datasource element. This indicates how frequently the data will be fetched from the database. It is of DateTime format.
*/
@JvmName("auunqjoiuqbykgqo")
public suspend fun refreshRate(`value`: Output) {
this.refreshRate = value
}
/**
* @param value Indicates the type of data refresh option.
*/
@JvmName("omfvcyhvhikrnsfm")
public suspend fun refreshType(`value`: Output>) {
this.refreshType = value
}
/**
* @param value This element is associated with the datasource element. This is the name of the server that contains the database that will be written to.
*/
@JvmName("lhltpmlaxdxqqqup")
public suspend fun server(`value`: Output) {
this.server = value
}
/**
* @param value This element is associated with the datasource element. The name of the table in the Azure SQL database..
*/
@JvmName("dekgbqmthitjpujs")
public suspend fun table(`value`: Output) {
this.table = value
}
/**
* @param value Indicates the type of input data source containing reference data. Required on PUT (CreateOrReplace) requests.
* Expected value is 'Microsoft.Sql/Server/Database'.
*/
@JvmName("boambixauoeetake")
public suspend fun type(`value`: Output) {
this.type = value
}
/**
* @param value This element is associated with the datasource element. This is the user name that will be used to connect to the SQL Database instance.
*/
@JvmName("qvudtqqgyyiiiuvj")
public suspend fun user(`value`: Output) {
this.user = value
}
/**
* @param value This element is associated with the datasource element. This is the name of the database that output will be written to.
*/
@JvmName("vwbmmlwpndemoqhx")
public suspend fun database(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.database = mapped
}
/**
* @param value This element is associated with the datasource element. This query is used to fetch incremental changes from the SQL database. To use this option, we recommend using temporal tables in Azure SQL Database.
*/
@JvmName("tnwourjlmjamdfas")
public suspend fun deltaSnapshotQuery(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.deltaSnapshotQuery = mapped
}
/**
* @param value This element is associated with the datasource element. This query is used to fetch data from the sql database.
*/
@JvmName("nwldwhbkqxawiglb")
public suspend fun fullSnapshotQuery(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.fullSnapshotQuery = mapped
}
/**
* @param value This element is associated with the datasource element. This is the password that will be used to connect to the SQL Database instance.
*/
@JvmName("rvoluscbskgkergs")
public suspend fun password(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.password = mapped
}
/**
* @param value This element is associated with the datasource element. This indicates how frequently the data will be fetched from the database. It is of DateTime format.
*/
@JvmName("ssybxedhbmcumegp")
public suspend fun refreshRate(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.refreshRate = mapped
}
/**
* @param value Indicates the type of data refresh option.
*/
@JvmName("neygxiqeoiwhihtn")
public suspend fun refreshType(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.refreshType = mapped
}
/**
* @param value Indicates the type of data refresh option.
*/
@JvmName("gagoschfdabeonox")
public fun refreshType(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.refreshType = mapped
}
/**
* @param value Indicates the type of data refresh option.
*/
@JvmName("dbnxmmpydmndeyjk")
public fun refreshType(`value`: RefreshType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.refreshType = mapped
}
/**
* @param value This element is associated with the datasource element. This is the name of the server that contains the database that will be written to.
*/
@JvmName("qcvifbweukioqvma")
public suspend fun server(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.server = mapped
}
/**
* @param value This element is associated with the datasource element. The name of the table in the Azure SQL database..
*/
@JvmName("jgrybtxncatpdfkh")
public suspend fun table(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.table = mapped
}
/**
* @param value Indicates the type of input data source containing reference data. Required on PUT (CreateOrReplace) requests.
* Expected value is 'Microsoft.Sql/Server/Database'.
*/
@JvmName("vdsfhjuvxoimsiuc")
public suspend fun type(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.type = mapped
}
/**
* @param value This element is associated with the datasource element. This is the user name that will be used to connect to the SQL Database instance.
*/
@JvmName("vhuydhbysiwhbekq")
public suspend fun user(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.user = mapped
}
internal fun build(): AzureSqlReferenceInputDataSourceArgs = AzureSqlReferenceInputDataSourceArgs(
database = database,
deltaSnapshotQuery = deltaSnapshotQuery,
fullSnapshotQuery = fullSnapshotQuery,
password = password,
refreshRate = refreshRate,
refreshType = refreshType,
server = server,
table = table,
type = type ?: throw PulumiNullFieldException("type"),
user = user,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy