![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.awsnative.connect.kotlin.InstanceStorageConfigArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.connect.kotlin
import com.pulumi.awsnative.connect.InstanceStorageConfigArgs.builder
import com.pulumi.awsnative.connect.kotlin.enums.InstanceStorageConfigInstanceStorageResourceType
import com.pulumi.awsnative.connect.kotlin.enums.InstanceStorageConfigStorageType
import com.pulumi.awsnative.connect.kotlin.inputs.InstanceStorageConfigKinesisFirehoseConfigArgs
import com.pulumi.awsnative.connect.kotlin.inputs.InstanceStorageConfigKinesisFirehoseConfigArgsBuilder
import com.pulumi.awsnative.connect.kotlin.inputs.InstanceStorageConfigKinesisStreamConfigArgs
import com.pulumi.awsnative.connect.kotlin.inputs.InstanceStorageConfigKinesisStreamConfigArgsBuilder
import com.pulumi.awsnative.connect.kotlin.inputs.InstanceStorageConfigKinesisVideoStreamConfigArgs
import com.pulumi.awsnative.connect.kotlin.inputs.InstanceStorageConfigKinesisVideoStreamConfigArgsBuilder
import com.pulumi.awsnative.connect.kotlin.inputs.InstanceStorageConfigS3ConfigArgs
import com.pulumi.awsnative.connect.kotlin.inputs.InstanceStorageConfigS3ConfigArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* Resource Type definition for AWS::Connect::InstanceStorageConfig
* @property instanceArn Connect Instance ID with which the storage config will be associated
* @property kinesisFirehoseConfig The configuration of the Kinesis Firehose delivery stream.
* @property kinesisStreamConfig The configuration of the Kinesis data stream.
* @property kinesisVideoStreamConfig The configuration of the Kinesis video stream.
* @property resourceType A valid resource type. Following are the valid resource types: `CHAT_TRANSCRIPTS` | `CALL_RECORDINGS` | `SCHEDULED_REPORTS` | `MEDIA_STREAMS` | `CONTACT_TRACE_RECORDS` | `AGENT_EVENTS`
* @property s3Config The S3 bucket configuration.
* @property storageType A valid storage type.
*/
public data class InstanceStorageConfigArgs(
public val instanceArn: Output? = null,
public val kinesisFirehoseConfig: Output? = null,
public val kinesisStreamConfig: Output? = null,
public val kinesisVideoStreamConfig: Output? =
null,
public val resourceType: Output? = null,
public val s3Config: Output? = null,
public val storageType: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.connect.InstanceStorageConfigArgs =
com.pulumi.awsnative.connect.InstanceStorageConfigArgs.builder()
.instanceArn(instanceArn?.applyValue({ args0 -> args0 }))
.kinesisFirehoseConfig(
kinesisFirehoseConfig?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.kinesisStreamConfig(
kinesisStreamConfig?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.kinesisVideoStreamConfig(
kinesisVideoStreamConfig?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.resourceType(resourceType?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.s3Config(s3Config?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.storageType(storageType?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [InstanceStorageConfigArgs].
*/
@PulumiTagMarker
public class InstanceStorageConfigArgsBuilder internal constructor() {
private var instanceArn: Output? = null
private var kinesisFirehoseConfig: Output? = null
private var kinesisStreamConfig: Output? = null
private var kinesisVideoStreamConfig: Output? =
null
private var resourceType: Output? = null
private var s3Config: Output? = null
private var storageType: Output? = null
/**
* @param value Connect Instance ID with which the storage config will be associated
*/
@JvmName("edeufdxqrwbeamqf")
public suspend fun instanceArn(`value`: Output) {
this.instanceArn = value
}
/**
* @param value The configuration of the Kinesis Firehose delivery stream.
*/
@JvmName("ltbkqheqwxlpjhmb")
public suspend fun kinesisFirehoseConfig(`value`: Output) {
this.kinesisFirehoseConfig = value
}
/**
* @param value The configuration of the Kinesis data stream.
*/
@JvmName("emsqdpxjymxsvopy")
public suspend fun kinesisStreamConfig(`value`: Output) {
this.kinesisStreamConfig = value
}
/**
* @param value The configuration of the Kinesis video stream.
*/
@JvmName("uwvgfsrvwnfwfidq")
public suspend fun kinesisVideoStreamConfig(`value`: Output) {
this.kinesisVideoStreamConfig = value
}
/**
* @param value A valid resource type. Following are the valid resource types: `CHAT_TRANSCRIPTS` | `CALL_RECORDINGS` | `SCHEDULED_REPORTS` | `MEDIA_STREAMS` | `CONTACT_TRACE_RECORDS` | `AGENT_EVENTS`
*/
@JvmName("cttjrvoekvasunbs")
public suspend fun resourceType(`value`: Output) {
this.resourceType = value
}
/**
* @param value The S3 bucket configuration.
*/
@JvmName("oiofpeorwaabnbbq")
public suspend fun s3Config(`value`: Output) {
this.s3Config = value
}
/**
* @param value A valid storage type.
*/
@JvmName("owlgxxawoxevnqoq")
public suspend fun storageType(`value`: Output) {
this.storageType = value
}
/**
* @param value Connect Instance ID with which the storage config will be associated
*/
@JvmName("tyrjhrahvipttacu")
public suspend fun instanceArn(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.instanceArn = mapped
}
/**
* @param value The configuration of the Kinesis Firehose delivery stream.
*/
@JvmName("kvokpwpydsxkqvek")
public suspend fun kinesisFirehoseConfig(`value`: InstanceStorageConfigKinesisFirehoseConfigArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.kinesisFirehoseConfig = mapped
}
/**
* @param argument The configuration of the Kinesis Firehose delivery stream.
*/
@JvmName("krdxtbqgaucdnvuj")
public suspend fun kinesisFirehoseConfig(argument: suspend InstanceStorageConfigKinesisFirehoseConfigArgsBuilder.() -> Unit) {
val toBeMapped = InstanceStorageConfigKinesisFirehoseConfigArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.kinesisFirehoseConfig = mapped
}
/**
* @param value The configuration of the Kinesis data stream.
*/
@JvmName("jlkrcpckspsuyjsp")
public suspend fun kinesisStreamConfig(`value`: InstanceStorageConfigKinesisStreamConfigArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.kinesisStreamConfig = mapped
}
/**
* @param argument The configuration of the Kinesis data stream.
*/
@JvmName("blkkicjkpdtwjrpd")
public suspend fun kinesisStreamConfig(argument: suspend InstanceStorageConfigKinesisStreamConfigArgsBuilder.() -> Unit) {
val toBeMapped = InstanceStorageConfigKinesisStreamConfigArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.kinesisStreamConfig = mapped
}
/**
* @param value The configuration of the Kinesis video stream.
*/
@JvmName("enelqoaedtccdiev")
public suspend fun kinesisVideoStreamConfig(`value`: InstanceStorageConfigKinesisVideoStreamConfigArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.kinesisVideoStreamConfig = mapped
}
/**
* @param argument The configuration of the Kinesis video stream.
*/
@JvmName("hsflilrsrasloglr")
public suspend fun kinesisVideoStreamConfig(argument: suspend InstanceStorageConfigKinesisVideoStreamConfigArgsBuilder.() -> Unit) {
val toBeMapped = InstanceStorageConfigKinesisVideoStreamConfigArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.kinesisVideoStreamConfig = mapped
}
/**
* @param value A valid resource type. Following are the valid resource types: `CHAT_TRANSCRIPTS` | `CALL_RECORDINGS` | `SCHEDULED_REPORTS` | `MEDIA_STREAMS` | `CONTACT_TRACE_RECORDS` | `AGENT_EVENTS`
*/
@JvmName("ufkjvkrditukjpvn")
public suspend fun resourceType(`value`: InstanceStorageConfigInstanceStorageResourceType?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.resourceType = mapped
}
/**
* @param value The S3 bucket configuration.
*/
@JvmName("wgoiptacibngqxfj")
public suspend fun s3Config(`value`: InstanceStorageConfigS3ConfigArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.s3Config = mapped
}
/**
* @param argument The S3 bucket configuration.
*/
@JvmName("rewchcdjwbxobakh")
public suspend fun s3Config(argument: suspend InstanceStorageConfigS3ConfigArgsBuilder.() -> Unit) {
val toBeMapped = InstanceStorageConfigS3ConfigArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.s3Config = mapped
}
/**
* @param value A valid storage type.
*/
@JvmName("pgoagufvjinkvdft")
public suspend fun storageType(`value`: InstanceStorageConfigStorageType?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.storageType = mapped
}
internal fun build(): InstanceStorageConfigArgs = InstanceStorageConfigArgs(
instanceArn = instanceArn,
kinesisFirehoseConfig = kinesisFirehoseConfig,
kinesisStreamConfig = kinesisStreamConfig,
kinesisVideoStreamConfig = kinesisVideoStreamConfig,
resourceType = resourceType,
s3Config = s3Config,
storageType = storageType,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy