
com.pulumi.gcp.pubsub.kotlin.inputs.TopicIngestionDataSourceSettingsArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.pubsub.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.pubsub.inputs.TopicIngestionDataSourceSettingsArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
*
* @property awsKinesis Settings for ingestion from Amazon Kinesis Data Streams.
* Structure is documented below.
* @property cloudStorage Settings for ingestion from Cloud Storage.
* Structure is documented below.
* @property platformLogsSettings Settings for Platform Logs regarding ingestion to Pub/Sub. If unset,
* no Platform Logs will be generated.'
* Structure is documented below.
*/
public data class TopicIngestionDataSourceSettingsArgs(
public val awsKinesis: Output? = null,
public val cloudStorage: Output? = null,
public val platformLogsSettings: Output? =
null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.gcp.pubsub.inputs.TopicIngestionDataSourceSettingsArgs =
com.pulumi.gcp.pubsub.inputs.TopicIngestionDataSourceSettingsArgs.builder()
.awsKinesis(awsKinesis?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.cloudStorage(cloudStorage?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.platformLogsSettings(
platformLogsSettings?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [TopicIngestionDataSourceSettingsArgs].
*/
@PulumiTagMarker
public class TopicIngestionDataSourceSettingsArgsBuilder internal constructor() {
private var awsKinesis: Output? = null
private var cloudStorage: Output? = null
private var platformLogsSettings:
Output? = null
/**
* @param value Settings for ingestion from Amazon Kinesis Data Streams.
* Structure is documented below.
*/
@JvmName("xodsidswumcrhplw")
public suspend fun awsKinesis(`value`: Output) {
this.awsKinesis = value
}
/**
* @param value Settings for ingestion from Cloud Storage.
* Structure is documented below.
*/
@JvmName("anihokkrakffvlod")
public suspend fun cloudStorage(`value`: Output) {
this.cloudStorage = value
}
/**
* @param value Settings for Platform Logs regarding ingestion to Pub/Sub. If unset,
* no Platform Logs will be generated.'
* Structure is documented below.
*/
@JvmName("ekorqufglrbmdykj")
public suspend fun platformLogsSettings(`value`: Output) {
this.platformLogsSettings = value
}
/**
* @param value Settings for ingestion from Amazon Kinesis Data Streams.
* Structure is documented below.
*/
@JvmName("mpajjwifjeibcmkb")
public suspend fun awsKinesis(`value`: TopicIngestionDataSourceSettingsAwsKinesisArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.awsKinesis = mapped
}
/**
* @param argument Settings for ingestion from Amazon Kinesis Data Streams.
* Structure is documented below.
*/
@JvmName("xxtyggfkxsvqhkuc")
public suspend fun awsKinesis(argument: suspend TopicIngestionDataSourceSettingsAwsKinesisArgsBuilder.() -> Unit) {
val toBeMapped = TopicIngestionDataSourceSettingsAwsKinesisArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.awsKinesis = mapped
}
/**
* @param value Settings for ingestion from Cloud Storage.
* Structure is documented below.
*/
@JvmName("cqqaxtyglaomflcd")
public suspend fun cloudStorage(`value`: TopicIngestionDataSourceSettingsCloudStorageArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.cloudStorage = mapped
}
/**
* @param argument Settings for ingestion from Cloud Storage.
* Structure is documented below.
*/
@JvmName("wgsrundwnwfxtkfb")
public suspend fun cloudStorage(argument: suspend TopicIngestionDataSourceSettingsCloudStorageArgsBuilder.() -> Unit) {
val toBeMapped = TopicIngestionDataSourceSettingsCloudStorageArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.cloudStorage = mapped
}
/**
* @param value Settings for Platform Logs regarding ingestion to Pub/Sub. If unset,
* no Platform Logs will be generated.'
* Structure is documented below.
*/
@JvmName("nysxprooxwxhhinb")
public suspend fun platformLogsSettings(`value`: TopicIngestionDataSourceSettingsPlatformLogsSettingsArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.platformLogsSettings = mapped
}
/**
* @param argument Settings for Platform Logs regarding ingestion to Pub/Sub. If unset,
* no Platform Logs will be generated.'
* Structure is documented below.
*/
@JvmName("oaxokqswscasjwup")
public suspend fun platformLogsSettings(argument: suspend TopicIngestionDataSourceSettingsPlatformLogsSettingsArgsBuilder.() -> Unit) {
val toBeMapped = TopicIngestionDataSourceSettingsPlatformLogsSettingsArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.platformLogsSettings = mapped
}
internal fun build(): TopicIngestionDataSourceSettingsArgs = TopicIngestionDataSourceSettingsArgs(
awsKinesis = awsKinesis,
cloudStorage = cloudStorage,
platformLogsSettings = platformLogsSettings,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy