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

com.pulumi.awsnative.kinesisfirehose.kotlin.inputs.DeliveryStreamDocumentIdOptionsArgs.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: 1.24.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.kinesisfirehose.kotlin.inputs

import com.pulumi.awsnative.kinesisfirehose.inputs.DeliveryStreamDocumentIdOptionsArgs.builder
import com.pulumi.awsnative.kinesisfirehose.kotlin.enums.DeliveryStreamDocumentIdOptionsDefaultDocumentIdFormat
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.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property defaultDocumentIdFormat When the `FIREHOSE_DEFAULT` option is chosen, Firehose generates a unique document ID for each record based on a unique internal identifier. The generated document ID is stable across multiple delivery attempts, which helps prevent the same record from being indexed multiple times with different document IDs.
 * When the `NO_DOCUMENT_ID` option is chosen, Firehose does not include any document IDs in the requests it sends to the Amazon OpenSearch Service. This causes the Amazon OpenSearch Service domain to generate document IDs. In case of multiple delivery attempts, this may cause the same record to be indexed more than once with different document IDs. This option enables write-heavy operations, such as the ingestion of logs and observability data, to consume less resources in the Amazon OpenSearch Service domain, resulting in improved performance.
 */
public data class DeliveryStreamDocumentIdOptionsArgs(
    public val defaultDocumentIdFormat: Output,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.kinesisfirehose.inputs.DeliveryStreamDocumentIdOptionsArgs =
        com.pulumi.awsnative.kinesisfirehose.inputs.DeliveryStreamDocumentIdOptionsArgs.builder()
            .defaultDocumentIdFormat(
                defaultDocumentIdFormat.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            ).build()
}

/**
 * Builder for [DeliveryStreamDocumentIdOptionsArgs].
 */
@PulumiTagMarker
public class DeliveryStreamDocumentIdOptionsArgsBuilder internal constructor() {
    private var defaultDocumentIdFormat:
        Output? = null

    /**
     * @param value When the `FIREHOSE_DEFAULT` option is chosen, Firehose generates a unique document ID for each record based on a unique internal identifier. The generated document ID is stable across multiple delivery attempts, which helps prevent the same record from being indexed multiple times with different document IDs.
     * When the `NO_DOCUMENT_ID` option is chosen, Firehose does not include any document IDs in the requests it sends to the Amazon OpenSearch Service. This causes the Amazon OpenSearch Service domain to generate document IDs. In case of multiple delivery attempts, this may cause the same record to be indexed more than once with different document IDs. This option enables write-heavy operations, such as the ingestion of logs and observability data, to consume less resources in the Amazon OpenSearch Service domain, resulting in improved performance.
     */
    @JvmName("xsayrryfwodnrcuc")
    public suspend fun defaultDocumentIdFormat(`value`: Output) {
        this.defaultDocumentIdFormat = value
    }

    /**
     * @param value When the `FIREHOSE_DEFAULT` option is chosen, Firehose generates a unique document ID for each record based on a unique internal identifier. The generated document ID is stable across multiple delivery attempts, which helps prevent the same record from being indexed multiple times with different document IDs.
     * When the `NO_DOCUMENT_ID` option is chosen, Firehose does not include any document IDs in the requests it sends to the Amazon OpenSearch Service. This causes the Amazon OpenSearch Service domain to generate document IDs. In case of multiple delivery attempts, this may cause the same record to be indexed more than once with different document IDs. This option enables write-heavy operations, such as the ingestion of logs and observability data, to consume less resources in the Amazon OpenSearch Service domain, resulting in improved performance.
     */
    @JvmName("iympkikxqmgohldp")
    public suspend fun defaultDocumentIdFormat(`value`: DeliveryStreamDocumentIdOptionsDefaultDocumentIdFormat) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.defaultDocumentIdFormat = mapped
    }

    internal fun build(): DeliveryStreamDocumentIdOptionsArgs = DeliveryStreamDocumentIdOptionsArgs(
        defaultDocumentIdFormat = defaultDocumentIdFormat ?: throw
            PulumiNullFieldException("defaultDocumentIdFormat"),
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy