Skip to content

Commit bfb90da

Browse files
Amazon SNS support for Amazon SQS fair queues
1 parent 79f7533 commit bfb90da

18 files changed

+570
-590
lines changed

generator/ServiceModels/sns/sns-2010-03-31.api.json

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -956,8 +956,7 @@
956956
},
957957
"CreateSMSSandboxPhoneNumberResult":{
958958
"type":"structure",
959-
"members":{
960-
}
959+
"members":{}
961960
},
962961
"CreateTopicInput":{
963962
"type":"structure",
@@ -1002,8 +1001,7 @@
10021001
},
10031002
"DeleteSMSSandboxPhoneNumberResult":{
10041003
"type":"structure",
1005-
"members":{
1006-
}
1004+
"members":{}
10071005
},
10081006
"DeleteTopicInput":{
10091007
"type":"structure",
@@ -1108,8 +1106,7 @@
11081106
},
11091107
"GetSMSSandboxAccountStatusInput":{
11101108
"type":"structure",
1111-
"members":{
1112-
}
1109+
"members":{}
11131110
},
11141111
"GetSMSSandboxAccountStatusResult":{
11151112
"type":"structure",
@@ -1521,8 +1518,7 @@
15211518
},
15221519
"OptInPhoneNumberResponse":{
15231520
"type":"structure",
1524-
"members":{
1525-
}
1521+
"members":{}
15261522
},
15271523
"OptedOutException":{
15281524
"type":"structure",
@@ -1759,8 +1755,7 @@
17591755
},
17601756
"SetSMSAttributesResponse":{
17611757
"type":"structure",
1762-
"members":{
1763-
}
1758+
"members":{}
17641759
},
17651760
"SetSubscriptionAttributesInput":{
17661761
"type":"structure",
@@ -1911,8 +1906,7 @@
19111906
},
19121907
"TagResourceResponse":{
19131908
"type":"structure",
1914-
"members":{
1915-
}
1909+
"members":{}
19161910
},
19171911
"TagValue":{
19181912
"type":"string",
@@ -1991,8 +1985,7 @@
19911985
},
19921986
"UntagResourceResponse":{
19931987
"type":"structure",
1994-
"members":{
1995-
}
1988+
"members":{}
19961989
},
19971990
"UserErrorException":{
19981991
"type":"structure",
@@ -2044,8 +2037,7 @@
20442037
},
20452038
"VerifySMSSandboxPhoneNumberResult":{
20462039
"type":"structure",
2047-
"members":{
2048-
}
2040+
"members":{}
20492041
},
20502042
"account":{"type":"string"},
20512043
"action":{"type":"string"},

generator/ServiceModels/sns/sns-2010-03-31.docs.json

Lines changed: 119 additions & 226 deletions
Large diffs are not rendered by default.
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
{
22
"version": "1.0",
3-
"examples": {
4-
}
3+
"examples": {}
54
}

generator/ServiceModels/sns/sns-2010-03-31.normal.json

Lines changed: 20 additions & 28 deletions
Large diffs are not rendered by default.

sdk/src/Services/SimpleNotificationService/Generated/Model/CreatePlatformApplicationRequest.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,9 @@ namespace Amazon.SimpleNotificationService.Model
7070
/// <para>
7171
/// For GCM (Firebase Cloud Messaging) using token credentials, there is no <c>PlatformPrincipal</c>.
7272
/// The <c>PlatformCredential</c> is a JSON formatted private key file. When using the
73-
/// Amazon Web Services CLI, the file must be in string format and special characters
74-
/// must be ignored. To format the file correctly, Amazon SNS recommends using the following
75-
/// command: <c>SERVICE_JSON=`jq @json &lt;&lt;&lt; cat service.json`</c>.
73+
/// Amazon Web Services CLI or Amazon Web Services SDKs, the file must be in string format
74+
/// and special characters must be ignored. To format the file correctly, Amazon SNS recommends
75+
/// using the following command: <c>SERVICE_JSON=$(jq @json &lt; service.json)</c>.
7676
/// </para>
7777
/// </li> <li>
7878
/// <para>

sdk/src/Services/SimpleNotificationService/Generated/Model/CreateTopicRequest.cs

Lines changed: 118 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -80,29 +80,135 @@ public CreateTopicRequest(string name)
8080
/// </para>
8181
/// </li> <li>
8282
/// <para>
83-
/// <c>FifoTopic</c> – Set to true to create a FIFO topic.
84-
/// </para>
85-
/// </li> <li>
86-
/// <para>
8783
/// <c>Policy</c> – The policy that defines who can access your topic. By default, only
8884
/// the topic owner can publish or subscribe to the topic.
8985
/// </para>
9086
/// </li> <li>
9187
/// <para>
92-
/// <c>SignatureVersion</c> – The signature version corresponds to the hashing algorithm
93-
/// used while creating the signature of the notifications, subscription confirmations,
94-
/// or unsubscribe confirmation messages sent by Amazon SNS. By default, <c>SignatureVersion</c>
95-
/// is set to <c>1</c>.
96-
/// </para>
97-
/// </li> <li>
98-
/// <para>
9988
/// <c>TracingConfig</c> – Tracing mode of an Amazon SNS topic. By default <c>TracingConfig</c>
10089
/// is set to <c>PassThrough</c>, and the topic passes through the tracing header it receives
10190
/// from an Amazon SNS publisher to its subscriptions. If set to <c>Active</c>, Amazon
10291
/// SNS will vend X-Ray segment data to topic owner account if the sampled flag in the
10392
/// tracing header is true. This is only supported on standard topics.
10493
/// </para>
105-
/// </li> </ul>
94+
/// </li> <li>
95+
/// <para>
96+
/// HTTP
97+
/// </para>
98+
/// <ul> <li>
99+
/// <para>
100+
/// <c>HTTPSuccessFeedbackRoleArn</c> – Indicates successful message delivery status
101+
/// for an Amazon SNS topic that is subscribed to an HTTP endpoint.
102+
/// </para>
103+
/// </li> <li>
104+
/// <para>
105+
/// <c>HTTPSuccessFeedbackSampleRate</c> – Indicates percentage of successful messages
106+
/// to sample for an Amazon SNS topic that is subscribed to an HTTP endpoint.
107+
/// </para>
108+
/// </li> <li>
109+
/// <para>
110+
/// <c>HTTPFailureFeedbackRoleArn</c> – Indicates failed message delivery status for
111+
/// an Amazon SNS topic that is subscribed to an HTTP endpoint.
112+
/// </para>
113+
/// </li> </ul> </li> <li>
114+
/// <para>
115+
/// Amazon Data Firehose
116+
/// </para>
117+
/// <ul> <li>
118+
/// <para>
119+
/// <c>FirehoseSuccessFeedbackRoleArn</c> – Indicates successful message delivery status
120+
/// for an Amazon SNS topic that is subscribed to an Amazon Data Firehose endpoint.
121+
/// </para>
122+
/// </li> <li>
123+
/// <para>
124+
/// <c>FirehoseSuccessFeedbackSampleRate</c> – Indicates percentage of successful messages
125+
/// to sample for an Amazon SNS topic that is subscribed to an Amazon Data Firehose endpoint.
126+
/// </para>
127+
/// </li> <li>
128+
/// <para>
129+
/// <c>FirehoseFailureFeedbackRoleArn</c> – Indicates failed message delivery status
130+
/// for an Amazon SNS topic that is subscribed to an Amazon Data Firehose endpoint.
131+
/// </para>
132+
/// </li> </ul> </li> <li>
133+
/// <para>
134+
/// Lambda
135+
/// </para>
136+
/// <ul> <li>
137+
/// <para>
138+
/// <c>LambdaSuccessFeedbackRoleArn</c> – Indicates successful message delivery status
139+
/// for an Amazon SNS topic that is subscribed to an Lambda endpoint.
140+
/// </para>
141+
/// </li> <li>
142+
/// <para>
143+
/// <c>LambdaSuccessFeedbackSampleRate</c> – Indicates percentage of successful messages
144+
/// to sample for an Amazon SNS topic that is subscribed to an Lambda endpoint.
145+
/// </para>
146+
/// </li> <li>
147+
/// <para>
148+
/// <c>LambdaFailureFeedbackRoleArn</c> – Indicates failed message delivery status for
149+
/// an Amazon SNS topic that is subscribed to an Lambda endpoint.
150+
/// </para>
151+
/// </li> </ul> </li> <li>
152+
/// <para>
153+
/// Platform application endpoint
154+
/// </para>
155+
/// <ul> <li>
156+
/// <para>
157+
/// <c>ApplicationSuccessFeedbackRoleArn</c> – Indicates successful message delivery
158+
/// status for an Amazon SNS topic that is subscribed to a platform application endpoint.
159+
/// </para>
160+
/// </li> <li>
161+
/// <para>
162+
/// <c>ApplicationSuccessFeedbackSampleRate</c> – Indicates percentage of successful
163+
/// messages to sample for an Amazon SNS topic that is subscribed to an platform application
164+
/// endpoint.
165+
/// </para>
166+
/// </li> <li>
167+
/// <para>
168+
/// <c>ApplicationFailureFeedbackRoleArn</c> – Indicates failed message delivery status
169+
/// for an Amazon SNS topic that is subscribed to an platform application endpoint.
170+
/// </para>
171+
/// </li> </ul> <note>
172+
/// <para>
173+
/// In addition to being able to configure topic attributes for message delivery status
174+
/// of notification messages sent to Amazon SNS application endpoints, you can also configure
175+
/// application attributes for the delivery status of push notification messages sent
176+
/// to push notification services.
177+
/// </para>
178+
///
179+
/// <para>
180+
/// For example, For more information, see <a href="https://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html">Using
181+
/// Amazon SNS Application Attributes for Message Delivery Status</a>.
182+
/// </para>
183+
/// </note> </li> <li>
184+
/// <para>
185+
/// Amazon SQS
186+
/// </para>
187+
/// <ul> <li>
188+
/// <para>
189+
/// <c>SQSSuccessFeedbackRoleArn</c> – Indicates successful message delivery status for
190+
/// an Amazon SNS topic that is subscribed to an Amazon SQS endpoint.
191+
/// </para>
192+
/// </li> <li>
193+
/// <para>
194+
/// <c>SQSSuccessFeedbackSampleRate</c> – Indicates percentage of successful messages
195+
/// to sample for an Amazon SNS topic that is subscribed to an Amazon SQS endpoint.
196+
/// </para>
197+
/// </li> <li>
198+
/// <para>
199+
/// <c>SQSFailureFeedbackRoleArn</c> – Indicates failed message delivery status for an
200+
/// Amazon SNS topic that is subscribed to an Amazon SQS endpoint.
201+
/// </para>
202+
/// </li> </ul> </li> </ul> <note>
203+
/// <para>
204+
/// The &lt;ENDPOINT&gt;SuccessFeedbackRoleArn and &lt;ENDPOINT&gt;FailureFeedbackRoleArn
205+
/// attributes are used to give Amazon SNS write access to use CloudWatch Logs on your
206+
/// behalf. The &lt;ENDPOINT&gt;SuccessFeedbackSampleRate attribute is for specifying
207+
/// the sample rate percentage (0-100) of successfully delivered messages. After you configure
208+
/// the &lt;ENDPOINT&gt;FailureFeedbackRoleArn attribute, then all failed message deliveries
209+
/// generate CloudWatch Logs.
210+
/// </para>
211+
/// </note>
106212
/// <para>
107213
/// The following attribute applies only to <a href="https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html">server-side
108214
/// encryption</a>:

sdk/src/Services/SimpleNotificationService/Generated/Model/FilterPolicyLimitExceededException.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ namespace Amazon.SimpleNotificationService.Model
3232
/// <summary>
3333
/// Indicates that the number of filter polices in your Amazon Web Services account exceeds
3434
/// the limit. To add more filter polices, submit an Amazon SNS Limit Increase case in
35-
/// the Amazon Web Services Support Center.
35+
/// the Amazon Web ServicesSupport Center.
3636
/// </summary>
3737
#if !NETSTANDARD
3838
[Serializable]

sdk/src/Services/SimpleNotificationService/Generated/Model/PublishBatchRequest.cs

Lines changed: 23 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -31,37 +31,49 @@ namespace Amazon.SimpleNotificationService.Model
3131
{
3232
/// <summary>
3333
/// Container for the parameters to the PublishBatch operation.
34-
/// Publishes up to ten messages to the specified topic. This is a batch version of <c>Publish</c>.
34+
/// Publishes up to 10 messages to the specified topic in a single batch. This is a batch
35+
/// version of the <c>Publish</c> API. If you try to send more than 10 messages in a single
36+
/// batch request, you will receive a <c>TooManyEntriesInBatchRequest</c> exception.
37+
///
38+
///
39+
/// <para>
3540
/// For FIFO topics, multiple messages within a single batch are published in the order
3641
/// they are sent, and messages are deduplicated within the batch and across batches for
37-
/// 5 minutes.
38-
///
42+
/// five minutes.
43+
/// </para>
3944
///
4045
/// <para>
4146
/// The result of publishing each message is reported individually in the response. Because
4247
/// the batch request can result in a combination of successful and unsuccessful actions,
4348
/// you should check for batch errors even when the call returns an HTTP status code of
44-
/// <c>200</c>.
49+
/// 200.
4550
/// </para>
4651
///
4752
/// <para>
4853
/// The maximum allowed individual message size and the maximum total payload size (the
4954
/// sum of the individual lengths of all of the batched messages) are both 256 KB (262,144
50-
/// bytes).
55+
/// bytes).
5156
/// </para>
52-
///
57+
/// <important>
58+
/// <para>
59+
/// The <c>PublishBatch</c> API can send up to 10 messages at a time. If you attempt to
60+
/// send more than 10 messages in one request, you will encounter a <c>TooManyEntriesInBatchRequest</c>
61+
/// exception. In such cases, split your messages into multiple requests, each containing
62+
/// no more than 10 messages.
63+
/// </para>
64+
/// </important>
5365
/// <para>
5466
/// Some actions take lists of parameters. These lists are specified using the <c>param.n</c>
55-
/// notation. Values of <c>n</c> are integers starting from 1. For example, a parameter
56-
/// list with two elements looks like this:
67+
/// notation. Values of <c>n</c> are integers starting from <b>1</b>. For example, a parameter
68+
/// list with two elements looks like this:
5769
/// </para>
5870
///
5971
/// <para>
60-
/// &amp;AttributeName.1=first
72+
/// <c>&amp;AttributeName.1=first</c>
6173
/// </para>
6274
///
6375
/// <para>
64-
/// &amp;AttributeName.2=second
76+
/// <c>&amp;AttributeName.2=second</c>
6577
/// </para>
6678
///
6779
/// <para>
@@ -71,7 +83,7 @@ namespace Amazon.SimpleNotificationService.Model
7183
/// </para>
7284
///
7385
/// <para>
74-
/// When a <c>messageId</c> is returned, the batch message is saved and Amazon SNS immediately
86+
/// When a <c>messageId</c> is returned, the batch message is saved, and Amazon SNS immediately
7587
/// delivers the message to subscribers.
7688
/// </para>
7789
/// </summary>

sdk/src/Services/SimpleNotificationService/Generated/Model/PublishBatchRequestEntry.cs

Lines changed: 13 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -216,21 +216,21 @@ internal bool IsSetMessageDeduplicationId()
216216
/// <summary>
217217
/// Gets and sets the property MessageGroupId.
218218
/// <para>
219-
/// This parameter applies only to FIFO (first-in-first-out) topics.
220-
/// </para>
221-
///
222-
/// <para>
223-
/// The tag that specifies that a message belongs to a specific message group. Messages
224-
/// that belong to the same message group are processed in a FIFO manner (however, messages
225-
/// in different message groups might be processed out of order). To interleave multiple
226-
/// ordered streams within a single topic, use <c>MessageGroupId</c> values (for example,
227-
/// session data for multiple users). In this scenario, multiple consumers can process
228-
/// the topic, but the session data of each user is processed in a FIFO fashion.
219+
/// FIFO topics: The tag that specifies that a message belongs to a specific message group.
220+
/// Messages that belong to the same message group are processed in a FIFO manner (however,
221+
/// messages in different message groups might be processed out of order). To interleave
222+
/// multiple ordered streams within a single topic, use <c>MessageGroupId</c> values (for
223+
/// example, session data for multiple users). In this scenario, multiple consumers can
224+
/// process the topic, but the session data of each user is processed in a FIFO fashion.
225+
/// You must associate a non-empty <c>MessageGroupId</c> with a message. If you do not
226+
/// provide a <c>MessageGroupId</c>, the action fails.
229227
/// </para>
230228
///
231229
/// <para>
232-
/// You must associate a non-empty <c>MessageGroupId</c> with a message. If you don't
233-
/// provide a <c>MessageGroupId</c>, the action fails.
230+
/// Standard topics: The <c>MessageGroupId</c> is optional and is forwarded only to Amazon
231+
/// SQS standard subscriptions to activate <a href="https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-fair-queues.html">fair
232+
/// queues</a>. The <c>MessageGroupId</c> is not used for, or sent to, any other endpoint
233+
/// types.
234234
/// </para>
235235
///
236236
/// <para>
@@ -241,12 +241,6 @@ internal bool IsSetMessageDeduplicationId()
241241
/// <c>MessageGroupId</c> can contain alphanumeric characters <c>(a-z, A-Z, 0-9)</c>
242242
/// and punctuation <c>(!"#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^_`{|}~)</c>.
243243
/// </para>
244-
/// <important>
245-
/// <para>
246-
/// <c>MessageGroupId</c> is required for FIFO topics. You can't use it for standard
247-
/// topics.
248-
/// </para>
249-
/// </important>
250244
/// </summary>
251245
public string MessageGroupId
252246
{
@@ -280,7 +274,7 @@ internal bool IsSetMessageGroupId()
280274
/// </li> </ul>
281275
/// <para>
282276
/// You can define other top-level keys that define the message you want to send to a
283-
/// specific transport protocol (e.g. http).
277+
/// specific transport protocol (for example, http).
284278
/// </para>
285279
/// </summary>
286280
public string MessageStructure

0 commit comments

Comments
 (0)