aws-sdk-sns 1.60.0 → 1.96.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  module Aws::SNS
11
12
  # @api private
12
13
  module ClientApi
@@ -16,15 +17,15 @@ module Aws::SNS
16
17
  ActionsList = Shapes::ListShape.new(name: 'ActionsList')
17
18
  AddPermissionInput = Shapes::StructureShape.new(name: 'AddPermissionInput')
18
19
  AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
19
- AuthorizationErrorException = Shapes::StructureShape.new(name: 'AuthorizationErrorException')
20
- BatchEntryIdsNotDistinctException = Shapes::StructureShape.new(name: 'BatchEntryIdsNotDistinctException')
21
- BatchRequestTooLongException = Shapes::StructureShape.new(name: 'BatchRequestTooLongException')
20
+ AuthorizationErrorException = Shapes::StructureShape.new(name: 'AuthorizationErrorException', error: {"code"=>"AuthorizationError", "httpStatusCode"=>403, "senderFault"=>true})
21
+ BatchEntryIdsNotDistinctException = Shapes::StructureShape.new(name: 'BatchEntryIdsNotDistinctException', error: {"code"=>"BatchEntryIdsNotDistinct", "httpStatusCode"=>400, "senderFault"=>true})
22
+ BatchRequestTooLongException = Shapes::StructureShape.new(name: 'BatchRequestTooLongException', error: {"code"=>"BatchRequestTooLong", "httpStatusCode"=>400, "senderFault"=>true})
22
23
  BatchResultErrorEntry = Shapes::StructureShape.new(name: 'BatchResultErrorEntry')
23
24
  BatchResultErrorEntryList = Shapes::ListShape.new(name: 'BatchResultErrorEntryList')
24
25
  Binary = Shapes::BlobShape.new(name: 'Binary')
25
26
  CheckIfPhoneNumberIsOptedOutInput = Shapes::StructureShape.new(name: 'CheckIfPhoneNumberIsOptedOutInput')
26
27
  CheckIfPhoneNumberIsOptedOutResponse = Shapes::StructureShape.new(name: 'CheckIfPhoneNumberIsOptedOutResponse')
27
- ConcurrentAccessException = Shapes::StructureShape.new(name: 'ConcurrentAccessException')
28
+ ConcurrentAccessException = Shapes::StructureShape.new(name: 'ConcurrentAccessException', error: {"code"=>"ConcurrentAccess", "httpStatusCode"=>400, "senderFault"=>true})
28
29
  ConfirmSubscriptionInput = Shapes::StructureShape.new(name: 'ConfirmSubscriptionInput')
29
30
  ConfirmSubscriptionResponse = Shapes::StructureShape.new(name: 'ConfirmSubscriptionResponse')
30
31
  CreateEndpointResponse = Shapes::StructureShape.new(name: 'CreateEndpointResponse')
@@ -41,10 +42,10 @@ module Aws::SNS
41
42
  DeleteSMSSandboxPhoneNumberInput = Shapes::StructureShape.new(name: 'DeleteSMSSandboxPhoneNumberInput')
42
43
  DeleteSMSSandboxPhoneNumberResult = Shapes::StructureShape.new(name: 'DeleteSMSSandboxPhoneNumberResult')
43
44
  DeleteTopicInput = Shapes::StructureShape.new(name: 'DeleteTopicInput')
44
- EmptyBatchRequestException = Shapes::StructureShape.new(name: 'EmptyBatchRequestException')
45
+ EmptyBatchRequestException = Shapes::StructureShape.new(name: 'EmptyBatchRequestException', error: {"code"=>"EmptyBatchRequest", "httpStatusCode"=>400, "senderFault"=>true})
45
46
  Endpoint = Shapes::StructureShape.new(name: 'Endpoint')
46
- EndpointDisabledException = Shapes::StructureShape.new(name: 'EndpointDisabledException')
47
- FilterPolicyLimitExceededException = Shapes::StructureShape.new(name: 'FilterPolicyLimitExceededException')
47
+ EndpointDisabledException = Shapes::StructureShape.new(name: 'EndpointDisabledException', error: {"code"=>"EndpointDisabled", "httpStatusCode"=>400, "senderFault"=>true})
48
+ FilterPolicyLimitExceededException = Shapes::StructureShape.new(name: 'FilterPolicyLimitExceededException', error: {"code"=>"FilterPolicyLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
48
49
  GetDataProtectionPolicyInput = Shapes::StructureShape.new(name: 'GetDataProtectionPolicyInput')
49
50
  GetDataProtectionPolicyResponse = Shapes::StructureShape.new(name: 'GetDataProtectionPolicyResponse')
50
51
  GetEndpointAttributesInput = Shapes::StructureShape.new(name: 'GetEndpointAttributesInput')
@@ -59,18 +60,19 @@ module Aws::SNS
59
60
  GetSubscriptionAttributesResponse = Shapes::StructureShape.new(name: 'GetSubscriptionAttributesResponse')
60
61
  GetTopicAttributesInput = Shapes::StructureShape.new(name: 'GetTopicAttributesInput')
61
62
  GetTopicAttributesResponse = Shapes::StructureShape.new(name: 'GetTopicAttributesResponse')
62
- InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException')
63
- InvalidBatchEntryIdException = Shapes::StructureShape.new(name: 'InvalidBatchEntryIdException')
64
- InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
65
- InvalidParameterValueException = Shapes::StructureShape.new(name: 'InvalidParameterValueException')
66
- InvalidSecurityException = Shapes::StructureShape.new(name: 'InvalidSecurityException')
63
+ InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException', error: {"code"=>"InternalError", "httpStatusCode"=>500})
64
+ InvalidBatchEntryIdException = Shapes::StructureShape.new(name: 'InvalidBatchEntryIdException', error: {"code"=>"InvalidBatchEntryId", "httpStatusCode"=>400, "senderFault"=>true})
65
+ InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException', error: {"code"=>"InvalidParameter", "httpStatusCode"=>400, "senderFault"=>true})
66
+ InvalidParameterValueException = Shapes::StructureShape.new(name: 'InvalidParameterValueException', error: {"code"=>"ParameterValueInvalid", "httpStatusCode"=>400, "senderFault"=>true})
67
+ InvalidSecurityException = Shapes::StructureShape.new(name: 'InvalidSecurityException', error: {"code"=>"InvalidSecurity", "httpStatusCode"=>403, "senderFault"=>true})
68
+ InvalidStateException = Shapes::StructureShape.new(name: 'InvalidStateException', error: {"code"=>"InvalidState", "httpStatusCode"=>400, "senderFault"=>true})
67
69
  Iso2CountryCode = Shapes::StringShape.new(name: 'Iso2CountryCode')
68
- KMSAccessDeniedException = Shapes::StructureShape.new(name: 'KMSAccessDeniedException')
69
- KMSDisabledException = Shapes::StructureShape.new(name: 'KMSDisabledException')
70
- KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException')
71
- KMSNotFoundException = Shapes::StructureShape.new(name: 'KMSNotFoundException')
72
- KMSOptInRequired = Shapes::StructureShape.new(name: 'KMSOptInRequired')
73
- KMSThrottlingException = Shapes::StructureShape.new(name: 'KMSThrottlingException')
70
+ KMSAccessDeniedException = Shapes::StructureShape.new(name: 'KMSAccessDeniedException', error: {"code"=>"KMSAccessDenied", "httpStatusCode"=>400, "senderFault"=>true})
71
+ KMSDisabledException = Shapes::StructureShape.new(name: 'KMSDisabledException', error: {"code"=>"KMSDisabled", "httpStatusCode"=>400, "senderFault"=>true})
72
+ KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException', error: {"code"=>"KMSInvalidState", "httpStatusCode"=>400, "senderFault"=>true})
73
+ KMSNotFoundException = Shapes::StructureShape.new(name: 'KMSNotFoundException', error: {"code"=>"KMSNotFound", "httpStatusCode"=>400, "senderFault"=>true})
74
+ KMSOptInRequired = Shapes::StructureShape.new(name: 'KMSOptInRequired', error: {"code"=>"KMSOptInRequired", "httpStatusCode"=>403, "senderFault"=>true})
75
+ KMSThrottlingException = Shapes::StructureShape.new(name: 'KMSThrottlingException', error: {"code"=>"KMSThrottling", "httpStatusCode"=>400, "senderFault"=>true})
74
76
  LanguageCodeString = Shapes::StringShape.new(name: 'LanguageCodeString')
75
77
  ListEndpointsByPlatformApplicationInput = Shapes::StructureShape.new(name: 'ListEndpointsByPlatformApplicationInput')
76
78
  ListEndpointsByPlatformApplicationResponse = Shapes::StructureShape.new(name: 'ListEndpointsByPlatformApplicationResponse')
@@ -98,20 +100,20 @@ module Aws::SNS
98
100
  MaxItemsListOriginationNumbers = Shapes::IntegerShape.new(name: 'MaxItemsListOriginationNumbers')
99
101
  MessageAttributeMap = Shapes::MapShape.new(name: 'MessageAttributeMap')
100
102
  MessageAttributeValue = Shapes::StructureShape.new(name: 'MessageAttributeValue')
101
- NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
103
+ NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException', error: {"code"=>"NotFound", "httpStatusCode"=>404, "senderFault"=>true})
102
104
  NumberCapability = Shapes::StringShape.new(name: 'NumberCapability')
103
105
  NumberCapabilityList = Shapes::ListShape.new(name: 'NumberCapabilityList')
104
106
  OTPCode = Shapes::StringShape.new(name: 'OTPCode')
105
107
  OptInPhoneNumberInput = Shapes::StructureShape.new(name: 'OptInPhoneNumberInput')
106
108
  OptInPhoneNumberResponse = Shapes::StructureShape.new(name: 'OptInPhoneNumberResponse')
107
- OptedOutException = Shapes::StructureShape.new(name: 'OptedOutException')
109
+ OptedOutException = Shapes::StructureShape.new(name: 'OptedOutException', error: {"code"=>"OptedOut", "httpStatusCode"=>400, "senderFault"=>true})
108
110
  PhoneNumber = Shapes::StringShape.new(name: 'PhoneNumber')
109
111
  PhoneNumberInformation = Shapes::StructureShape.new(name: 'PhoneNumberInformation')
110
112
  PhoneNumberInformationList = Shapes::ListShape.new(name: 'PhoneNumberInformationList')
111
113
  PhoneNumberList = Shapes::ListShape.new(name: 'PhoneNumberList')
112
114
  PhoneNumberString = Shapes::StringShape.new(name: 'PhoneNumberString')
113
115
  PlatformApplication = Shapes::StructureShape.new(name: 'PlatformApplication')
114
- PlatformApplicationDisabledException = Shapes::StructureShape.new(name: 'PlatformApplicationDisabledException')
116
+ PlatformApplicationDisabledException = Shapes::StructureShape.new(name: 'PlatformApplicationDisabledException', error: {"code"=>"PlatformApplicationDisabled", "httpStatusCode"=>400, "senderFault"=>true})
115
117
  PublishBatchInput = Shapes::StructureShape.new(name: 'PublishBatchInput')
116
118
  PublishBatchRequestEntry = Shapes::StructureShape.new(name: 'PublishBatchRequestEntry')
117
119
  PublishBatchRequestEntryList = Shapes::ListShape.new(name: 'PublishBatchRequestEntryList')
@@ -122,7 +124,8 @@ module Aws::SNS
122
124
  PublishResponse = Shapes::StructureShape.new(name: 'PublishResponse')
123
125
  PutDataProtectionPolicyInput = Shapes::StructureShape.new(name: 'PutDataProtectionPolicyInput')
124
126
  RemovePermissionInput = Shapes::StructureShape.new(name: 'RemovePermissionInput')
125
- ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
127
+ ReplayLimitExceededException = Shapes::StructureShape.new(name: 'ReplayLimitExceededException', error: {"code"=>"ReplayLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
128
+ ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException', error: {"code"=>"ResourceNotFound", "httpStatusCode"=>404, "senderFault"=>true})
126
129
  RouteType = Shapes::StringShape.new(name: 'RouteType')
127
130
  SMSSandboxPhoneNumber = Shapes::StructureShape.new(name: 'SMSSandboxPhoneNumber')
128
131
  SMSSandboxPhoneNumberList = Shapes::ListShape.new(name: 'SMSSandboxPhoneNumberList')
@@ -133,35 +136,35 @@ module Aws::SNS
133
136
  SetSMSAttributesResponse = Shapes::StructureShape.new(name: 'SetSMSAttributesResponse')
134
137
  SetSubscriptionAttributesInput = Shapes::StructureShape.new(name: 'SetSubscriptionAttributesInput')
135
138
  SetTopicAttributesInput = Shapes::StructureShape.new(name: 'SetTopicAttributesInput')
136
- StaleTagException = Shapes::StructureShape.new(name: 'StaleTagException')
139
+ StaleTagException = Shapes::StructureShape.new(name: 'StaleTagException', error: {"code"=>"StaleTag", "httpStatusCode"=>400, "senderFault"=>true})
137
140
  String = Shapes::StringShape.new(name: 'String')
138
141
  SubscribeInput = Shapes::StructureShape.new(name: 'SubscribeInput')
139
142
  SubscribeResponse = Shapes::StructureShape.new(name: 'SubscribeResponse')
140
143
  Subscription = Shapes::StructureShape.new(name: 'Subscription')
141
144
  SubscriptionAttributesMap = Shapes::MapShape.new(name: 'SubscriptionAttributesMap')
142
- SubscriptionLimitExceededException = Shapes::StructureShape.new(name: 'SubscriptionLimitExceededException')
145
+ SubscriptionLimitExceededException = Shapes::StructureShape.new(name: 'SubscriptionLimitExceededException', error: {"code"=>"SubscriptionLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
143
146
  SubscriptionsList = Shapes::ListShape.new(name: 'SubscriptionsList')
144
147
  Tag = Shapes::StructureShape.new(name: 'Tag')
145
148
  TagKey = Shapes::StringShape.new(name: 'TagKey')
146
149
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
147
- TagLimitExceededException = Shapes::StructureShape.new(name: 'TagLimitExceededException')
150
+ TagLimitExceededException = Shapes::StructureShape.new(name: 'TagLimitExceededException', error: {"code"=>"TagLimitExceeded", "httpStatusCode"=>400, "senderFault"=>true})
148
151
  TagList = Shapes::ListShape.new(name: 'TagList')
149
- TagPolicyException = Shapes::StructureShape.new(name: 'TagPolicyException')
152
+ TagPolicyException = Shapes::StructureShape.new(name: 'TagPolicyException', error: {"code"=>"TagPolicy", "httpStatusCode"=>400, "senderFault"=>true})
150
153
  TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
151
154
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
152
155
  TagValue = Shapes::StringShape.new(name: 'TagValue')
153
- ThrottledException = Shapes::StructureShape.new(name: 'ThrottledException')
156
+ ThrottledException = Shapes::StructureShape.new(name: 'ThrottledException', error: {"code"=>"Throttled", "httpStatusCode"=>429, "senderFault"=>true})
154
157
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
155
- TooManyEntriesInBatchRequestException = Shapes::StructureShape.new(name: 'TooManyEntriesInBatchRequestException')
158
+ TooManyEntriesInBatchRequestException = Shapes::StructureShape.new(name: 'TooManyEntriesInBatchRequestException', error: {"code"=>"TooManyEntriesInBatchRequest", "httpStatusCode"=>400, "senderFault"=>true})
156
159
  Topic = Shapes::StructureShape.new(name: 'Topic')
157
160
  TopicAttributesMap = Shapes::MapShape.new(name: 'TopicAttributesMap')
158
- TopicLimitExceededException = Shapes::StructureShape.new(name: 'TopicLimitExceededException')
161
+ TopicLimitExceededException = Shapes::StructureShape.new(name: 'TopicLimitExceededException', error: {"code"=>"TopicLimitExceeded", "httpStatusCode"=>403, "senderFault"=>true})
159
162
  TopicsList = Shapes::ListShape.new(name: 'TopicsList')
160
163
  UnsubscribeInput = Shapes::StructureShape.new(name: 'UnsubscribeInput')
161
164
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
162
165
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
163
- UserErrorException = Shapes::StructureShape.new(name: 'UserErrorException')
164
- ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
166
+ UserErrorException = Shapes::StructureShape.new(name: 'UserErrorException', error: {"code"=>"UserError", "httpStatusCode"=>400, "senderFault"=>true})
167
+ ValidationException = Shapes::StructureShape.new(name: 'ValidationException', error: {"code"=>"ValidationException", "httpStatusCode"=>400, "senderFault"=>true})
165
168
  VerificationException = Shapes::StructureShape.new(name: 'VerificationException')
166
169
  VerifySMSSandboxPhoneNumberInput = Shapes::StructureShape.new(name: 'VerifySMSSandboxPhoneNumberInput')
167
170
  VerifySMSSandboxPhoneNumberResult = Shapes::StructureShape.new(name: 'VerifySMSSandboxPhoneNumberResult')
@@ -345,6 +348,9 @@ module Aws::SNS
345
348
  InvalidSecurityException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
346
349
  InvalidSecurityException.struct_class = Types::InvalidSecurityException
347
350
 
351
+ InvalidStateException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
352
+ InvalidStateException.struct_class = Types::InvalidStateException
353
+
348
354
  KMSAccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
349
355
  KMSAccessDeniedException.struct_class = Types::KMSAccessDeniedException
350
356
 
@@ -460,7 +466,7 @@ module Aws::SNS
460
466
  OptedOutException.struct_class = Types::OptedOutException
461
467
 
462
468
  PhoneNumberInformation.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedAt"))
463
- PhoneNumberInformation.add_member(:phone_number, Shapes::ShapeRef.new(shape: String, location_name: "PhoneNumber"))
469
+ PhoneNumberInformation.add_member(:phone_number, Shapes::ShapeRef.new(shape: PhoneNumber, location_name: "PhoneNumber"))
464
470
  PhoneNumberInformation.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "Status"))
465
471
  PhoneNumberInformation.add_member(:iso_2_country_code, Shapes::ShapeRef.new(shape: Iso2CountryCode, location_name: "Iso2CountryCode"))
466
472
  PhoneNumberInformation.add_member(:route_type, Shapes::ShapeRef.new(shape: RouteType, location_name: "RouteType"))
@@ -506,7 +512,7 @@ module Aws::SNS
506
512
 
507
513
  PublishInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
508
514
  PublishInput.add_member(:target_arn, Shapes::ShapeRef.new(shape: String, location_name: "TargetArn"))
509
- PublishInput.add_member(:phone_number, Shapes::ShapeRef.new(shape: String, location_name: "PhoneNumber"))
515
+ PublishInput.add_member(:phone_number, Shapes::ShapeRef.new(shape: PhoneNumber, location_name: "PhoneNumber"))
510
516
  PublishInput.add_member(:message, Shapes::ShapeRef.new(shape: message, required: true, location_name: "Message"))
511
517
  PublishInput.add_member(:subject, Shapes::ShapeRef.new(shape: subject, location_name: "Subject"))
512
518
  PublishInput.add_member(:message_structure, Shapes::ShapeRef.new(shape: messageStructure, location_name: "MessageStructure"))
@@ -527,6 +533,9 @@ module Aws::SNS
527
533
  RemovePermissionInput.add_member(:label, Shapes::ShapeRef.new(shape: label, required: true, location_name: "Label"))
528
534
  RemovePermissionInput.struct_class = Types::RemovePermissionInput
529
535
 
536
+ ReplayLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
537
+ ReplayLimitExceededException.struct_class = Types::ReplayLimitExceededException
538
+
530
539
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
531
540
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
532
541
 
@@ -657,8 +666,10 @@ module Aws::SNS
657
666
 
658
667
  api.metadata = {
659
668
  "apiVersion" => "2010-03-31",
669
+ "auth" => ["aws.auth#sigv4"],
660
670
  "endpointPrefix" => "sns",
661
671
  "protocol" => "query",
672
+ "protocols" => ["query"],
662
673
  "serviceAbbreviation" => "Amazon SNS",
663
674
  "serviceFullName" => "Amazon Simple Notification Service",
664
675
  "serviceId" => "SNS",
@@ -703,6 +714,7 @@ module Aws::SNS
703
714
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
704
715
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
705
716
  o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
717
+ o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
706
718
  end)
707
719
 
708
720
  api.add_operation(:create_platform_application, Seahorse::Model::Operation.new.tap do |o|
@@ -802,6 +814,7 @@ module Aws::SNS
802
814
  o.input = Shapes::ShapeRef.new(shape: DeleteTopicInput)
803
815
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
804
816
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
817
+ o.errors << Shapes::ShapeRef.new(shape: InvalidStateException)
805
818
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
806
819
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
807
820
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
@@ -1177,6 +1190,7 @@ module Aws::SNS
1177
1190
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1178
1191
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1179
1192
  o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
1193
+ o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
1180
1194
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1181
1195
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1182
1196
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
@@ -1203,6 +1217,7 @@ module Aws::SNS
1203
1217
  o.output = Shapes::ShapeRef.new(shape: SubscribeResponse)
1204
1218
  o.errors << Shapes::ShapeRef.new(shape: SubscriptionLimitExceededException)
1205
1219
  o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
1220
+ o.errors << Shapes::ShapeRef.new(shape: ReplayLimitExceededException)
1206
1221
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1207
1222
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1208
1223
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
@@ -1,4 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # utility classes
4
- require 'aws-sdk-sns/message_verifier'
4
+ module Aws
5
+ module SNS
6
+ autoload :MessageVerifier, 'aws-sdk-sns/message_verifier'
7
+ end
8
+ end
@@ -52,15 +52,18 @@ module Aws::SNS
52
52
  self[:region] = options[:region]
53
53
  self[:use_dual_stack] = options[:use_dual_stack]
54
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
55
  self[:use_fips] = options[:use_fips]
59
56
  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
57
  self[:endpoint] = options[:endpoint]
64
58
  end
59
+
60
+ def self.create(config, options={})
61
+ new({
62
+ region: config.region,
63
+ use_dual_stack: config.use_dualstack_endpoint,
64
+ use_fips: config.use_fips_endpoint,
65
+ endpoint: (config.endpoint.to_s unless config.regional_endpoint),
66
+ }.merge(options))
67
+ end
65
68
  end
66
69
  end
@@ -10,46 +10,42 @@
10
10
  module Aws::SNS
11
11
  class EndpointProvider
12
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)
13
+ if Aws::Endpoints::Matchers.set?(parameters.endpoint)
14
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
19
15
  raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
20
16
  end
21
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
17
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
22
18
  raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
19
  end
24
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
20
+ return Aws::Endpoints::Endpoint.new(url: parameters.endpoint, headers: {}, properties: {})
25
21
  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)
22
+ if Aws::Endpoints::Matchers.set?(parameters.region)
23
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(parameters.region))
24
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
29
25
  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: {})
26
+ return Aws::Endpoints::Endpoint.new(url: "https://sns-fips.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
27
  end
32
28
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
29
  end
34
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
- if Aws::Endpoints::Matchers.string_equals?(region, "us-gov-east-1")
30
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
31
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
32
+ if Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-east-1")
37
33
  return Aws::Endpoints::Endpoint.new(url: "https://sns.us-gov-east-1.amazonaws.com", headers: {}, properties: {})
38
34
  end
39
- if Aws::Endpoints::Matchers.string_equals?(region, "us-gov-west-1")
35
+ if Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-west-1")
40
36
  return Aws::Endpoints::Endpoint.new(url: "https://sns.us-gov-west-1.amazonaws.com", headers: {}, properties: {})
41
37
  end
42
- return Aws::Endpoints::Endpoint.new(url: "https://sns-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
38
+ return Aws::Endpoints::Endpoint.new(url: "https://sns-fips.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
43
39
  end
44
40
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
45
41
  end
46
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
42
+ if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
47
43
  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: {})
44
+ return Aws::Endpoints::Endpoint.new(url: "https://sns.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
49
45
  end
50
46
  raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
51
47
  end
52
- return Aws::Endpoints::Endpoint.new(url: "https://sns.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
48
+ return Aws::Endpoints::Endpoint.new(url: "https://sns.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
53
49
  end
54
50
  end
55
51
  raise ArgumentError, "Invalid Configuration: Missing Region"