aws-sdk-sns 1.42.0 → 1.77.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +182 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-sns/client.rb +684 -180
- data/lib/aws-sdk-sns/client_api.rb +173 -28
- data/lib/aws-sdk-sns/endpoint_parameters.rb +66 -0
- data/lib/aws-sdk-sns/endpoint_provider.rb +60 -0
- data/lib/aws-sdk-sns/endpoints.rb +604 -0
- data/lib/aws-sdk-sns/errors.rb +112 -0
- data/lib/aws-sdk-sns/message_verifier.rb +32 -5
- data/lib/aws-sdk-sns/platform_application.rb +76 -13
- data/lib/aws-sdk-sns/platform_endpoint.rb +18 -11
- data/lib/aws-sdk-sns/plugins/endpoints.rb +154 -0
- data/lib/aws-sdk-sns/resource.rb +49 -10
- data/lib/aws-sdk-sns/subscription.rb +39 -18
- data/lib/aws-sdk-sns/topic.rb +220 -41
- data/lib/aws-sdk-sns/types.rb +793 -479
- data/lib/aws-sdk-sns.rb +5 -1
- data/sig/client.rbs +525 -0
- data/sig/errors.rbs +119 -0
- data/sig/platform_application.rbs +64 -0
- data/sig/platform_endpoint.rbs +68 -0
- data/sig/resource.rbs +128 -0
- data/sig/subscription.rbs +52 -0
- data/sig/topic.rbs +104 -0
- data/sig/types.rbs +664 -0
- data/sig/waiters.rbs +13 -0
- metadata +22 -9
@@ -16,11 +16,15 @@ module Aws::SNS
|
|
16
16
|
ActionsList = Shapes::ListShape.new(name: 'ActionsList')
|
17
17
|
AddPermissionInput = Shapes::StructureShape.new(name: 'AddPermissionInput')
|
18
18
|
AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
|
19
|
-
AuthorizationErrorException = Shapes::StructureShape.new(name: 'AuthorizationErrorException')
|
19
|
+
AuthorizationErrorException = Shapes::StructureShape.new(name: 'AuthorizationErrorException', error: {"code"=>"AuthorizationError", "httpStatusCode"=>403, "senderFault"=>true})
|
20
|
+
BatchEntryIdsNotDistinctException = Shapes::StructureShape.new(name: 'BatchEntryIdsNotDistinctException', error: {"code"=>"BatchEntryIdsNotDistinct", "httpStatusCode"=>400, "senderFault"=>true})
|
21
|
+
BatchRequestTooLongException = Shapes::StructureShape.new(name: 'BatchRequestTooLongException', error: {"code"=>"BatchRequestTooLong", "httpStatusCode"=>400, "senderFault"=>true})
|
22
|
+
BatchResultErrorEntry = Shapes::StructureShape.new(name: 'BatchResultErrorEntry')
|
23
|
+
BatchResultErrorEntryList = Shapes::ListShape.new(name: 'BatchResultErrorEntryList')
|
20
24
|
Binary = Shapes::BlobShape.new(name: 'Binary')
|
21
25
|
CheckIfPhoneNumberIsOptedOutInput = Shapes::StructureShape.new(name: 'CheckIfPhoneNumberIsOptedOutInput')
|
22
26
|
CheckIfPhoneNumberIsOptedOutResponse = Shapes::StructureShape.new(name: 'CheckIfPhoneNumberIsOptedOutResponse')
|
23
|
-
ConcurrentAccessException = Shapes::StructureShape.new(name: 'ConcurrentAccessException')
|
27
|
+
ConcurrentAccessException = Shapes::StructureShape.new(name: 'ConcurrentAccessException', error: {"code"=>"ConcurrentAccess", "httpStatusCode"=>400, "senderFault"=>true})
|
24
28
|
ConfirmSubscriptionInput = Shapes::StructureShape.new(name: 'ConfirmSubscriptionInput')
|
25
29
|
ConfirmSubscriptionResponse = Shapes::StructureShape.new(name: 'ConfirmSubscriptionResponse')
|
26
30
|
CreateEndpointResponse = Shapes::StructureShape.new(name: 'CreateEndpointResponse')
|
@@ -37,9 +41,12 @@ module Aws::SNS
|
|
37
41
|
DeleteSMSSandboxPhoneNumberInput = Shapes::StructureShape.new(name: 'DeleteSMSSandboxPhoneNumberInput')
|
38
42
|
DeleteSMSSandboxPhoneNumberResult = Shapes::StructureShape.new(name: 'DeleteSMSSandboxPhoneNumberResult')
|
39
43
|
DeleteTopicInput = Shapes::StructureShape.new(name: 'DeleteTopicInput')
|
44
|
+
EmptyBatchRequestException = Shapes::StructureShape.new(name: 'EmptyBatchRequestException', error: {"code"=>"EmptyBatchRequest", "httpStatusCode"=>400, "senderFault"=>true})
|
40
45
|
Endpoint = Shapes::StructureShape.new(name: 'Endpoint')
|
41
|
-
EndpointDisabledException = Shapes::StructureShape.new(name: 'EndpointDisabledException')
|
42
|
-
FilterPolicyLimitExceededException = Shapes::StructureShape.new(name: 'FilterPolicyLimitExceededException')
|
46
|
+
EndpointDisabledException = Shapes::StructureShape.new(name: 'EndpointDisabledException', error: {"code"=>"EndpointDisabled", "httpStatusCode"=>400, "senderFault"=>true})
|
47
|
+
FilterPolicyLimitExceededException = Shapes::StructureShape.new(name: 'FilterPolicyLimitExceededException', error: {"code"=>"FilterPolicyLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
|
48
|
+
GetDataProtectionPolicyInput = Shapes::StructureShape.new(name: 'GetDataProtectionPolicyInput')
|
49
|
+
GetDataProtectionPolicyResponse = Shapes::StructureShape.new(name: 'GetDataProtectionPolicyResponse')
|
43
50
|
GetEndpointAttributesInput = Shapes::StructureShape.new(name: 'GetEndpointAttributesInput')
|
44
51
|
GetEndpointAttributesResponse = Shapes::StructureShape.new(name: 'GetEndpointAttributesResponse')
|
45
52
|
GetPlatformApplicationAttributesInput = Shapes::StructureShape.new(name: 'GetPlatformApplicationAttributesInput')
|
@@ -52,17 +59,19 @@ module Aws::SNS
|
|
52
59
|
GetSubscriptionAttributesResponse = Shapes::StructureShape.new(name: 'GetSubscriptionAttributesResponse')
|
53
60
|
GetTopicAttributesInput = Shapes::StructureShape.new(name: 'GetTopicAttributesInput')
|
54
61
|
GetTopicAttributesResponse = Shapes::StructureShape.new(name: 'GetTopicAttributesResponse')
|
55
|
-
InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException')
|
56
|
-
|
57
|
-
|
58
|
-
|
62
|
+
InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException', error: {"code"=>"InternalError", "httpStatusCode"=>500})
|
63
|
+
InvalidBatchEntryIdException = Shapes::StructureShape.new(name: 'InvalidBatchEntryIdException', error: {"code"=>"InvalidBatchEntryId", "httpStatusCode"=>400, "senderFault"=>true})
|
64
|
+
InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException', error: {"code"=>"InvalidParameter", "httpStatusCode"=>400, "senderFault"=>true})
|
65
|
+
InvalidParameterValueException = Shapes::StructureShape.new(name: 'InvalidParameterValueException', error: {"code"=>"ParameterValueInvalid", "httpStatusCode"=>400, "senderFault"=>true})
|
66
|
+
InvalidSecurityException = Shapes::StructureShape.new(name: 'InvalidSecurityException', error: {"code"=>"InvalidSecurity", "httpStatusCode"=>403, "senderFault"=>true})
|
67
|
+
InvalidStateException = Shapes::StructureShape.new(name: 'InvalidStateException', error: {"code"=>"InvalidState", "httpStatusCode"=>400, "senderFault"=>true})
|
59
68
|
Iso2CountryCode = Shapes::StringShape.new(name: 'Iso2CountryCode')
|
60
|
-
KMSAccessDeniedException = Shapes::StructureShape.new(name: 'KMSAccessDeniedException')
|
61
|
-
KMSDisabledException = Shapes::StructureShape.new(name: 'KMSDisabledException')
|
62
|
-
KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException')
|
63
|
-
KMSNotFoundException = Shapes::StructureShape.new(name: 'KMSNotFoundException')
|
64
|
-
KMSOptInRequired = Shapes::StructureShape.new(name: 'KMSOptInRequired')
|
65
|
-
KMSThrottlingException = Shapes::StructureShape.new(name: 'KMSThrottlingException')
|
69
|
+
KMSAccessDeniedException = Shapes::StructureShape.new(name: 'KMSAccessDeniedException', error: {"code"=>"KMSAccessDenied", "httpStatusCode"=>400, "senderFault"=>true})
|
70
|
+
KMSDisabledException = Shapes::StructureShape.new(name: 'KMSDisabledException', error: {"code"=>"KMSDisabled", "httpStatusCode"=>400, "senderFault"=>true})
|
71
|
+
KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException', error: {"code"=>"KMSInvalidState", "httpStatusCode"=>400, "senderFault"=>true})
|
72
|
+
KMSNotFoundException = Shapes::StructureShape.new(name: 'KMSNotFoundException', error: {"code"=>"KMSNotFound", "httpStatusCode"=>400, "senderFault"=>true})
|
73
|
+
KMSOptInRequired = Shapes::StructureShape.new(name: 'KMSOptInRequired', error: {"code"=>"KMSOptInRequired", "httpStatusCode"=>403, "senderFault"=>true})
|
74
|
+
KMSThrottlingException = Shapes::StructureShape.new(name: 'KMSThrottlingException', error: {"code"=>"KMSThrottling", "httpStatusCode"=>400, "senderFault"=>true})
|
66
75
|
LanguageCodeString = Shapes::StringShape.new(name: 'LanguageCodeString')
|
67
76
|
ListEndpointsByPlatformApplicationInput = Shapes::StructureShape.new(name: 'ListEndpointsByPlatformApplicationInput')
|
68
77
|
ListEndpointsByPlatformApplicationResponse = Shapes::StructureShape.new(name: 'ListEndpointsByPlatformApplicationResponse')
|
@@ -90,24 +99,32 @@ module Aws::SNS
|
|
90
99
|
MaxItemsListOriginationNumbers = Shapes::IntegerShape.new(name: 'MaxItemsListOriginationNumbers')
|
91
100
|
MessageAttributeMap = Shapes::MapShape.new(name: 'MessageAttributeMap')
|
92
101
|
MessageAttributeValue = Shapes::StructureShape.new(name: 'MessageAttributeValue')
|
93
|
-
NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
|
102
|
+
NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException', error: {"code"=>"NotFound", "httpStatusCode"=>404, "senderFault"=>true})
|
94
103
|
NumberCapability = Shapes::StringShape.new(name: 'NumberCapability')
|
95
104
|
NumberCapabilityList = Shapes::ListShape.new(name: 'NumberCapabilityList')
|
96
105
|
OTPCode = Shapes::StringShape.new(name: 'OTPCode')
|
97
106
|
OptInPhoneNumberInput = Shapes::StructureShape.new(name: 'OptInPhoneNumberInput')
|
98
107
|
OptInPhoneNumberResponse = Shapes::StructureShape.new(name: 'OptInPhoneNumberResponse')
|
99
|
-
OptedOutException = Shapes::StructureShape.new(name: 'OptedOutException')
|
108
|
+
OptedOutException = Shapes::StructureShape.new(name: 'OptedOutException', error: {"code"=>"OptedOut", "httpStatusCode"=>400, "senderFault"=>true})
|
100
109
|
PhoneNumber = Shapes::StringShape.new(name: 'PhoneNumber')
|
101
110
|
PhoneNumberInformation = Shapes::StructureShape.new(name: 'PhoneNumberInformation')
|
102
111
|
PhoneNumberInformationList = Shapes::ListShape.new(name: 'PhoneNumberInformationList')
|
103
112
|
PhoneNumberList = Shapes::ListShape.new(name: 'PhoneNumberList')
|
104
113
|
PhoneNumberString = Shapes::StringShape.new(name: 'PhoneNumberString')
|
105
114
|
PlatformApplication = Shapes::StructureShape.new(name: 'PlatformApplication')
|
106
|
-
PlatformApplicationDisabledException = Shapes::StructureShape.new(name: 'PlatformApplicationDisabledException')
|
115
|
+
PlatformApplicationDisabledException = Shapes::StructureShape.new(name: 'PlatformApplicationDisabledException', error: {"code"=>"PlatformApplicationDisabled", "httpStatusCode"=>400, "senderFault"=>true})
|
116
|
+
PublishBatchInput = Shapes::StructureShape.new(name: 'PublishBatchInput')
|
117
|
+
PublishBatchRequestEntry = Shapes::StructureShape.new(name: 'PublishBatchRequestEntry')
|
118
|
+
PublishBatchRequestEntryList = Shapes::ListShape.new(name: 'PublishBatchRequestEntryList')
|
119
|
+
PublishBatchResponse = Shapes::StructureShape.new(name: 'PublishBatchResponse')
|
120
|
+
PublishBatchResultEntry = Shapes::StructureShape.new(name: 'PublishBatchResultEntry')
|
121
|
+
PublishBatchResultEntryList = Shapes::ListShape.new(name: 'PublishBatchResultEntryList')
|
107
122
|
PublishInput = Shapes::StructureShape.new(name: 'PublishInput')
|
108
123
|
PublishResponse = Shapes::StructureShape.new(name: 'PublishResponse')
|
124
|
+
PutDataProtectionPolicyInput = Shapes::StructureShape.new(name: 'PutDataProtectionPolicyInput')
|
109
125
|
RemovePermissionInput = Shapes::StructureShape.new(name: 'RemovePermissionInput')
|
110
|
-
|
126
|
+
ReplayLimitExceededException = Shapes::StructureShape.new(name: 'ReplayLimitExceededException', error: {"code"=>"ReplayLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
|
127
|
+
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException', error: {"code"=>"ResourceNotFound", "httpStatusCode"=>404, "senderFault"=>true})
|
111
128
|
RouteType = Shapes::StringShape.new(name: 'RouteType')
|
112
129
|
SMSSandboxPhoneNumber = Shapes::StructureShape.new(name: 'SMSSandboxPhoneNumber')
|
113
130
|
SMSSandboxPhoneNumberList = Shapes::ListShape.new(name: 'SMSSandboxPhoneNumberList')
|
@@ -118,34 +135,35 @@ module Aws::SNS
|
|
118
135
|
SetSMSAttributesResponse = Shapes::StructureShape.new(name: 'SetSMSAttributesResponse')
|
119
136
|
SetSubscriptionAttributesInput = Shapes::StructureShape.new(name: 'SetSubscriptionAttributesInput')
|
120
137
|
SetTopicAttributesInput = Shapes::StructureShape.new(name: 'SetTopicAttributesInput')
|
121
|
-
StaleTagException = Shapes::StructureShape.new(name: 'StaleTagException')
|
138
|
+
StaleTagException = Shapes::StructureShape.new(name: 'StaleTagException', error: {"code"=>"StaleTag", "httpStatusCode"=>400, "senderFault"=>true})
|
122
139
|
String = Shapes::StringShape.new(name: 'String')
|
123
140
|
SubscribeInput = Shapes::StructureShape.new(name: 'SubscribeInput')
|
124
141
|
SubscribeResponse = Shapes::StructureShape.new(name: 'SubscribeResponse')
|
125
142
|
Subscription = Shapes::StructureShape.new(name: 'Subscription')
|
126
143
|
SubscriptionAttributesMap = Shapes::MapShape.new(name: 'SubscriptionAttributesMap')
|
127
|
-
SubscriptionLimitExceededException = Shapes::StructureShape.new(name: 'SubscriptionLimitExceededException')
|
144
|
+
SubscriptionLimitExceededException = Shapes::StructureShape.new(name: 'SubscriptionLimitExceededException', error: {"code"=>"SubscriptionLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
|
128
145
|
SubscriptionsList = Shapes::ListShape.new(name: 'SubscriptionsList')
|
129
146
|
Tag = Shapes::StructureShape.new(name: 'Tag')
|
130
147
|
TagKey = Shapes::StringShape.new(name: 'TagKey')
|
131
148
|
TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
|
132
|
-
TagLimitExceededException = Shapes::StructureShape.new(name: 'TagLimitExceededException')
|
149
|
+
TagLimitExceededException = Shapes::StructureShape.new(name: 'TagLimitExceededException', error: {"code"=>"TagLimitExceeded", "httpStatusCode"=>400, "senderFault"=>true})
|
133
150
|
TagList = Shapes::ListShape.new(name: 'TagList')
|
134
|
-
TagPolicyException = Shapes::StructureShape.new(name: 'TagPolicyException')
|
151
|
+
TagPolicyException = Shapes::StructureShape.new(name: 'TagPolicyException', error: {"code"=>"TagPolicy", "httpStatusCode"=>400, "senderFault"=>true})
|
135
152
|
TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
|
136
153
|
TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
|
137
154
|
TagValue = Shapes::StringShape.new(name: 'TagValue')
|
138
|
-
ThrottledException = Shapes::StructureShape.new(name: 'ThrottledException')
|
155
|
+
ThrottledException = Shapes::StructureShape.new(name: 'ThrottledException', error: {"code"=>"Throttled", "httpStatusCode"=>429, "senderFault"=>true})
|
139
156
|
Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
|
157
|
+
TooManyEntriesInBatchRequestException = Shapes::StructureShape.new(name: 'TooManyEntriesInBatchRequestException', error: {"code"=>"TooManyEntriesInBatchRequest", "httpStatusCode"=>400, "senderFault"=>true})
|
140
158
|
Topic = Shapes::StructureShape.new(name: 'Topic')
|
141
159
|
TopicAttributesMap = Shapes::MapShape.new(name: 'TopicAttributesMap')
|
142
|
-
TopicLimitExceededException = Shapes::StructureShape.new(name: 'TopicLimitExceededException')
|
160
|
+
TopicLimitExceededException = Shapes::StructureShape.new(name: 'TopicLimitExceededException', error: {"code"=>"TopicLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
|
143
161
|
TopicsList = Shapes::ListShape.new(name: 'TopicsList')
|
144
162
|
UnsubscribeInput = Shapes::StructureShape.new(name: 'UnsubscribeInput')
|
145
163
|
UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
|
146
164
|
UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
|
147
|
-
UserErrorException = Shapes::StructureShape.new(name: 'UserErrorException')
|
148
|
-
ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
|
165
|
+
UserErrorException = Shapes::StructureShape.new(name: 'UserErrorException', error: {"code"=>"UserError", "httpStatusCode"=>400, "senderFault"=>true})
|
166
|
+
ValidationException = Shapes::StructureShape.new(name: 'ValidationException', error: {"code"=>"ValidationException", "httpStatusCode"=>400, "senderFault"=>true})
|
149
167
|
VerificationException = Shapes::StructureShape.new(name: 'VerificationException')
|
150
168
|
VerifySMSSandboxPhoneNumberInput = Shapes::StructureShape.new(name: 'VerifySMSSandboxPhoneNumberInput')
|
151
169
|
VerifySMSSandboxPhoneNumberResult = Shapes::StructureShape.new(name: 'VerifySMSSandboxPhoneNumberResult')
|
@@ -181,6 +199,20 @@ module Aws::SNS
|
|
181
199
|
AuthorizationErrorException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
182
200
|
AuthorizationErrorException.struct_class = Types::AuthorizationErrorException
|
183
201
|
|
202
|
+
BatchEntryIdsNotDistinctException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
203
|
+
BatchEntryIdsNotDistinctException.struct_class = Types::BatchEntryIdsNotDistinctException
|
204
|
+
|
205
|
+
BatchRequestTooLongException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
206
|
+
BatchRequestTooLongException.struct_class = Types::BatchRequestTooLongException
|
207
|
+
|
208
|
+
BatchResultErrorEntry.add_member(:id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Id"))
|
209
|
+
BatchResultErrorEntry.add_member(:code, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Code"))
|
210
|
+
BatchResultErrorEntry.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
|
211
|
+
BatchResultErrorEntry.add_member(:sender_fault, Shapes::ShapeRef.new(shape: boolean, required: true, location_name: "SenderFault"))
|
212
|
+
BatchResultErrorEntry.struct_class = Types::BatchResultErrorEntry
|
213
|
+
|
214
|
+
BatchResultErrorEntryList.member = Shapes::ShapeRef.new(shape: BatchResultErrorEntry)
|
215
|
+
|
184
216
|
CheckIfPhoneNumberIsOptedOutInput.add_member(:phone_number, Shapes::ShapeRef.new(shape: PhoneNumber, required: true, location_name: "phoneNumber"))
|
185
217
|
CheckIfPhoneNumberIsOptedOutInput.struct_class = Types::CheckIfPhoneNumberIsOptedOutInput
|
186
218
|
|
@@ -224,6 +256,7 @@ module Aws::SNS
|
|
224
256
|
CreateTopicInput.add_member(:name, Shapes::ShapeRef.new(shape: topicName, required: true, location_name: "Name"))
|
225
257
|
CreateTopicInput.add_member(:attributes, Shapes::ShapeRef.new(shape: TopicAttributesMap, location_name: "Attributes"))
|
226
258
|
CreateTopicInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
|
259
|
+
CreateTopicInput.add_member(:data_protection_policy, Shapes::ShapeRef.new(shape: attributeValue, location_name: "DataProtectionPolicy"))
|
227
260
|
CreateTopicInput.struct_class = Types::CreateTopicInput
|
228
261
|
|
229
262
|
CreateTopicResponse.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
|
@@ -245,6 +278,9 @@ module Aws::SNS
|
|
245
278
|
DeleteTopicInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "TopicArn"))
|
246
279
|
DeleteTopicInput.struct_class = Types::DeleteTopicInput
|
247
280
|
|
281
|
+
EmptyBatchRequestException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
282
|
+
EmptyBatchRequestException.struct_class = Types::EmptyBatchRequestException
|
283
|
+
|
248
284
|
Endpoint.add_member(:endpoint_arn, Shapes::ShapeRef.new(shape: String, location_name: "EndpointArn"))
|
249
285
|
Endpoint.add_member(:attributes, Shapes::ShapeRef.new(shape: MapStringToString, location_name: "Attributes"))
|
250
286
|
Endpoint.struct_class = Types::Endpoint
|
@@ -255,6 +291,12 @@ module Aws::SNS
|
|
255
291
|
FilterPolicyLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
256
292
|
FilterPolicyLimitExceededException.struct_class = Types::FilterPolicyLimitExceededException
|
257
293
|
|
294
|
+
GetDataProtectionPolicyInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "ResourceArn"))
|
295
|
+
GetDataProtectionPolicyInput.struct_class = Types::GetDataProtectionPolicyInput
|
296
|
+
|
297
|
+
GetDataProtectionPolicyResponse.add_member(:data_protection_policy, Shapes::ShapeRef.new(shape: attributeValue, location_name: "DataProtectionPolicy"))
|
298
|
+
GetDataProtectionPolicyResponse.struct_class = Types::GetDataProtectionPolicyResponse
|
299
|
+
|
258
300
|
GetEndpointAttributesInput.add_member(:endpoint_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "EndpointArn"))
|
259
301
|
GetEndpointAttributesInput.struct_class = Types::GetEndpointAttributesInput
|
260
302
|
|
@@ -293,6 +335,9 @@ module Aws::SNS
|
|
293
335
|
InternalErrorException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
294
336
|
InternalErrorException.struct_class = Types::InternalErrorException
|
295
337
|
|
338
|
+
InvalidBatchEntryIdException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
339
|
+
InvalidBatchEntryIdException.struct_class = Types::InvalidBatchEntryIdException
|
340
|
+
|
296
341
|
InvalidParameterException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
297
342
|
InvalidParameterException.struct_class = Types::InvalidParameterException
|
298
343
|
|
@@ -302,6 +347,9 @@ module Aws::SNS
|
|
302
347
|
InvalidSecurityException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
303
348
|
InvalidSecurityException.struct_class = Types::InvalidSecurityException
|
304
349
|
|
350
|
+
InvalidStateException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
351
|
+
InvalidStateException.struct_class = Types::InvalidStateException
|
352
|
+
|
305
353
|
KMSAccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
306
354
|
KMSAccessDeniedException.struct_class = Types::KMSAccessDeniedException
|
307
355
|
|
@@ -417,7 +465,7 @@ module Aws::SNS
|
|
417
465
|
OptedOutException.struct_class = Types::OptedOutException
|
418
466
|
|
419
467
|
PhoneNumberInformation.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedAt"))
|
420
|
-
PhoneNumberInformation.add_member(:phone_number, Shapes::ShapeRef.new(shape:
|
468
|
+
PhoneNumberInformation.add_member(:phone_number, Shapes::ShapeRef.new(shape: PhoneNumber, location_name: "PhoneNumber"))
|
421
469
|
PhoneNumberInformation.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "Status"))
|
422
470
|
PhoneNumberInformation.add_member(:iso_2_country_code, Shapes::ShapeRef.new(shape: Iso2CountryCode, location_name: "Iso2CountryCode"))
|
423
471
|
PhoneNumberInformation.add_member(:route_type, Shapes::ShapeRef.new(shape: RouteType, location_name: "RouteType"))
|
@@ -435,9 +483,35 @@ module Aws::SNS
|
|
435
483
|
PlatformApplicationDisabledException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
436
484
|
PlatformApplicationDisabledException.struct_class = Types::PlatformApplicationDisabledException
|
437
485
|
|
486
|
+
PublishBatchInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "TopicArn"))
|
487
|
+
PublishBatchInput.add_member(:publish_batch_request_entries, Shapes::ShapeRef.new(shape: PublishBatchRequestEntryList, required: true, location_name: "PublishBatchRequestEntries"))
|
488
|
+
PublishBatchInput.struct_class = Types::PublishBatchInput
|
489
|
+
|
490
|
+
PublishBatchRequestEntry.add_member(:id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Id"))
|
491
|
+
PublishBatchRequestEntry.add_member(:message, Shapes::ShapeRef.new(shape: message, required: true, location_name: "Message"))
|
492
|
+
PublishBatchRequestEntry.add_member(:subject, Shapes::ShapeRef.new(shape: subject, location_name: "Subject"))
|
493
|
+
PublishBatchRequestEntry.add_member(:message_structure, Shapes::ShapeRef.new(shape: messageStructure, location_name: "MessageStructure"))
|
494
|
+
PublishBatchRequestEntry.add_member(:message_attributes, Shapes::ShapeRef.new(shape: MessageAttributeMap, location_name: "MessageAttributes"))
|
495
|
+
PublishBatchRequestEntry.add_member(:message_deduplication_id, Shapes::ShapeRef.new(shape: String, location_name: "MessageDeduplicationId"))
|
496
|
+
PublishBatchRequestEntry.add_member(:message_group_id, Shapes::ShapeRef.new(shape: String, location_name: "MessageGroupId"))
|
497
|
+
PublishBatchRequestEntry.struct_class = Types::PublishBatchRequestEntry
|
498
|
+
|
499
|
+
PublishBatchRequestEntryList.member = Shapes::ShapeRef.new(shape: PublishBatchRequestEntry)
|
500
|
+
|
501
|
+
PublishBatchResponse.add_member(:successful, Shapes::ShapeRef.new(shape: PublishBatchResultEntryList, location_name: "Successful"))
|
502
|
+
PublishBatchResponse.add_member(:failed, Shapes::ShapeRef.new(shape: BatchResultErrorEntryList, location_name: "Failed"))
|
503
|
+
PublishBatchResponse.struct_class = Types::PublishBatchResponse
|
504
|
+
|
505
|
+
PublishBatchResultEntry.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "Id"))
|
506
|
+
PublishBatchResultEntry.add_member(:message_id, Shapes::ShapeRef.new(shape: messageId, location_name: "MessageId"))
|
507
|
+
PublishBatchResultEntry.add_member(:sequence_number, Shapes::ShapeRef.new(shape: String, location_name: "SequenceNumber"))
|
508
|
+
PublishBatchResultEntry.struct_class = Types::PublishBatchResultEntry
|
509
|
+
|
510
|
+
PublishBatchResultEntryList.member = Shapes::ShapeRef.new(shape: PublishBatchResultEntry)
|
511
|
+
|
438
512
|
PublishInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
|
439
513
|
PublishInput.add_member(:target_arn, Shapes::ShapeRef.new(shape: String, location_name: "TargetArn"))
|
440
|
-
PublishInput.add_member(:phone_number, Shapes::ShapeRef.new(shape:
|
514
|
+
PublishInput.add_member(:phone_number, Shapes::ShapeRef.new(shape: PhoneNumber, location_name: "PhoneNumber"))
|
441
515
|
PublishInput.add_member(:message, Shapes::ShapeRef.new(shape: message, required: true, location_name: "Message"))
|
442
516
|
PublishInput.add_member(:subject, Shapes::ShapeRef.new(shape: subject, location_name: "Subject"))
|
443
517
|
PublishInput.add_member(:message_structure, Shapes::ShapeRef.new(shape: messageStructure, location_name: "MessageStructure"))
|
@@ -450,10 +524,17 @@ module Aws::SNS
|
|
450
524
|
PublishResponse.add_member(:sequence_number, Shapes::ShapeRef.new(shape: String, location_name: "SequenceNumber"))
|
451
525
|
PublishResponse.struct_class = Types::PublishResponse
|
452
526
|
|
527
|
+
PutDataProtectionPolicyInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "ResourceArn"))
|
528
|
+
PutDataProtectionPolicyInput.add_member(:data_protection_policy, Shapes::ShapeRef.new(shape: attributeValue, required: true, location_name: "DataProtectionPolicy"))
|
529
|
+
PutDataProtectionPolicyInput.struct_class = Types::PutDataProtectionPolicyInput
|
530
|
+
|
453
531
|
RemovePermissionInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "TopicArn"))
|
454
532
|
RemovePermissionInput.add_member(:label, Shapes::ShapeRef.new(shape: label, required: true, location_name: "Label"))
|
455
533
|
RemovePermissionInput.struct_class = Types::RemovePermissionInput
|
456
534
|
|
535
|
+
ReplayLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
536
|
+
ReplayLimitExceededException.struct_class = Types::ReplayLimitExceededException
|
537
|
+
|
457
538
|
ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
458
539
|
ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
|
459
540
|
|
@@ -537,6 +618,9 @@ module Aws::SNS
|
|
537
618
|
ThrottledException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
538
619
|
ThrottledException.struct_class = Types::ThrottledException
|
539
620
|
|
621
|
+
TooManyEntriesInBatchRequestException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
|
622
|
+
TooManyEntriesInBatchRequestException.struct_class = Types::TooManyEntriesInBatchRequestException
|
623
|
+
|
540
624
|
Topic.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
|
541
625
|
Topic.struct_class = Types::Topic
|
542
626
|
|
@@ -581,8 +665,10 @@ module Aws::SNS
|
|
581
665
|
|
582
666
|
api.metadata = {
|
583
667
|
"apiVersion" => "2010-03-31",
|
668
|
+
"auth" => ["aws.auth#sigv4"],
|
584
669
|
"endpointPrefix" => "sns",
|
585
670
|
"protocol" => "query",
|
671
|
+
"protocols" => ["query"],
|
586
672
|
"serviceAbbreviation" => "Amazon SNS",
|
587
673
|
"serviceFullName" => "Amazon Simple Notification Service",
|
588
674
|
"serviceId" => "SNS",
|
@@ -627,6 +713,7 @@ module Aws::SNS
|
|
627
713
|
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
628
714
|
o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
|
629
715
|
o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
|
716
|
+
o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
|
630
717
|
end)
|
631
718
|
|
632
719
|
api.add_operation(:create_platform_application, Seahorse::Model::Operation.new.tap do |o|
|
@@ -726,6 +813,7 @@ module Aws::SNS
|
|
726
813
|
o.input = Shapes::ShapeRef.new(shape: DeleteTopicInput)
|
727
814
|
o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
|
728
815
|
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
816
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidStateException)
|
729
817
|
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
730
818
|
o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
|
731
819
|
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
@@ -734,6 +822,19 @@ module Aws::SNS
|
|
734
822
|
o.errors << Shapes::ShapeRef.new(shape: ConcurrentAccessException)
|
735
823
|
end)
|
736
824
|
|
825
|
+
api.add_operation(:get_data_protection_policy, Seahorse::Model::Operation.new.tap do |o|
|
826
|
+
o.name = "GetDataProtectionPolicy"
|
827
|
+
o.http_method = "POST"
|
828
|
+
o.http_request_uri = "/"
|
829
|
+
o.input = Shapes::ShapeRef.new(shape: GetDataProtectionPolicyInput)
|
830
|
+
o.output = Shapes::ShapeRef.new(shape: GetDataProtectionPolicyResponse)
|
831
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
832
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
833
|
+
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
834
|
+
o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
|
835
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
|
836
|
+
end)
|
837
|
+
|
737
838
|
api.add_operation(:get_endpoint_attributes, Seahorse::Model::Operation.new.tap do |o|
|
738
839
|
o.name = "GetEndpointAttributes"
|
739
840
|
o.http_method = "POST"
|
@@ -988,6 +1089,48 @@ module Aws::SNS
|
|
988
1089
|
o.errors << Shapes::ShapeRef.new(shape: KMSThrottlingException)
|
989
1090
|
o.errors << Shapes::ShapeRef.new(shape: KMSAccessDeniedException)
|
990
1091
|
o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
|
1092
|
+
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
1093
|
+
end)
|
1094
|
+
|
1095
|
+
api.add_operation(:publish_batch, Seahorse::Model::Operation.new.tap do |o|
|
1096
|
+
o.name = "PublishBatch"
|
1097
|
+
o.http_method = "POST"
|
1098
|
+
o.http_request_uri = "/"
|
1099
|
+
o.input = Shapes::ShapeRef.new(shape: PublishBatchInput)
|
1100
|
+
o.output = Shapes::ShapeRef.new(shape: PublishBatchResponse)
|
1101
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
1102
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
|
1103
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
1104
|
+
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
1105
|
+
o.errors << Shapes::ShapeRef.new(shape: EndpointDisabledException)
|
1106
|
+
o.errors << Shapes::ShapeRef.new(shape: PlatformApplicationDisabledException)
|
1107
|
+
o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
|
1108
|
+
o.errors << Shapes::ShapeRef.new(shape: BatchEntryIdsNotDistinctException)
|
1109
|
+
o.errors << Shapes::ShapeRef.new(shape: BatchRequestTooLongException)
|
1110
|
+
o.errors << Shapes::ShapeRef.new(shape: EmptyBatchRequestException)
|
1111
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidBatchEntryIdException)
|
1112
|
+
o.errors << Shapes::ShapeRef.new(shape: TooManyEntriesInBatchRequestException)
|
1113
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSDisabledException)
|
1114
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
|
1115
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSNotFoundException)
|
1116
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSOptInRequired)
|
1117
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSThrottlingException)
|
1118
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSAccessDeniedException)
|
1119
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
|
1120
|
+
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
1121
|
+
end)
|
1122
|
+
|
1123
|
+
api.add_operation(:put_data_protection_policy, Seahorse::Model::Operation.new.tap do |o|
|
1124
|
+
o.name = "PutDataProtectionPolicy"
|
1125
|
+
o.http_method = "POST"
|
1126
|
+
o.http_request_uri = "/"
|
1127
|
+
o.input = Shapes::ShapeRef.new(shape: PutDataProtectionPolicyInput)
|
1128
|
+
o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
|
1129
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
1130
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
1131
|
+
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
1132
|
+
o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
|
1133
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
|
991
1134
|
end)
|
992
1135
|
|
993
1136
|
api.add_operation(:remove_permission, Seahorse::Model::Operation.new.tap do |o|
|
@@ -1046,6 +1189,7 @@ module Aws::SNS
|
|
1046
1189
|
o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
|
1047
1190
|
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
1048
1191
|
o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
|
1192
|
+
o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
|
1049
1193
|
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
1050
1194
|
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
1051
1195
|
o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
|
@@ -1072,6 +1216,7 @@ module Aws::SNS
|
|
1072
1216
|
o.output = Shapes::ShapeRef.new(shape: SubscribeResponse)
|
1073
1217
|
o.errors << Shapes::ShapeRef.new(shape: SubscriptionLimitExceededException)
|
1074
1218
|
o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
|
1219
|
+
o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
|
1075
1220
|
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
1076
1221
|
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
1077
1222
|
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
@@ -0,0 +1,66 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# WARNING ABOUT GENERATED CODE
|
4
|
+
#
|
5
|
+
# This file is generated. See the contributing guide for more information:
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
|
+
#
|
8
|
+
# WARNING ABOUT GENERATED CODE
|
9
|
+
|
10
|
+
module Aws::SNS
|
11
|
+
# Endpoint parameters used to influence endpoints per request.
|
12
|
+
#
|
13
|
+
# @!attribute region
|
14
|
+
# The AWS region used to dispatch the request.
|
15
|
+
#
|
16
|
+
# @return [String]
|
17
|
+
#
|
18
|
+
# @!attribute use_dual_stack
|
19
|
+
# When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
|
20
|
+
#
|
21
|
+
# @return [Boolean]
|
22
|
+
#
|
23
|
+
# @!attribute use_fips
|
24
|
+
# When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
|
25
|
+
#
|
26
|
+
# @return [Boolean]
|
27
|
+
#
|
28
|
+
# @!attribute endpoint
|
29
|
+
# Override the endpoint used to send this request
|
30
|
+
#
|
31
|
+
# @return [String]
|
32
|
+
#
|
33
|
+
EndpointParameters = Struct.new(
|
34
|
+
:region,
|
35
|
+
:use_dual_stack,
|
36
|
+
:use_fips,
|
37
|
+
:endpoint,
|
38
|
+
) do
|
39
|
+
include Aws::Structure
|
40
|
+
|
41
|
+
# @api private
|
42
|
+
class << self
|
43
|
+
PARAM_MAP = {
|
44
|
+
'Region' => :region,
|
45
|
+
'UseDualStack' => :use_dual_stack,
|
46
|
+
'UseFIPS' => :use_fips,
|
47
|
+
'Endpoint' => :endpoint,
|
48
|
+
}.freeze
|
49
|
+
end
|
50
|
+
|
51
|
+
def initialize(options = {})
|
52
|
+
self[:region] = options[:region]
|
53
|
+
self[:use_dual_stack] = options[:use_dual_stack]
|
54
|
+
self[:use_dual_stack] = false if self[:use_dual_stack].nil?
|
55
|
+
if self[:use_dual_stack].nil?
|
56
|
+
raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
|
57
|
+
end
|
58
|
+
self[:use_fips] = options[:use_fips]
|
59
|
+
self[:use_fips] = false if self[:use_fips].nil?
|
60
|
+
if self[:use_fips].nil?
|
61
|
+
raise ArgumentError, "Missing required EndpointParameter: :use_fips"
|
62
|
+
end
|
63
|
+
self[:endpoint] = options[:endpoint]
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# WARNING ABOUT GENERATED CODE
|
4
|
+
#
|
5
|
+
# This file is generated. See the contributing guide for more information:
|
6
|
+
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
|
7
|
+
#
|
8
|
+
# WARNING ABOUT GENERATED CODE
|
9
|
+
|
10
|
+
module Aws::SNS
|
11
|
+
class EndpointProvider
|
12
|
+
def resolve_endpoint(parameters)
|
13
|
+
region = parameters.region
|
14
|
+
use_dual_stack = parameters.use_dual_stack
|
15
|
+
use_fips = parameters.use_fips
|
16
|
+
endpoint = parameters.endpoint
|
17
|
+
if Aws::Endpoints::Matchers.set?(endpoint)
|
18
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
19
|
+
raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
|
20
|
+
end
|
21
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
22
|
+
raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
|
23
|
+
end
|
24
|
+
return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
|
25
|
+
end
|
26
|
+
if Aws::Endpoints::Matchers.set?(region)
|
27
|
+
if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
|
28
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
29
|
+
if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
|
30
|
+
return Aws::Endpoints::Endpoint.new(url: "https://sns-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
|
31
|
+
end
|
32
|
+
raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
|
33
|
+
end
|
34
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
35
|
+
if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
|
36
|
+
if Aws::Endpoints::Matchers.string_equals?(region, "us-gov-east-1")
|
37
|
+
return Aws::Endpoints::Endpoint.new(url: "https://sns.us-gov-east-1.amazonaws.com", headers: {}, properties: {})
|
38
|
+
end
|
39
|
+
if Aws::Endpoints::Matchers.string_equals?(region, "us-gov-west-1")
|
40
|
+
return Aws::Endpoints::Endpoint.new(url: "https://sns.us-gov-west-1.amazonaws.com", headers: {}, properties: {})
|
41
|
+
end
|
42
|
+
return Aws::Endpoints::Endpoint.new(url: "https://sns-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
43
|
+
end
|
44
|
+
raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
|
45
|
+
end
|
46
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
47
|
+
if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
|
48
|
+
return Aws::Endpoints::Endpoint.new(url: "https://sns.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
|
49
|
+
end
|
50
|
+
raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
|
51
|
+
end
|
52
|
+
return Aws::Endpoints::Endpoint.new(url: "https://sns.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
53
|
+
end
|
54
|
+
end
|
55
|
+
raise ArgumentError, "Invalid Configuration: Missing Region"
|
56
|
+
raise ArgumentError, 'No endpoint could be resolved'
|
57
|
+
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|