Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azurenative.datafactory.kotlin.inputs.GoogleBigQueryV2LinkedServiceArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.datafactory.kotlin.inputs
import com.pulumi.azurenative.datafactory.inputs.GoogleBigQueryV2LinkedServiceArgs.builder
import com.pulumi.azurenative.datafactory.kotlin.enums.GoogleBigQueryV2AuthenticationType
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 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
/**
* Google BigQuery service linked service.
* @property annotations List of tags that can be used for describing the linked service.
* @property authenticationType The OAuth 2.0 authentication mechanism used for authentication.
* @property clientId The client id of the google application used to acquire the refresh token. Type: string (or Expression with resultType string).
* @property clientSecret The client secret of the google application used to acquire the refresh token.
* @property connectVia The integration runtime reference.
* @property description Linked service description.
* @property encryptedCredential The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string.
* @property keyFileContent The content of the .json key file that is used to authenticate the service account. Type: string (or Expression with resultType string).
* @property parameters Parameters for linked service.
* @property projectId The default BigQuery project id to query against. Type: string (or Expression with resultType string).
* @property refreshToken The refresh token obtained from Google for authorizing access to BigQuery for UserAuthentication.
* @property type Type of linked service.
* Expected value is 'GoogleBigQueryV2'.
* @property version Version of the linked service.
*/
public data class GoogleBigQueryV2LinkedServiceArgs(
public val annotations: Output>? = null,
public val authenticationType: Output>,
public val clientId: Output? = null,
public val clientSecret: Output>? =
null,
public val connectVia: Output? = null,
public val description: Output? = null,
public val encryptedCredential: Output? = null,
public val keyFileContent: Output>? =
null,
public val parameters: Output>? = null,
public val projectId: Output,
public val refreshToken: Output>? =
null,
public val type: Output,
public val version: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.datafactory.inputs.GoogleBigQueryV2LinkedServiceArgs = com.pulumi.azurenative.datafactory.inputs.GoogleBigQueryV2LinkedServiceArgs.builder()
.annotations(annotations?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.authenticationType(
authenticationType.applyValue({ args0 ->
args0.transform(
{ args0 -> args0 },
{ args0 -> args0.let({ args0 -> args0.toJava() }) },
)
}),
)
.clientId(clientId?.applyValue({ args0 -> args0 }))
.clientSecret(
clientSecret?.applyValue({ args0 ->
args0.transform({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}, { args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.connectVia(connectVia?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.description(description?.applyValue({ args0 -> args0 }))
.encryptedCredential(encryptedCredential?.applyValue({ args0 -> args0 }))
.keyFileContent(
keyFileContent?.applyValue({ args0 ->
args0.transform({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}, { args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.parameters(
parameters?.applyValue({ args0 ->
args0.map({ args0 ->
args0.key.to(args0.value.let({ args0 -> args0.toJava() }))
}).toMap()
}),
)
.projectId(projectId.applyValue({ args0 -> args0 }))
.refreshToken(
refreshToken?.applyValue({ args0 ->
args0.transform({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}, { args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.type(type.applyValue({ args0 -> args0 }))
.version(version?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [GoogleBigQueryV2LinkedServiceArgs].
*/
@PulumiTagMarker
public class GoogleBigQueryV2LinkedServiceArgsBuilder internal constructor() {
private var annotations: Output>? = null
private var authenticationType: Output>? = null
private var clientId: Output? = null
private var clientSecret: Output>? =
null
private var connectVia: Output? = null
private var description: Output? = null
private var encryptedCredential: Output? = null
private var keyFileContent: Output>? =
null
private var parameters: Output>? = null
private var projectId: Output? = null
private var refreshToken: Output>? =
null
private var type: Output? = null
private var version: Output? = null
/**
* @param value List of tags that can be used for describing the linked service.
*/
@JvmName("gaccwsflxwuxcpyb")
public suspend fun annotations(`value`: Output>) {
this.annotations = value
}
@JvmName("xvmjhlwkshmpgqdg")
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 linked service.
*/
@JvmName("adhslccuwbwwlcvx")
public suspend fun annotations(values: List>) {
this.annotations = Output.all(values)
}
/**
* @param value The OAuth 2.0 authentication mechanism used for authentication.
*/
@JvmName("utsmurarvljwfaqu")
public suspend fun authenticationType(`value`: Output>) {
this.authenticationType = value
}
/**
* @param value The client id of the google application used to acquire the refresh token. Type: string (or Expression with resultType string).
*/
@JvmName("dlrlelrhaoseehmt")
public suspend fun clientId(`value`: Output) {
this.clientId = value
}
/**
* @param value The client secret of the google application used to acquire the refresh token.
*/
@JvmName("elblvmawawtfyyiy")
public suspend fun clientSecret(`value`: Output>) {
this.clientSecret = value
}
/**
* @param value The integration runtime reference.
*/
@JvmName("wgmgbpxupljykbrd")
public suspend fun connectVia(`value`: Output) {
this.connectVia = value
}
/**
* @param value Linked service description.
*/
@JvmName("ylmgajpsyxoxiquh")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string.
*/
@JvmName("bqwhpnlkefhmlkqx")
public suspend fun encryptedCredential(`value`: Output) {
this.encryptedCredential = value
}
/**
* @param value The content of the .json key file that is used to authenticate the service account. Type: string (or Expression with resultType string).
*/
@JvmName("eqbxplamwjhtjtjj")
public suspend fun keyFileContent(`value`: Output>) {
this.keyFileContent = value
}
/**
* @param value Parameters for linked service.
*/
@JvmName("nodbepvaeqacfjvk")
public suspend fun parameters(`value`: Output>) {
this.parameters = value
}
/**
* @param value The default BigQuery project id to query against. Type: string (or Expression with resultType string).
*/
@JvmName("posikhescqvyitbg")
public suspend fun projectId(`value`: Output) {
this.projectId = value
}
/**
* @param value The refresh token obtained from Google for authorizing access to BigQuery for UserAuthentication.
*/
@JvmName("tuvosrmglrowyccn")
public suspend fun refreshToken(`value`: Output>) {
this.refreshToken = value
}
/**
* @param value Type of linked service.
* Expected value is 'GoogleBigQueryV2'.
*/
@JvmName("cijjufuiawhbabor")
public suspend fun type(`value`: Output) {
this.type = value
}
/**
* @param value Version of the linked service.
*/
@JvmName("qhskqqdfrrnidaod")
public suspend fun version(`value`: Output) {
this.version = value
}
/**
* @param value List of tags that can be used for describing the linked service.
*/
@JvmName("jeftffitkrkgqtnp")
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 linked service.
*/
@JvmName("oolrcyadnhkeeagg")
public suspend fun annotations(vararg values: Any) {
val toBeMapped = values.toList()
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.annotations = mapped
}
/**
* @param value The OAuth 2.0 authentication mechanism used for authentication.
*/
@JvmName("mwttqfkapeqgnfnh")
public suspend fun authenticationType(`value`: Either) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.authenticationType = mapped
}
/**
* @param value The OAuth 2.0 authentication mechanism used for authentication.
*/
@JvmName("anwvjaogpfhilyfl")
public fun authenticationType(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.authenticationType = mapped
}
/**
* @param value The OAuth 2.0 authentication mechanism used for authentication.
*/
@JvmName("buvhdyfhwkksdjgw")
public fun authenticationType(`value`: GoogleBigQueryV2AuthenticationType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.authenticationType = mapped
}
/**
* @param value The client id of the google application used to acquire the refresh token. Type: string (or Expression with resultType string).
*/
@JvmName("pibmdydqpxpmbokx")
public suspend fun clientId(`value`: Any?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.clientId = mapped
}
/**
* @param value The client secret of the google application used to acquire the refresh token.
*/
@JvmName("ntybphquxungqivh")
public suspend fun clientSecret(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.clientSecret = mapped
}
/**
* @param value The client secret of the google application used to acquire the refresh token.
*/
@JvmName("aaqvhyvfcbdkvwpb")
public fun clientSecret(`value`: AzureKeyVaultSecretReferenceArgs) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.clientSecret = mapped
}
/**
* @param value The client secret of the google application used to acquire the refresh token.
*/
@JvmName("ybamlqecdbgdwiid")
public fun clientSecret(`value`: SecureStringArgs) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.clientSecret = mapped
}
/**
* @param value The integration runtime reference.
*/
@JvmName("bxllqfixqmbqprbq")
public suspend fun connectVia(`value`: IntegrationRuntimeReferenceArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.connectVia = mapped
}
/**
* @param argument The integration runtime reference.
*/
@JvmName("wbokkjkobyvkaxnw")
public suspend fun connectVia(argument: suspend IntegrationRuntimeReferenceArgsBuilder.() -> Unit) {
val toBeMapped = IntegrationRuntimeReferenceArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.connectVia = mapped
}
/**
* @param value Linked service description.
*/
@JvmName("ryabaeowiettsahp")
public suspend fun description(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.description = mapped
}
/**
* @param value The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string.
*/
@JvmName("xvnktcwwquvryigb")
public suspend fun encryptedCredential(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.encryptedCredential = mapped
}
/**
* @param value The content of the .json key file that is used to authenticate the service account. Type: string (or Expression with resultType string).
*/
@JvmName("uucchvjbupbbvgtj")
public suspend fun keyFileContent(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.keyFileContent = mapped
}
/**
* @param value The content of the .json key file that is used to authenticate the service account. Type: string (or Expression with resultType string).
*/
@JvmName("apfmblimidnlmeop")
public fun keyFileContent(`value`: AzureKeyVaultSecretReferenceArgs) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.keyFileContent = mapped
}
/**
* @param value The content of the .json key file that is used to authenticate the service account. Type: string (or Expression with resultType string).
*/
@JvmName("oxmdgshusdakuioy")
public fun keyFileContent(`value`: SecureStringArgs) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.keyFileContent = mapped
}
/**
* @param value Parameters for linked service.
*/
@JvmName("riusrggsxvynesax")
public suspend fun parameters(`value`: Map?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.parameters = mapped
}
/**
* @param argument Parameters for linked service.
*/
@JvmName("tyqbslklrldrngex")
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 linked service.
*/
@JvmName("duxuqihxcjcplhbo")
public fun parameters(vararg values: Pair) {
val toBeMapped = values.toMap()
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.parameters = mapped
}
/**
* @param value The default BigQuery project id to query against. Type: string (or Expression with resultType string).
*/
@JvmName("hjgwcnnpxnhunrhg")
public suspend fun projectId(`value`: Any) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.projectId = mapped
}
/**
* @param value The refresh token obtained from Google for authorizing access to BigQuery for UserAuthentication.
*/
@JvmName("lpxbnbsjnurkbouo")
public suspend fun refreshToken(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.refreshToken = mapped
}
/**
* @param value The refresh token obtained from Google for authorizing access to BigQuery for UserAuthentication.
*/
@JvmName("bratfyfsaxlfpcca")
public fun refreshToken(`value`: AzureKeyVaultSecretReferenceArgs) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.refreshToken = mapped
}
/**
* @param value The refresh token obtained from Google for authorizing access to BigQuery for UserAuthentication.
*/
@JvmName("kixxolkcpmsctivf")
public fun refreshToken(`value`: SecureStringArgs) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.refreshToken = mapped
}
/**
* @param value Type of linked service.
* Expected value is 'GoogleBigQueryV2'.
*/
@JvmName("lkddyrclvoajmitp")
public suspend fun type(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.type = mapped
}
/**
* @param value Version of the linked service.
*/
@JvmName("pgubxvypakttiptd")
public suspend fun version(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.version = mapped
}
internal fun build(): GoogleBigQueryV2LinkedServiceArgs = GoogleBigQueryV2LinkedServiceArgs(
annotations = annotations,
authenticationType = authenticationType ?: throw PulumiNullFieldException("authenticationType"),
clientId = clientId,
clientSecret = clientSecret,
connectVia = connectVia,
description = description,
encryptedCredential = encryptedCredential,
keyFileContent = keyFileContent,
parameters = parameters,
projectId = projectId ?: throw PulumiNullFieldException("projectId"),
refreshToken = refreshToken,
type = type ?: throw PulumiNullFieldException("type"),
version = version,
)
}