Package com.pulumi.aws.iot
Class TopicRule
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.iot.TopicRule
-
public class TopicRule extends com.pulumi.resources.CustomResource
## Example Usage ```java package generated_program; import java.util.*; import java.io.*; import java.nio.*; import com.pulumi.*; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var mytopic = new Topic("mytopic"); var myerrortopic = new Topic("myerrortopic"); var role = new Role("role", RoleArgs.builder() .assumeRolePolicy(""" { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } """) .build()); var rule = new TopicRule("rule", TopicRuleArgs.builder() .description("Example rule") .enabled(true) .sql("SELECT * FROM 'topic/test'") .sqlVersion("2016-03-23") .sns(TopicRuleSnsArgs.builder() .messageFormat("RAW") .roleArn(role.arn()) .targetArn(mytopic.arn()) .build()) .errorAction(TopicRuleErrorActionArgs.builder() .sns(TopicRuleErrorActionSnsArgs.builder() .messageFormat("RAW") .roleArn(role.arn()) .targetArn(myerrortopic.arn()) .build()) .build()) .build()); var iamPolicyForLambda = new RolePolicy("iamPolicyForLambda", RolePolicyArgs.builder() .role(role.id()) .policy(mytopic.arn().apply(arn -> """ { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sns:Publish" ], "Resource": "%s" } ] } ", arn))) .build()); } } ``` ## Import IoT Topic Rules can be imported using the `name`, e.g., ```sh $ pulumi import aws:iot/topicRule:TopicRule rule <name> ```
-
-
Constructor Summary
Constructors Constructor Description TopicRule(java.lang.String name)
TopicRule(java.lang.String name, TopicRuleArgs args)
TopicRule(java.lang.String name, TopicRuleArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<java.lang.String>
arn()
com.pulumi.core.Output<java.util.Optional<TopicRuleCloudwatchAlarm>>
cloudwatchAlarm()
com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleCloudwatchLog>>>
cloudwatchLogs()
com.pulumi.core.Output<java.util.Optional<TopicRuleCloudwatchMetric>>
cloudwatchMetric()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
description()
com.pulumi.core.Output<java.util.Optional<TopicRuleDynamodb>>
dynamodb()
com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleDynamodbv2>>>
dynamodbv2s()
com.pulumi.core.Output<java.util.Optional<TopicRuleElasticsearch>>
elasticsearch()
com.pulumi.core.Output<java.lang.Boolean>
enabled()
com.pulumi.core.Output<java.util.Optional<TopicRuleErrorAction>>
errorAction()
com.pulumi.core.Output<java.util.Optional<TopicRuleFirehose>>
firehose()
static TopicRule
get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, TopicRuleState state, com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleHttp>>>
https()
com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleIotAnalytic>>>
iotAnalytics()
com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleIotEvent>>>
iotEvents()
com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleKafka>>>
kafkas()
com.pulumi.core.Output<java.util.Optional<TopicRuleKinesis>>
kinesis()
com.pulumi.core.Output<java.util.Optional<TopicRuleLambda>>
lambda()
com.pulumi.core.Output<java.lang.String>
name()
com.pulumi.core.Output<java.util.Optional<TopicRuleRepublish>>
republish()
com.pulumi.core.Output<java.util.Optional<TopicRuleS3>>
s3()
com.pulumi.core.Output<java.util.Optional<TopicRuleSns>>
sns()
com.pulumi.core.Output<java.lang.String>
sql()
com.pulumi.core.Output<java.lang.String>
sqlVersion()
com.pulumi.core.Output<java.util.Optional<TopicRuleSqs>>
sqs()
com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleStepFunction>>>
stepFunctions()
com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>>
tags()
com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>>
tagsAll()
com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleTimestream>>>
timestreams()
-
-
-
Constructor Detail
-
TopicRule
public TopicRule(java.lang.String name)
- Parameters:
name
- The _unique_ name of the resulting resource.
-
TopicRule
public TopicRule(java.lang.String name, TopicRuleArgs args)
- Parameters:
name
- The _unique_ name of the resulting resource.args
- The arguments to use to populate this resource's properties.
-
TopicRule
public TopicRule(java.lang.String name, TopicRuleArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options)
- Parameters:
name
- The _unique_ name of the resulting resource.args
- The arguments to use to populate this resource's properties.options
- A bag of options that control this resource's behavior.
-
-
Method Detail
-
arn
public com.pulumi.core.Output<java.lang.String> arn()
- Returns:
- The ARN of the topic rule
-
cloudwatchAlarm
public com.pulumi.core.Output<java.util.Optional<TopicRuleCloudwatchAlarm>> cloudwatchAlarm()
-
cloudwatchLogs
public com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleCloudwatchLog>>> cloudwatchLogs()
-
cloudwatchMetric
public com.pulumi.core.Output<java.util.Optional<TopicRuleCloudwatchMetric>> cloudwatchMetric()
-
description
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()
- Returns:
- The description of the rule.
-
dynamodb
public com.pulumi.core.Output<java.util.Optional<TopicRuleDynamodb>> dynamodb()
-
dynamodbv2s
public com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleDynamodbv2>>> dynamodbv2s()
-
elasticsearch
public com.pulumi.core.Output<java.util.Optional<TopicRuleElasticsearch>> elasticsearch()
-
enabled
public com.pulumi.core.Output<java.lang.Boolean> enabled()
- Returns:
- Specifies whether the rule is enabled.
-
errorAction
public com.pulumi.core.Output<java.util.Optional<TopicRuleErrorAction>> errorAction()
- Returns:
- Configuration block with error action to be associated with the rule. See the documentation for `cloudwatch_alarm`, `cloudwatch_logs`, `cloudwatch_metric`, `dynamodb`, `dynamodbv2`, `elasticsearch`, `firehose`, `http`, `iot_analytics`, `iot_events`, `kafka`, `kinesis`, `lambda`, `republish`, `s3`, `sns`, `sqs`, `step_functions`, `timestream` configuration blocks for further configuration details.
-
firehose
public com.pulumi.core.Output<java.util.Optional<TopicRuleFirehose>> firehose()
-
https
public com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleHttp>>> https()
-
iotAnalytics
public com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleIotAnalytic>>> iotAnalytics()
-
iotEvents
public com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleIotEvent>>> iotEvents()
-
kafkas
public com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleKafka>>> kafkas()
-
kinesis
public com.pulumi.core.Output<java.util.Optional<TopicRuleKinesis>> kinesis()
-
lambda
public com.pulumi.core.Output<java.util.Optional<TopicRuleLambda>> lambda()
-
name
public com.pulumi.core.Output<java.lang.String> name()
- Returns:
- The name of the rule.
-
republish
public com.pulumi.core.Output<java.util.Optional<TopicRuleRepublish>> republish()
-
s3
public com.pulumi.core.Output<java.util.Optional<TopicRuleS3>> s3()
-
sns
public com.pulumi.core.Output<java.util.Optional<TopicRuleSns>> sns()
-
sql
public com.pulumi.core.Output<java.lang.String> sql()
- Returns:
- The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) in the AWS IoT Developer Guide.
-
sqlVersion
public com.pulumi.core.Output<java.lang.String> sqlVersion()
- Returns:
- The version of the SQL rules engine to use when evaluating the rule.
-
sqs
public com.pulumi.core.Output<java.util.Optional<TopicRuleSqs>> sqs()
-
stepFunctions
public com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleStepFunction>>> stepFunctions()
-
tags
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> tags()
- Returns:
- Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
-
tagsAll
public com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tagsAll()
- Returns:
- A map of tags assigned to the resource, including those inherited from the provider .
-
timestreams
public com.pulumi.core.Output<java.util.Optional<java.util.List<TopicRuleTimestream>>> timestreams()
-
get
public static TopicRule get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable TopicRuleState state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name
- The _unique_ name of the resulting resource.id
- The _unique_ provider ID of the resource to lookup.state
-options
- Optional settings to control the behavior of the CustomResource.
-
-