@Stability(value=Stable) public static final class SnsPublish.Builder extends Object implements software.amazon.jsii.Builder<SnsPublish>
SnsPublish
.Modifier and Type | Method and Description |
---|---|
SnsPublish |
build() |
SnsPublish.Builder |
comment(String comment)
An optional description for this state.
|
static SnsPublish.Builder |
create(software.constructs.Construct scope,
String id) |
SnsPublish.Builder |
heartbeat(Duration heartbeat)
Timeout for the heartbeat.
|
SnsPublish.Builder |
inputPath(String inputPath)
JSONPath expression to select part of the state to be the input to this state.
|
SnsPublish.Builder |
integrationPattern(IntegrationPattern integrationPattern)
AWS Step Functions integrates with services directly in the Amazon States Language.
|
SnsPublish.Builder |
message(TaskInput message)
The message you want to send.
|
SnsPublish.Builder |
messageAttributes(Map<String,? extends MessageAttribute> messageAttributes)
Add message attributes when publishing.
|
SnsPublish.Builder |
messagePerSubscriptionType(Boolean messagePerSubscriptionType)
Send different messages for each transport protocol.
|
SnsPublish.Builder |
outputPath(String outputPath)
JSONPath expression to select select a portion of the state output to pass to the next state.
|
SnsPublish.Builder |
resultPath(String resultPath)
JSONPath expression to indicate where to inject the state's output.
|
SnsPublish.Builder |
resultSelector(Map<String,? extends Object> resultSelector)
The JSON that will replace the state's raw result and become the effective result before ResultPath is applied.
|
SnsPublish.Builder |
subject(String subject)
Used as the "Subject" line when the message is delivered to email endpoints.
|
SnsPublish.Builder |
timeout(Duration timeout)
Timeout for the state machine.
|
SnsPublish.Builder |
topic(ITopic topic)
The SNS topic that the task will publish to.
|
@Stability(value=Stable) public static SnsPublish.Builder create(software.constructs.Construct scope, String id)
scope
- This parameter is required.id
- This parameter is required.SnsPublish.Builder
.@Stability(value=Stable) public SnsPublish.Builder comment(String comment)
Default: - No comment
comment
- An optional description for this state. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder heartbeat(Duration heartbeat)
Default: - None
heartbeat
- Timeout for the heartbeat. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder inputPath(String inputPath)
May also be the special value JsonPath.DISCARD, which will cause the effective input to be the empty object {}.
Default: - The entire task input (JSON path '$')
inputPath
- JSONPath expression to select part of the state to be the input to this state. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder integrationPattern(IntegrationPattern integrationPattern)
You can control these AWS services using service integration patterns
Default: - `IntegrationPattern.REQUEST_RESPONSE` for most tasks. `IntegrationPattern.RUN_JOB` for the following exceptions: `BatchSubmitJob`, `EmrAddStep`, `EmrCreateCluster`, `EmrTerminationCluster`, and `EmrContainersStartJobRun`.
integrationPattern
- AWS Step Functions integrates with services directly in the Amazon States Language. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder outputPath(String outputPath)
May also be the special value JsonPath.DISCARD, which will cause the effective output to be the empty object {}.
Default: - The entire JSON node determined by the state input, the task result, and resultPath is passed to the next state (JSON path '$')
outputPath
- JSONPath expression to select select a portion of the state output to pass to the next state. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder resultPath(String resultPath)
May also be the special value JsonPath.DISCARD, which will cause the state's input to become its output.
Default: - Replaces the entire input with the result (JSON path '$')
resultPath
- JSONPath expression to indicate where to inject the state's output. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder resultSelector(Map<String,? extends Object> resultSelector)
You can use ResultSelector to create a payload with values that are static or selected from the state's raw result.
Default: - None
resultSelector
- The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder timeout(Duration timeout)
Default: - None
timeout
- Timeout for the state machine. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder message(TaskInput message)
With the exception of SMS, messages must be UTF-8 encoded strings and at most 256 KB in size. For SMS, each message can contain up to 140 characters.
message
- The message you want to send. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder topic(ITopic topic)
topic
- The SNS topic that the task will publish to. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder messageAttributes(Map<String,? extends MessageAttribute> messageAttributes)
These attributes carry additional metadata about the message and may be used for subscription filters.
Default: {}
messageAttributes
- Add message attributes when publishing. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder messagePerSubscriptionType(Boolean messagePerSubscriptionType)
For example, you might want to send a shorter message to SMS subscribers and a more verbose message to email and SQS subscribers.
Your message must be a JSON object with a top-level JSON key of "default" with a value that is a string You can define other top-level keys that define the message you want to send to a specific transport protocol (i.e. "sqs", "email", "http", etc)
Default: false
messagePerSubscriptionType
- Send different messages for each transport protocol. This parameter is required.this
@Stability(value=Stable) public SnsPublish.Builder subject(String subject)
This field will also be included, if present, in the standard JSON messages delivered to other endpoints.
Default: - No subject
subject
- Used as the "Subject" line when the message is delivered to email endpoints. This parameter is required.this
@Stability(value=Stable) public SnsPublish build()
build
in interface software.amazon.jsii.Builder<SnsPublish>
Copyright © 2023. All rights reserved.