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

com.pulumi.awsnative.qbusiness.kotlin.inputs.DataSourceDocumentAttributeTargetArgs.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: 0.122.0.0
Show newest version
@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`,
        )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy