Class: AWSCDK::SNSSubscriptions::EmailSubscriptionProps
- Inherits:
-
SubscriptionProps
- Object
- SubscriptionProps
- AWSCDK::SNSSubscriptions::EmailSubscriptionProps
- Defined in:
- sns_subscriptions/email_subscription_props.rb
Overview
Options for email subscriptions.
Instance Attribute Summary collapse
-
#dead_letter_queue ⇒ AWSCDK::SQS::IQueue?
readonly
Queue to be used as dead letter queue.
-
#filter_policy ⇒ Hash{String => AWSCDK::SNS::SubscriptionFilter}?
readonly
The filter policy.
-
#filter_policy_with_message_body ⇒ Hash{String => AWSCDK::SNS::FilterOrPolicy}?
readonly
The filter policy that is applied on the message body.
-
#json ⇒ Boolean?
readonly
Indicates if the full notification JSON should be sent to the email address or just the message text.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(dead_letter_queue: nil, filter_policy: nil, filter_policy_with_message_body: nil, json: nil) ⇒ EmailSubscriptionProps
constructor
A new instance of EmailSubscriptionProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(dead_letter_queue: nil, filter_policy: nil, filter_policy_with_message_body: nil, json: nil) ⇒ EmailSubscriptionProps
Returns a new instance of EmailSubscriptionProps.
11 12 13 14 15 16 17 18 19 20 |
# File 'sns_subscriptions/email_subscription_props.rb', line 11 def initialize(dead_letter_queue: nil, filter_policy: nil, filter_policy_with_message_body: nil, json: nil) @dead_letter_queue = dead_letter_queue Jsii::Type.check_type(@dead_letter_queue, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3FzLklRdWV1ZSJ9")), "deadLetterQueue") unless @dead_letter_queue.nil? @filter_policy = filter_policy Jsii::Type.check_type(@filter_policy, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zbnMuU3Vic2NyaXB0aW9uRmlsdGVyIn0sImtpbmQiOiJtYXAifX0=")), "filterPolicy") unless @filter_policy.nil? @filter_policy_with_message_body = Jsii::Type.check_type(@filter_policy_with_message_body, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zbnMuRmlsdGVyT3JQb2xpY3kifSwia2luZCI6Im1hcCJ9fQ==")), "filterPolicyWithMessageBody") unless @filter_policy_with_message_body.nil? @json = json Jsii::Type.check_type(@json, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "json") unless @json.nil? end |
Instance Attribute Details
#dead_letter_queue ⇒ AWSCDK::SQS::IQueue? (readonly)
Default: - No dead letter queue enabled.
Queue to be used as dead letter queue.
If not passed no dead letter queue is enabled.
28 29 30 |
# File 'sns_subscriptions/email_subscription_props.rb', line 28 def dead_letter_queue @dead_letter_queue end |
#filter_policy ⇒ Hash{String => AWSCDK::SNS::SubscriptionFilter}? (readonly)
Default: - all messages are delivered
The filter policy.
33 34 35 |
# File 'sns_subscriptions/email_subscription_props.rb', line 33 def filter_policy @filter_policy end |
#filter_policy_with_message_body ⇒ Hash{String => AWSCDK::SNS::FilterOrPolicy}? (readonly)
Default: - all messages are delivered
The filter policy that is applied on the message body.
To apply a filter policy to the message attributes, use filter_policy. A maximum of one of filter_policy_with_message_body and filter_policy may be used.
40 41 42 |
# File 'sns_subscriptions/email_subscription_props.rb', line 40 def @filter_policy_with_message_body end |
#json ⇒ Boolean? (readonly)
Default: false (Message text)
Indicates if the full notification JSON should be sent to the email address or just the message text.
45 46 47 |
# File 'sns_subscriptions/email_subscription_props.rb', line 45 def json @json end |
Class Method Details
.jsii_properties ⇒ Object
47 48 49 50 51 52 53 54 |
# File 'sns_subscriptions/email_subscription_props.rb', line 47 def self.jsii_properties { :dead_letter_queue => "deadLetterQueue", :filter_policy => "filterPolicy", :filter_policy_with_message_body => "filterPolicyWithMessageBody", :json => "json", } end |
Instance Method Details
#to_jsii ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 |
# File 'sns_subscriptions/email_subscription_props.rb', line 56 def to_jsii result = {} result.merge!(super) result.merge!({ "deadLetterQueue" => @dead_letter_queue, "filterPolicy" => @filter_policy, "filterPolicyWithMessageBody" => @filter_policy_with_message_body, "json" => @json, }) result.compact end |