com.pulumi.aws.kinesis.kotlin.inputs.FirehoseDeliveryStreamOpensearchserverlessConfigurationArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-kotlin Show documentation
Show all versions of pulumi-aws-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.aws.kinesis.kotlin.inputs
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamOpensearchserverlessConfigurationArgs.builder
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.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
*
* @property bufferingInterval Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination. The default value is 300s.
* @property bufferingSize Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination. The default value is 5MB.
* @property cloudwatchLoggingOptions The CloudWatch Logging Options for the delivery stream. See `cloudwatch_logging_options` block below for details.
* @property collectionEndpoint The endpoint to use when communicating with the collection in the Serverless offering for Amazon OpenSearch Service.
* @property indexName The Serverless offering for Amazon OpenSearch Service index name.
* @property processingConfiguration The data processing configuration. See `processing_configuration` block below for details.
* @property retryDuration After an initial failure to deliver to the Serverless offering for Amazon OpenSearch Service, the total amount of time, in seconds between 0 to 7200, during which Kinesis Data Firehose retries delivery (including the first attempt). After this time has elapsed, the failed documents are written to Amazon S3. The default value is 300s. There will be no retry if the value is 0.
* @property roleArn The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Serverless offering for Amazon OpenSearch Service Configuration API and for indexing documents. The pattern needs to be `arn:.*`.
* @property s3BackupMode Defines how documents should be delivered to Amazon S3. Valid values are `FailedDocumentsOnly` and `AllDocuments`. Default value is `FailedDocumentsOnly`.
* @property s3Configuration The S3 Configuration. See `s3_configuration` block below for details.
* @property vpcConfig The VPC configuration for the delivery stream to connect to OpenSearch Serverless associated with the VPC. See `vpc_config` block below for details.
*/
public data class FirehoseDeliveryStreamOpensearchserverlessConfigurationArgs(
public val bufferingInterval: Output? = null,
public val bufferingSize: Output? = null,
public val cloudwatchLoggingOptions: Output? =
null,
public val collectionEndpoint: Output,
public val indexName: Output,
public val processingConfiguration: Output? =
null,
public val retryDuration: Output? = null,
public val roleArn: Output,
public val s3BackupMode: Output? = null,
public val s3Configuration: Output,
public val vpcConfig: Output? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamOpensearchserverlessConfigurationArgs =
com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamOpensearchserverlessConfigurationArgs.builder()
.bufferingInterval(bufferingInterval?.applyValue({ args0 -> args0 }))
.bufferingSize(bufferingSize?.applyValue({ args0 -> args0 }))
.cloudwatchLoggingOptions(
cloudwatchLoggingOptions?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.collectionEndpoint(collectionEndpoint.applyValue({ args0 -> args0 }))
.indexName(indexName.applyValue({ args0 -> args0 }))
.processingConfiguration(
processingConfiguration?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.retryDuration(retryDuration?.applyValue({ args0 -> args0 }))
.roleArn(roleArn.applyValue({ args0 -> args0 }))
.s3BackupMode(s3BackupMode?.applyValue({ args0 -> args0 }))
.s3Configuration(s3Configuration.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.vpcConfig(vpcConfig?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [FirehoseDeliveryStreamOpensearchserverlessConfigurationArgs].
*/
@PulumiTagMarker
public class FirehoseDeliveryStreamOpensearchserverlessConfigurationArgsBuilder internal constructor() {
private var bufferingInterval: Output? = null
private var bufferingSize: Output? = null
private var cloudwatchLoggingOptions:
Output? =
null
private var collectionEndpoint: Output? = null
private var indexName: Output? = null
private var processingConfiguration:
Output? =
null
private var retryDuration: Output? = null
private var roleArn: Output? = null
private var s3BackupMode: Output? = null
private var s3Configuration:
Output? = null
private var vpcConfig:
Output? = null
/**
* @param value Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination. The default value is 300s.
*/
@JvmName("qnwmkcflahorqlru")
public suspend fun bufferingInterval(`value`: Output) {
this.bufferingInterval = value
}
/**
* @param value Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination. The default value is 5MB.
*/
@JvmName("qmxlyuedyxbhxlej")
public suspend fun bufferingSize(`value`: Output) {
this.bufferingSize = value
}
/**
* @param value The CloudWatch Logging Options for the delivery stream. See `cloudwatch_logging_options` block below for details.
*/
@JvmName("whebarlevtmkosgb")
public suspend fun cloudwatchLoggingOptions(`value`: Output) {
this.cloudwatchLoggingOptions = value
}
/**
* @param value The endpoint to use when communicating with the collection in the Serverless offering for Amazon OpenSearch Service.
*/
@JvmName("wfewgxdmldxqyipe")
public suspend fun collectionEndpoint(`value`: Output) {
this.collectionEndpoint = value
}
/**
* @param value The Serverless offering for Amazon OpenSearch Service index name.
*/
@JvmName("kgmwsxlewaeksunn")
public suspend fun indexName(`value`: Output) {
this.indexName = value
}
/**
* @param value The data processing configuration. See `processing_configuration` block below for details.
*/
@JvmName("dbxorgmuqelhwsvp")
public suspend fun processingConfiguration(`value`: Output) {
this.processingConfiguration = value
}
/**
* @param value After an initial failure to deliver to the Serverless offering for Amazon OpenSearch Service, the total amount of time, in seconds between 0 to 7200, during which Kinesis Data Firehose retries delivery (including the first attempt). After this time has elapsed, the failed documents are written to Amazon S3. The default value is 300s. There will be no retry if the value is 0.
*/
@JvmName("qwyaxxbdaraqymvg")
public suspend fun retryDuration(`value`: Output) {
this.retryDuration = value
}
/**
* @param value The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Serverless offering for Amazon OpenSearch Service Configuration API and for indexing documents. The pattern needs to be `arn:.*`.
*/
@JvmName("oknodcfxdlqkiwpi")
public suspend fun roleArn(`value`: Output) {
this.roleArn = value
}
/**
* @param value Defines how documents should be delivered to Amazon S3. Valid values are `FailedDocumentsOnly` and `AllDocuments`. Default value is `FailedDocumentsOnly`.
*/
@JvmName("sotiqscixtgctqng")
public suspend fun s3BackupMode(`value`: Output) {
this.s3BackupMode = value
}
/**
* @param value The S3 Configuration. See `s3_configuration` block below for details.
*/
@JvmName("brmshlvanknbvcdd")
public suspend fun s3Configuration(`value`: Output) {
this.s3Configuration = value
}
/**
* @param value The VPC configuration for the delivery stream to connect to OpenSearch Serverless associated with the VPC. See `vpc_config` block below for details.
*/
@JvmName("oqaopiqsdvprdpay")
public suspend fun vpcConfig(`value`: Output) {
this.vpcConfig = value
}
/**
* @param value Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination. The default value is 300s.
*/
@JvmName("tnldiaujrgdfnyjg")
public suspend fun bufferingInterval(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.bufferingInterval = mapped
}
/**
* @param value Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination. The default value is 5MB.
*/
@JvmName("jtsbklrwfxhhejav")
public suspend fun bufferingSize(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.bufferingSize = mapped
}
/**
* @param value The CloudWatch Logging Options for the delivery stream. See `cloudwatch_logging_options` block below for details.
*/
@JvmName("kkfwuhxeikqylxcv")
public suspend fun cloudwatchLoggingOptions(`value`: FirehoseDeliveryStreamOpensearchserverlessConfigurationCloudwatchLoggingOptionsArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.cloudwatchLoggingOptions = mapped
}
/**
* @param argument The CloudWatch Logging Options for the delivery stream. See `cloudwatch_logging_options` block below for details.
*/
@JvmName("bpbqllwqxakvwgoc")
public suspend fun cloudwatchLoggingOptions(argument: suspend FirehoseDeliveryStreamOpensearchserverlessConfigurationCloudwatchLoggingOptionsArgsBuilder.() -> Unit) {
val toBeMapped =
FirehoseDeliveryStreamOpensearchserverlessConfigurationCloudwatchLoggingOptionsArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.cloudwatchLoggingOptions = mapped
}
/**
* @param value The endpoint to use when communicating with the collection in the Serverless offering for Amazon OpenSearch Service.
*/
@JvmName("bbooqrneciefgyys")
public suspend fun collectionEndpoint(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.collectionEndpoint = mapped
}
/**
* @param value The Serverless offering for Amazon OpenSearch Service index name.
*/
@JvmName("pnrvwrdcnskunalj")
public suspend fun indexName(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.indexName = mapped
}
/**
* @param value The data processing configuration. See `processing_configuration` block below for details.
*/
@JvmName("whniqjsqgamhddwu")
public suspend fun processingConfiguration(`value`: FirehoseDeliveryStreamOpensearchserverlessConfigurationProcessingConfigurationArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.processingConfiguration = mapped
}
/**
* @param argument The data processing configuration. See `processing_configuration` block below for details.
*/
@JvmName("wurjrlldiomwmjdo")
public suspend fun processingConfiguration(argument: suspend FirehoseDeliveryStreamOpensearchserverlessConfigurationProcessingConfigurationArgsBuilder.() -> Unit) {
val toBeMapped =
FirehoseDeliveryStreamOpensearchserverlessConfigurationProcessingConfigurationArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.processingConfiguration = mapped
}
/**
* @param value After an initial failure to deliver to the Serverless offering for Amazon OpenSearch Service, the total amount of time, in seconds between 0 to 7200, during which Kinesis Data Firehose retries delivery (including the first attempt). After this time has elapsed, the failed documents are written to Amazon S3. The default value is 300s. There will be no retry if the value is 0.
*/
@JvmName("qktvjpenvygxuslx")
public suspend fun retryDuration(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.retryDuration = mapped
}
/**
* @param value The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Serverless offering for Amazon OpenSearch Service Configuration API and for indexing documents. The pattern needs to be `arn:.*`.
*/
@JvmName("uvreesbveudalaki")
public suspend fun roleArn(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.roleArn = mapped
}
/**
* @param value Defines how documents should be delivered to Amazon S3. Valid values are `FailedDocumentsOnly` and `AllDocuments`. Default value is `FailedDocumentsOnly`.
*/
@JvmName("qjcicoewhgegtmkw")
public suspend fun s3BackupMode(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.s3BackupMode = mapped
}
/**
* @param value The S3 Configuration. See `s3_configuration` block below for details.
*/
@JvmName("dotpuxvmihguobns")
public suspend fun s3Configuration(`value`: FirehoseDeliveryStreamOpensearchserverlessConfigurationS3ConfigurationArgs) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.s3Configuration = mapped
}
/**
* @param argument The S3 Configuration. See `s3_configuration` block below for details.
*/
@JvmName("mrnlxgtntppuvuul")
public suspend fun s3Configuration(argument: suspend FirehoseDeliveryStreamOpensearchserverlessConfigurationS3ConfigurationArgsBuilder.() -> Unit) {
val toBeMapped =
FirehoseDeliveryStreamOpensearchserverlessConfigurationS3ConfigurationArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.s3Configuration = mapped
}
/**
* @param value The VPC configuration for the delivery stream to connect to OpenSearch Serverless associated with the VPC. See `vpc_config` block below for details.
*/
@JvmName("lfhmcowxqmwwoqfv")
public suspend fun vpcConfig(`value`: FirehoseDeliveryStreamOpensearchserverlessConfigurationVpcConfigArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.vpcConfig = mapped
}
/**
* @param argument The VPC configuration for the delivery stream to connect to OpenSearch Serverless associated with the VPC. See `vpc_config` block below for details.
*/
@JvmName("wqyfiebvchlerkwg")
public suspend fun vpcConfig(argument: suspend FirehoseDeliveryStreamOpensearchserverlessConfigurationVpcConfigArgsBuilder.() -> Unit) {
val toBeMapped =
FirehoseDeliveryStreamOpensearchserverlessConfigurationVpcConfigArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.vpcConfig = mapped
}
internal fun build(): FirehoseDeliveryStreamOpensearchserverlessConfigurationArgs =
FirehoseDeliveryStreamOpensearchserverlessConfigurationArgs(
bufferingInterval = bufferingInterval,
bufferingSize = bufferingSize,
cloudwatchLoggingOptions = cloudwatchLoggingOptions,
collectionEndpoint = collectionEndpoint ?: throw PulumiNullFieldException("collectionEndpoint"),
indexName = indexName ?: throw PulumiNullFieldException("indexName"),
processingConfiguration = processingConfiguration,
retryDuration = retryDuration,
roleArn = roleArn ?: throw PulumiNullFieldException("roleArn"),
s3BackupMode = s3BackupMode,
s3Configuration = s3Configuration ?: throw PulumiNullFieldException("s3Configuration"),
vpcConfig = vpcConfig,
)
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy