![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.awsnative.iot.kotlin.inputs.TopicRuleActionArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.iot.kotlin.inputs
import com.pulumi.awsnative.iot.inputs.TopicRuleActionArgs.builder
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.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
*
* @property cloudwatchAlarm Change the state of a CloudWatch alarm.
* @property cloudwatchLogs Sends data to CloudWatch.
* @property cloudwatchMetric Capture a CloudWatch metric.
* @property dynamoDBv2 Write to a DynamoDB table. This is a new version of the DynamoDB action. It allows you to write each attribute in an MQTT message payload into a separate DynamoDB column.
* @property dynamoDb Write to a DynamoDB table.
* @property elasticsearch Write data to an Amazon OpenSearch Service domain.
* > The `Elasticsearch` action can only be used by existing rule actions. To create a new rule action or to update an existing rule action, use the `OpenSearch` rule action instead. For more information, see [OpenSearchAction](https://docs.aws.amazon.com//iot/latest/apireference/API_OpenSearchAction.html) .
* @property firehose Write to an Amazon Kinesis Firehose stream.
* @property http Send data to an HTTPS endpoint.
* @property iotAnalytics Sends message data to an AWS IoT Analytics channel.
* @property iotEvents Sends an input to an AWS IoT Events detector.
* @property iotSiteWise Sends data from the MQTT message that triggered the rule to AWS IoT SiteWise asset properties.
* @property kafka Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.
* @property kinesis Write data to an Amazon Kinesis stream.
* @property lambda Invoke a Lambda function.
* @property location Sends device location data to [Amazon Location Service](https://docs.aws.amazon.com//location/latest/developerguide/welcome.html) .
* @property openSearch Write data to an Amazon OpenSearch Service domain.
* @property republish Publish to another MQTT topic.
* @property s3 Write to an Amazon S3 bucket.
* @property sns Publish to an Amazon SNS topic.
* @property sqs Publish to an Amazon SQS queue.
* @property stepFunctions Starts execution of a Step Functions state machine.
* @property timestream Writes attributes from an MQTT message.
*/
public data class TopicRuleActionArgs(
public val cloudwatchAlarm: Output? = null,
public val cloudwatchLogs: Output? = null,
public val cloudwatchMetric: Output? = null,
public val dynamoDBv2: Output? = null,
public val dynamoDb: Output? = null,
public val elasticsearch: Output? = null,
public val firehose: Output? = null,
public val http: Output? = null,
public val iotAnalytics: Output? = null,
public val iotEvents: Output? = null,
public val iotSiteWise: Output? = null,
public val kafka: Output? = null,
public val kinesis: Output? = null,
public val lambda: Output? = null,
public val location: Output? = null,
public val openSearch: Output? = null,
public val republish: Output? = null,
public val s3: Output? = null,
public val sns: Output? = null,
public val sqs: Output? = null,
public val stepFunctions: Output? = null,
public val timestream: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.iot.inputs.TopicRuleActionArgs =
com.pulumi.awsnative.iot.inputs.TopicRuleActionArgs.builder()
.cloudwatchAlarm(cloudwatchAlarm?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.cloudwatchLogs(cloudwatchLogs?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.cloudwatchMetric(cloudwatchMetric?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.dynamoDBv2(dynamoDBv2?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.dynamoDb(dynamoDb?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.elasticsearch(elasticsearch?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.firehose(firehose?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.http(http?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.iotAnalytics(iotAnalytics?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.iotEvents(iotEvents?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.iotSiteWise(iotSiteWise?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.kafka(kafka?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.kinesis(kinesis?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.lambda(lambda?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.location(location?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.openSearch(openSearch?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.republish(republish?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.s3(s3?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.sns(sns?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.sqs(sqs?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.stepFunctions(stepFunctions?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.timestream(timestream?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [TopicRuleActionArgs].
*/
@PulumiTagMarker
public class TopicRuleActionArgsBuilder internal constructor() {
private var cloudwatchAlarm: Output? = null
private var cloudwatchLogs: Output? = null
private var cloudwatchMetric: Output? = null
private var dynamoDBv2: Output? = null
private var dynamoDb: Output? = null
private var elasticsearch: Output? = null
private var firehose: Output? = null
private var http: Output? = null
private var iotAnalytics: Output? = null
private var iotEvents: Output? = null
private var iotSiteWise: Output? = null
private var kafka: Output? = null
private var kinesis: Output? = null
private var lambda: Output? = null
private var location: Output? = null
private var openSearch: Output? = null
private var republish: Output? = null
private var s3: Output? = null
private var sns: Output? = null
private var sqs: Output? = null
private var stepFunctions: Output? = null
private var timestream: Output? = null
/**
* @param value Change the state of a CloudWatch alarm.
*/
@JvmName("spfsbjyycfavrgsv")
public suspend fun cloudwatchAlarm(`value`: Output) {
this.cloudwatchAlarm = value
}
/**
* @param value Sends data to CloudWatch.
*/
@JvmName("qhsatdoapcfqxeha")
public suspend fun cloudwatchLogs(`value`: Output) {
this.cloudwatchLogs = value
}
/**
* @param value Capture a CloudWatch metric.
*/
@JvmName("rillladwkprgcnwb")
public suspend fun cloudwatchMetric(`value`: Output) {
this.cloudwatchMetric = value
}
/**
* @param value Write to a DynamoDB table. This is a new version of the DynamoDB action. It allows you to write each attribute in an MQTT message payload into a separate DynamoDB column.
*/
@JvmName("faxdlvnagppacjyf")
public suspend fun dynamoDBv2(`value`: Output) {
this.dynamoDBv2 = value
}
/**
* @param value Write to a DynamoDB table.
*/
@JvmName("hstkvumrtfwqphdg")
public suspend fun dynamoDb(`value`: Output) {
this.dynamoDb = value
}
/**
* @param value Write data to an Amazon OpenSearch Service domain.
* > The `Elasticsearch` action can only be used by existing rule actions. To create a new rule action or to update an existing rule action, use the `OpenSearch` rule action instead. For more information, see [OpenSearchAction](https://docs.aws.amazon.com//iot/latest/apireference/API_OpenSearchAction.html) .
*/
@JvmName("kqmcfrsxbklrryou")
public suspend fun elasticsearch(`value`: Output) {
this.elasticsearch = value
}
/**
* @param value Write to an Amazon Kinesis Firehose stream.
*/
@JvmName("qfegtpiuxpmqotai")
public suspend fun firehose(`value`: Output) {
this.firehose = value
}
/**
* @param value Send data to an HTTPS endpoint.
*/
@JvmName("avnosyxujhopnfkj")
public suspend fun http(`value`: Output) {
this.http = value
}
/**
* @param value Sends message data to an AWS IoT Analytics channel.
*/
@JvmName("neorfpdyhhhbmpxa")
public suspend fun iotAnalytics(`value`: Output) {
this.iotAnalytics = value
}
/**
* @param value Sends an input to an AWS IoT Events detector.
*/
@JvmName("yaybcduddecckkns")
public suspend fun iotEvents(`value`: Output) {
this.iotEvents = value
}
/**
* @param value Sends data from the MQTT message that triggered the rule to AWS IoT SiteWise asset properties.
*/
@JvmName("ecrwffvhvbtxyuyk")
public suspend fun iotSiteWise(`value`: Output) {
this.iotSiteWise = value
}
/**
* @param value Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.
*/
@JvmName("igjydxytegqmmuyt")
public suspend fun kafka(`value`: Output) {
this.kafka = value
}
/**
* @param value Write data to an Amazon Kinesis stream.
*/
@JvmName("egkjhudqfstwtecg")
public suspend fun kinesis(`value`: Output) {
this.kinesis = value
}
/**
* @param value Invoke a Lambda function.
*/
@JvmName("mxwymjchefcmgyqu")
public suspend fun lambda(`value`: Output) {
this.lambda = value
}
/**
* @param value Sends device location data to [Amazon Location Service](https://docs.aws.amazon.com//location/latest/developerguide/welcome.html) .
*/
@JvmName("ewdairashtpvghym")
public suspend fun location(`value`: Output) {
this.location = value
}
/**
* @param value Write data to an Amazon OpenSearch Service domain.
*/
@JvmName("bhjrfnbnbcxxirmh")
public suspend fun openSearch(`value`: Output) {
this.openSearch = value
}
/**
* @param value Publish to another MQTT topic.
*/
@JvmName("jarlyiqawijaacfk")
public suspend fun republish(`value`: Output) {
this.republish = value
}
/**
* @param value Write to an Amazon S3 bucket.
*/
@JvmName("jcxqfncugoweemhf")
public suspend fun s3(`value`: Output) {
this.s3 = value
}
/**
* @param value Publish to an Amazon SNS topic.
*/
@JvmName("chekrfoibksuqrws")
public suspend fun sns(`value`: Output) {
this.sns = value
}
/**
* @param value Publish to an Amazon SQS queue.
*/
@JvmName("gjxpmkkvnqbtypos")
public suspend fun sqs(`value`: Output) {
this.sqs = value
}
/**
* @param value Starts execution of a Step Functions state machine.
*/
@JvmName("jejxieqtllbdbtse")
public suspend fun stepFunctions(`value`: Output) {
this.stepFunctions = value
}
/**
* @param value Writes attributes from an MQTT message.
*/
@JvmName("israhqhrqjhbjfkp")
public suspend fun timestream(`value`: Output) {
this.timestream = value
}
/**
* @param value Change the state of a CloudWatch alarm.
*/
@JvmName("qpsvkflyukwofuyd")
public suspend fun cloudwatchAlarm(`value`: TopicRuleCloudwatchAlarmActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.cloudwatchAlarm = mapped
}
/**
* @param argument Change the state of a CloudWatch alarm.
*/
@JvmName("girlgbkcrnnmeydy")
public suspend fun cloudwatchAlarm(argument: suspend TopicRuleCloudwatchAlarmActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleCloudwatchAlarmActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.cloudwatchAlarm = mapped
}
/**
* @param value Sends data to CloudWatch.
*/
@JvmName("lvlvdcjopetemqvo")
public suspend fun cloudwatchLogs(`value`: TopicRuleCloudwatchLogsActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.cloudwatchLogs = mapped
}
/**
* @param argument Sends data to CloudWatch.
*/
@JvmName("vlgdjtupelibwivw")
public suspend fun cloudwatchLogs(argument: suspend TopicRuleCloudwatchLogsActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleCloudwatchLogsActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.cloudwatchLogs = mapped
}
/**
* @param value Capture a CloudWatch metric.
*/
@JvmName("kofbdfbenjhjgkpx")
public suspend fun cloudwatchMetric(`value`: TopicRuleCloudwatchMetricActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.cloudwatchMetric = mapped
}
/**
* @param argument Capture a CloudWatch metric.
*/
@JvmName("edenucoksehakqrl")
public suspend fun cloudwatchMetric(argument: suspend TopicRuleCloudwatchMetricActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleCloudwatchMetricActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.cloudwatchMetric = mapped
}
/**
* @param value Write to a DynamoDB table. This is a new version of the DynamoDB action. It allows you to write each attribute in an MQTT message payload into a separate DynamoDB column.
*/
@JvmName("bbgwgognlqhpgvgd")
public suspend fun dynamoDBv2(`value`: TopicRuleDynamoDBv2ActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.dynamoDBv2 = mapped
}
/**
* @param argument Write to a DynamoDB table. This is a new version of the DynamoDB action. It allows you to write each attribute in an MQTT message payload into a separate DynamoDB column.
*/
@JvmName("wemtehvcxtiilrwp")
public suspend fun dynamoDBv2(argument: suspend TopicRuleDynamoDBv2ActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleDynamoDBv2ActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.dynamoDBv2 = mapped
}
/**
* @param value Write to a DynamoDB table.
*/
@JvmName("rklyatsuujmprkod")
public suspend fun dynamoDb(`value`: TopicRuleDynamoDbActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.dynamoDb = mapped
}
/**
* @param argument Write to a DynamoDB table.
*/
@JvmName("gxptqgrbdkpynjog")
public suspend fun dynamoDb(argument: suspend TopicRuleDynamoDbActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleDynamoDbActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.dynamoDb = mapped
}
/**
* @param value Write data to an Amazon OpenSearch Service domain.
* > The `Elasticsearch` action can only be used by existing rule actions. To create a new rule action or to update an existing rule action, use the `OpenSearch` rule action instead. For more information, see [OpenSearchAction](https://docs.aws.amazon.com//iot/latest/apireference/API_OpenSearchAction.html) .
*/
@JvmName("updbfhygnyfdpsij")
public suspend fun elasticsearch(`value`: TopicRuleElasticsearchActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.elasticsearch = mapped
}
/**
* @param argument Write data to an Amazon OpenSearch Service domain.
* > The `Elasticsearch` action can only be used by existing rule actions. To create a new rule action or to update an existing rule action, use the `OpenSearch` rule action instead. For more information, see [OpenSearchAction](https://docs.aws.amazon.com//iot/latest/apireference/API_OpenSearchAction.html) .
*/
@JvmName("wjtjngduprevrdva")
public suspend fun elasticsearch(argument: suspend TopicRuleElasticsearchActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleElasticsearchActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.elasticsearch = mapped
}
/**
* @param value Write to an Amazon Kinesis Firehose stream.
*/
@JvmName("lvigwvddhjlqjlmq")
public suspend fun firehose(`value`: TopicRuleFirehoseActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.firehose = mapped
}
/**
* @param argument Write to an Amazon Kinesis Firehose stream.
*/
@JvmName("xbylqxrgiavhxjjc")
public suspend fun firehose(argument: suspend TopicRuleFirehoseActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleFirehoseActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.firehose = mapped
}
/**
* @param value Send data to an HTTPS endpoint.
*/
@JvmName("olgnukhortaudyat")
public suspend fun http(`value`: TopicRuleHttpActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.http = mapped
}
/**
* @param argument Send data to an HTTPS endpoint.
*/
@JvmName("kumsuvhfisbswhgd")
public suspend fun http(argument: suspend TopicRuleHttpActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleHttpActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.http = mapped
}
/**
* @param value Sends message data to an AWS IoT Analytics channel.
*/
@JvmName("nirahwhqkrbfbwhg")
public suspend fun iotAnalytics(`value`: TopicRuleIotAnalyticsActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.iotAnalytics = mapped
}
/**
* @param argument Sends message data to an AWS IoT Analytics channel.
*/
@JvmName("rcbxacxgjigftpgu")
public suspend fun iotAnalytics(argument: suspend TopicRuleIotAnalyticsActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleIotAnalyticsActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.iotAnalytics = mapped
}
/**
* @param value Sends an input to an AWS IoT Events detector.
*/
@JvmName("hjkhcnsvvwhgmahn")
public suspend fun iotEvents(`value`: TopicRuleIotEventsActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.iotEvents = mapped
}
/**
* @param argument Sends an input to an AWS IoT Events detector.
*/
@JvmName("eqrikgrkujypgxgx")
public suspend fun iotEvents(argument: suspend TopicRuleIotEventsActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleIotEventsActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.iotEvents = mapped
}
/**
* @param value Sends data from the MQTT message that triggered the rule to AWS IoT SiteWise asset properties.
*/
@JvmName("obokonwoybdfipiu")
public suspend fun iotSiteWise(`value`: TopicRuleIotSiteWiseActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.iotSiteWise = mapped
}
/**
* @param argument Sends data from the MQTT message that triggered the rule to AWS IoT SiteWise asset properties.
*/
@JvmName("wlmauufulnjbpgrc")
public suspend fun iotSiteWise(argument: suspend TopicRuleIotSiteWiseActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleIotSiteWiseActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.iotSiteWise = mapped
}
/**
* @param value Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.
*/
@JvmName("cwtkogndbcyirglc")
public suspend fun kafka(`value`: TopicRuleKafkaActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.kafka = mapped
}
/**
* @param argument Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.
*/
@JvmName("ciysxemiyroibxqa")
public suspend fun kafka(argument: suspend TopicRuleKafkaActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleKafkaActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.kafka = mapped
}
/**
* @param value Write data to an Amazon Kinesis stream.
*/
@JvmName("oeyosxnfsmnpadfp")
public suspend fun kinesis(`value`: TopicRuleKinesisActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.kinesis = mapped
}
/**
* @param argument Write data to an Amazon Kinesis stream.
*/
@JvmName("uqmnjyduuwqminbh")
public suspend fun kinesis(argument: suspend TopicRuleKinesisActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleKinesisActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.kinesis = mapped
}
/**
* @param value Invoke a Lambda function.
*/
@JvmName("hyvjerjsfdckryum")
public suspend fun lambda(`value`: TopicRuleLambdaActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.lambda = mapped
}
/**
* @param argument Invoke a Lambda function.
*/
@JvmName("wfclyxqonbcypuey")
public suspend fun lambda(argument: suspend TopicRuleLambdaActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleLambdaActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.lambda = mapped
}
/**
* @param value Sends device location data to [Amazon Location Service](https://docs.aws.amazon.com//location/latest/developerguide/welcome.html) .
*/
@JvmName("ewptvntriiqmugcg")
public suspend fun location(`value`: TopicRuleLocationActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.location = mapped
}
/**
* @param argument Sends device location data to [Amazon Location Service](https://docs.aws.amazon.com//location/latest/developerguide/welcome.html) .
*/
@JvmName("bicferuetsdqeawk")
public suspend fun location(argument: suspend TopicRuleLocationActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleLocationActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.location = mapped
}
/**
* @param value Write data to an Amazon OpenSearch Service domain.
*/
@JvmName("qeaagjcibnjfipet")
public suspend fun openSearch(`value`: TopicRuleOpenSearchActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.openSearch = mapped
}
/**
* @param argument Write data to an Amazon OpenSearch Service domain.
*/
@JvmName("stvdgktevpouckfh")
public suspend fun openSearch(argument: suspend TopicRuleOpenSearchActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleOpenSearchActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.openSearch = mapped
}
/**
* @param value Publish to another MQTT topic.
*/
@JvmName("gllkygfpfcbijlny")
public suspend fun republish(`value`: TopicRuleRepublishActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.republish = mapped
}
/**
* @param argument Publish to another MQTT topic.
*/
@JvmName("bmlekfpxovlgdrvv")
public suspend fun republish(argument: suspend TopicRuleRepublishActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleRepublishActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.republish = mapped
}
/**
* @param value Write to an Amazon S3 bucket.
*/
@JvmName("ntrxmbhtoemqirrl")
public suspend fun s3(`value`: TopicRuleS3ActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.s3 = mapped
}
/**
* @param argument Write to an Amazon S3 bucket.
*/
@JvmName("cnhdfydrvwnabpyr")
public suspend fun s3(argument: suspend TopicRuleS3ActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleS3ActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.s3 = mapped
}
/**
* @param value Publish to an Amazon SNS topic.
*/
@JvmName("qrdxmynfpurtpebf")
public suspend fun sns(`value`: TopicRuleSnsActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sns = mapped
}
/**
* @param argument Publish to an Amazon SNS topic.
*/
@JvmName("lvlqvgfekdehiylp")
public suspend fun sns(argument: suspend TopicRuleSnsActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleSnsActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.sns = mapped
}
/**
* @param value Publish to an Amazon SQS queue.
*/
@JvmName("xufkkvwqqthicysg")
public suspend fun sqs(`value`: TopicRuleSqsActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sqs = mapped
}
/**
* @param argument Publish to an Amazon SQS queue.
*/
@JvmName("wyiecumqpumhhexw")
public suspend fun sqs(argument: suspend TopicRuleSqsActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleSqsActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.sqs = mapped
}
/**
* @param value Starts execution of a Step Functions state machine.
*/
@JvmName("htbmgpxbqxudwlsg")
public suspend fun stepFunctions(`value`: TopicRuleStepFunctionsActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.stepFunctions = mapped
}
/**
* @param argument Starts execution of a Step Functions state machine.
*/
@JvmName("gatnxlyxvikqukrx")
public suspend fun stepFunctions(argument: suspend TopicRuleStepFunctionsActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleStepFunctionsActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.stepFunctions = mapped
}
/**
* @param value Writes attributes from an MQTT message.
*/
@JvmName("ftkmgyfjqriorwyo")
public suspend fun timestream(`value`: TopicRuleTimestreamActionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.timestream = mapped
}
/**
* @param argument Writes attributes from an MQTT message.
*/
@JvmName("jmmrhafvxyyjjgvv")
public suspend fun timestream(argument: suspend TopicRuleTimestreamActionArgsBuilder.() -> Unit) {
val toBeMapped = TopicRuleTimestreamActionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.timestream = mapped
}
internal fun build(): TopicRuleActionArgs = TopicRuleActionArgs(
cloudwatchAlarm = cloudwatchAlarm,
cloudwatchLogs = cloudwatchLogs,
cloudwatchMetric = cloudwatchMetric,
dynamoDBv2 = dynamoDBv2,
dynamoDb = dynamoDb,
elasticsearch = elasticsearch,
firehose = firehose,
http = http,
iotAnalytics = iotAnalytics,
iotEvents = iotEvents,
iotSiteWise = iotSiteWise,
kafka = kafka,
kinesis = kinesis,
lambda = lambda,
location = location,
openSearch = openSearch,
republish = republish,
s3 = s3,
sns = sns,
sqs = sqs,
stepFunctions = stepFunctions,
timestream = timestream,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy