Class: AWSCDK::SES::CfnMailManagerRuleSet::SNSActionProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::SES::CfnMailManagerRuleSet::SNSActionProperty
- Defined in:
- ses/cfn_mail_manager_rule_set.rb
Overview
The action to publish the email content to an Amazon SNS topic.
When executed, this action will send the email as a notification to the specified SNS topic.
Instance Attribute Summary collapse
-
#action_failure_policy ⇒ String?
readonly
A policy that states what to do in the case of failure.
-
#encoding ⇒ String?
readonly
The encoding to use for the email within the Amazon SNS notification.
-
#payload_type ⇒ String?
readonly
The expected payload type within the Amazon SNS notification.
-
#role_arn ⇒ String
readonly
The Amazon Resource Name (ARN) of the IAM Role to use while writing to Amazon SNS.
-
#topic_arn ⇒ String
readonly
The Amazon Resource Name (ARN) of the Amazon SNS Topic to which notification for the email received will be published.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(role_arn:, topic_arn:, action_failure_policy: nil, encoding: nil, payload_type: nil) ⇒ SNSActionProperty
constructor
A new instance of SNSActionProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(role_arn:, topic_arn:, action_failure_policy: nil, encoding: nil, payload_type: nil) ⇒ SNSActionProperty
Returns a new instance of SNSActionProperty.
2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 |
# File 'ses/cfn_mail_manager_rule_set.rb', line 2071 def initialize(role_arn:, topic_arn:, action_failure_policy: nil, encoding: nil, payload_type: nil) @role_arn = role_arn Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") @topic_arn = topic_arn Jsii::Type.check_type(@topic_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "topicArn") @action_failure_policy = action_failure_policy Jsii::Type.check_type(@action_failure_policy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "actionFailurePolicy") unless @action_failure_policy.nil? @encoding = encoding Jsii::Type.check_type(@encoding, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "encoding") unless @encoding.nil? @payload_type = payload_type Jsii::Type.check_type(@payload_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "payloadType") unless @payload_type.nil? end |
Instance Attribute Details
#action_failure_policy ⇒ String? (readonly)
A policy that states what to do in the case of failure.
The action will fail if there are configuration errors. For example, specified SNS topic has been deleted or the role lacks necessary permissions to call the sns:Publish API.
2102 2103 2104 |
# File 'ses/cfn_mail_manager_rule_set.rb', line 2102 def action_failure_policy @action_failure_policy end |
#encoding ⇒ String? (readonly)
The encoding to use for the email within the Amazon SNS notification.
The default value is UTF-8 . Use BASE64 if you need to preserve all special characters, especially when the original message uses a different encoding format.
2109 2110 2111 |
# File 'ses/cfn_mail_manager_rule_set.rb', line 2109 def encoding @encoding end |
#payload_type ⇒ String? (readonly)
The expected payload type within the Amazon SNS notification.
CONTENT attempts to publish the full email content with 20KB of headers content. HEADERS extracts up to 100KB of header content to include in the notification, email content will not be included to the notification. The default value is CONTENT .
2116 2117 2118 |
# File 'ses/cfn_mail_manager_rule_set.rb', line 2116 def payload_type @payload_type end |
#role_arn ⇒ String (readonly)
The Amazon Resource Name (ARN) of the IAM Role to use while writing to Amazon SNS.
This role must have access to the sns:Publish API for the given topic.
2090 2091 2092 |
# File 'ses/cfn_mail_manager_rule_set.rb', line 2090 def role_arn @role_arn end |
#topic_arn ⇒ String (readonly)
The Amazon Resource Name (ARN) of the Amazon SNS Topic to which notification for the email received will be published.
2095 2096 2097 |
# File 'ses/cfn_mail_manager_rule_set.rb', line 2095 def topic_arn @topic_arn end |
Class Method Details
.jsii_properties ⇒ Object
2118 2119 2120 2121 2122 2123 2124 2125 2126 |
# File 'ses/cfn_mail_manager_rule_set.rb', line 2118 def self.jsii_properties { :role_arn => "roleArn", :topic_arn => "topicArn", :action_failure_policy => "actionFailurePolicy", :encoding => "encoding", :payload_type => "payloadType", } end |
Instance Method Details
#to_jsii ⇒ Object
2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 |
# File 'ses/cfn_mail_manager_rule_set.rb', line 2128 def to_jsii result = {} result.merge!({ "roleArn" => @role_arn, "topicArn" => @topic_arn, "actionFailurePolicy" => @action_failure_policy, "encoding" => @encoding, "payloadType" => @payload_type, }) result.compact end |