com.pulumi.awsnative.qbusiness.kotlin.inputs.DataSourceDocumentAttributeTargetArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.qbusiness.kotlin.inputs
import com.pulumi.awsnative.qbusiness.inputs.DataSourceDocumentAttributeTargetArgs.builder
import com.pulumi.awsnative.qbusiness.kotlin.enums.DataSourceAttributeValueOperator
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.Any
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property attributeValueOperator `TRUE` to delete the existing target value for your specified target attribute key. You cannot create a target value and set this to `TRUE` .
* @property key The identifier of the target document attribute or metadata field. For example, 'Department' could be an identifier for the target attribute or metadata field that includes the department names associated with the documents.
* @property value The value of a document attribute. You can only provide one value for a document attribute.
*/
public data class DataSourceDocumentAttributeTargetArgs(
public val attributeValueOperator: Output? = null,
public val key: Output,
public val `value`: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.qbusiness.inputs.DataSourceDocumentAttributeTargetArgs = com.pulumi.awsnative.qbusiness.inputs.DataSourceDocumentAttributeTargetArgs.builder()
.attributeValueOperator(
attributeValueOperator?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.key(key.applyValue({ args0 -> args0 }))
.`value`(`value`?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [DataSourceDocumentAttributeTargetArgs].
*/
@PulumiTagMarker
public class DataSourceDocumentAttributeTargetArgsBuilder internal constructor() {
private var attributeValueOperator: Output? = null
private var key: Output? = null
private var `value`: Output? = null
/**
* @param value `TRUE` to delete the existing target value for your specified target attribute key. You cannot create a target value and set this to `TRUE` .
*/
@JvmName("kdnnxolwdyxcwvjf")
public suspend fun attributeValueOperator(`value`: Output) {
this.attributeValueOperator = value
}
/**
* @param value The identifier of the target document attribute or metadata field. For example, 'Department' could be an identifier for the target attribute or metadata field that includes the department names associated with the documents.
*/
@JvmName("sjopqejbyumrmayy")
public suspend fun key(`value`: Output) {
this.key = value
}
/**
* @param value The value of a document attribute. You can only provide one value for a document attribute.
*/
@JvmName("hespmajlcdmopvil")
public suspend fun `value`(`value`: Output) {
this.`value` = value
}
/**
* @param value `TRUE` to delete the existing target value for your specified target attribute key. You cannot create a target value and set this to `TRUE` .
*/
@JvmName("fivfckbynilxpeod")
public suspend fun attributeValueOperator(`value`: DataSourceAttributeValueOperator?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.attributeValueOperator = mapped
}
/**
* @param value The identifier of the target document attribute or metadata field. For example, 'Department' could be an identifier for the target attribute or metadata field that includes the department names associated with the documents.
*/
@JvmName("yhxtsuacxywsoyae")
public suspend fun key(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.key = mapped
}
/**
* @param value The value of a document attribute. You can only provide one value for a document attribute.
*/
@JvmName("nlfqdggoyqgjqsqt")
public suspend fun `value`(`value`: Any?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.`value` = mapped
}
internal fun build(): DataSourceDocumentAttributeTargetArgs =
DataSourceDocumentAttributeTargetArgs(
attributeValueOperator = attributeValueOperator,
key = key ?: throw PulumiNullFieldException("key"),
`value` = `value`,
)
}