aws-sdk-notificationscontacts 1.0.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.
@@ -0,0 +1,326 @@
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
+
11
+ module Aws::NotificationsContacts
12
+ # @api private
13
+ module ClientApi
14
+
15
+ include Seahorse::Model
16
+
17
+ AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
18
+ ActivateEmailContactRequest = Shapes::StructureShape.new(name: 'ActivateEmailContactRequest')
19
+ ActivateEmailContactResponse = Shapes::StructureShape.new(name: 'ActivateEmailContactResponse')
20
+ ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
21
+ CreateEmailContactRequest = Shapes::StructureShape.new(name: 'CreateEmailContactRequest')
22
+ CreateEmailContactResponse = Shapes::StructureShape.new(name: 'CreateEmailContactResponse')
23
+ CreationTime = Shapes::TimestampShape.new(name: 'CreationTime', timestampFormat: "iso8601")
24
+ DeleteEmailContactRequest = Shapes::StructureShape.new(name: 'DeleteEmailContactRequest')
25
+ DeleteEmailContactResponse = Shapes::StructureShape.new(name: 'DeleteEmailContactResponse')
26
+ EmailContact = Shapes::StructureShape.new(name: 'EmailContact')
27
+ EmailContactAddress = Shapes::StringShape.new(name: 'EmailContactAddress')
28
+ EmailContactArn = Shapes::StringShape.new(name: 'EmailContactArn')
29
+ EmailContactName = Shapes::StringShape.new(name: 'EmailContactName')
30
+ EmailContactStatus = Shapes::StringShape.new(name: 'EmailContactStatus')
31
+ EmailContacts = Shapes::ListShape.new(name: 'EmailContacts')
32
+ ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
33
+ GetEmailContactRequest = Shapes::StructureShape.new(name: 'GetEmailContactRequest')
34
+ GetEmailContactResponse = Shapes::StructureShape.new(name: 'GetEmailContactResponse')
35
+ Integer = Shapes::IntegerShape.new(name: 'Integer')
36
+ InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
37
+ ListEmailContactsRequest = Shapes::StructureShape.new(name: 'ListEmailContactsRequest')
38
+ ListEmailContactsRequestMaxResultsInteger = Shapes::IntegerShape.new(name: 'ListEmailContactsRequestMaxResultsInteger')
39
+ ListEmailContactsResponse = Shapes::StructureShape.new(name: 'ListEmailContactsResponse')
40
+ ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
41
+ ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
42
+ QuotaCode = Shapes::StringShape.new(name: 'QuotaCode')
43
+ ResourceId = Shapes::StringShape.new(name: 'ResourceId')
44
+ ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
45
+ ResourceType = Shapes::StringShape.new(name: 'ResourceType')
46
+ SendActivationCodeRequest = Shapes::StructureShape.new(name: 'SendActivationCodeRequest')
47
+ SendActivationCodeResponse = Shapes::StructureShape.new(name: 'SendActivationCodeResponse')
48
+ SensitiveEmailContactAddress = Shapes::StringShape.new(name: 'SensitiveEmailContactAddress')
49
+ ServiceCode = Shapes::StringShape.new(name: 'ServiceCode')
50
+ ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
51
+ String = Shapes::StringShape.new(name: 'String')
52
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
53
+ TagKeys = Shapes::ListShape.new(name: 'TagKeys')
54
+ TagMap = Shapes::MapShape.new(name: 'TagMap')
55
+ TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
56
+ TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
57
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
58
+ ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
59
+ Token = Shapes::StringShape.new(name: 'Token')
60
+ UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
61
+ UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
62
+ UpdateTime = Shapes::TimestampShape.new(name: 'UpdateTime', timestampFormat: "iso8601")
63
+ ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
64
+ ValidationExceptionField = Shapes::StructureShape.new(name: 'ValidationExceptionField')
65
+ ValidationExceptionFieldList = Shapes::ListShape.new(name: 'ValidationExceptionFieldList')
66
+ ValidationExceptionReason = Shapes::StringShape.new(name: 'ValidationExceptionReason')
67
+
68
+ AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
69
+ AccessDeniedException.struct_class = Types::AccessDeniedException
70
+
71
+ ActivateEmailContactRequest.add_member(:arn, Shapes::ShapeRef.new(shape: EmailContactArn, required: true, location: "uri", location_name: "arn"))
72
+ ActivateEmailContactRequest.add_member(:code, Shapes::ShapeRef.new(shape: Token, required: true, location: "uri", location_name: "code"))
73
+ ActivateEmailContactRequest.struct_class = Types::ActivateEmailContactRequest
74
+
75
+ ActivateEmailContactResponse.struct_class = Types::ActivateEmailContactResponse
76
+
77
+ ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
78
+ ConflictException.add_member(:resource_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "resourceId"))
79
+ ConflictException.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "resourceType"))
80
+ ConflictException.struct_class = Types::ConflictException
81
+
82
+ CreateEmailContactRequest.add_member(:name, Shapes::ShapeRef.new(shape: EmailContactName, required: true, location_name: "name"))
83
+ CreateEmailContactRequest.add_member(:email_address, Shapes::ShapeRef.new(shape: EmailContactAddress, required: true, location_name: "emailAddress"))
84
+ CreateEmailContactRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
85
+ CreateEmailContactRequest.struct_class = Types::CreateEmailContactRequest
86
+
87
+ CreateEmailContactResponse.add_member(:arn, Shapes::ShapeRef.new(shape: EmailContactArn, required: true, location_name: "arn"))
88
+ CreateEmailContactResponse.struct_class = Types::CreateEmailContactResponse
89
+
90
+ DeleteEmailContactRequest.add_member(:arn, Shapes::ShapeRef.new(shape: EmailContactArn, required: true, location: "uri", location_name: "arn"))
91
+ DeleteEmailContactRequest.struct_class = Types::DeleteEmailContactRequest
92
+
93
+ DeleteEmailContactResponse.struct_class = Types::DeleteEmailContactResponse
94
+
95
+ EmailContact.add_member(:arn, Shapes::ShapeRef.new(shape: EmailContactArn, required: true, location_name: "arn"))
96
+ EmailContact.add_member(:name, Shapes::ShapeRef.new(shape: EmailContactName, required: true, location_name: "name"))
97
+ EmailContact.add_member(:address, Shapes::ShapeRef.new(shape: SensitiveEmailContactAddress, required: true, location_name: "address"))
98
+ EmailContact.add_member(:status, Shapes::ShapeRef.new(shape: EmailContactStatus, required: true, location_name: "status"))
99
+ EmailContact.add_member(:creation_time, Shapes::ShapeRef.new(shape: CreationTime, required: true, location_name: "creationTime"))
100
+ EmailContact.add_member(:update_time, Shapes::ShapeRef.new(shape: UpdateTime, required: true, location_name: "updateTime"))
101
+ EmailContact.struct_class = Types::EmailContact
102
+
103
+ EmailContacts.member = Shapes::ShapeRef.new(shape: EmailContact)
104
+
105
+ GetEmailContactRequest.add_member(:arn, Shapes::ShapeRef.new(shape: EmailContactArn, required: true, location: "uri", location_name: "arn"))
106
+ GetEmailContactRequest.struct_class = Types::GetEmailContactRequest
107
+
108
+ GetEmailContactResponse.add_member(:email_contact, Shapes::ShapeRef.new(shape: EmailContact, required: true, location_name: "emailContact"))
109
+ GetEmailContactResponse.struct_class = Types::GetEmailContactResponse
110
+
111
+ InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
112
+ InternalServerException.struct_class = Types::InternalServerException
113
+
114
+ ListEmailContactsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListEmailContactsRequestMaxResultsInteger, location: "querystring", location_name: "maxResults"))
115
+ ListEmailContactsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location: "querystring", location_name: "nextToken"))
116
+ ListEmailContactsRequest.struct_class = Types::ListEmailContactsRequest
117
+
118
+ ListEmailContactsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
119
+ ListEmailContactsResponse.add_member(:email_contacts, Shapes::ShapeRef.new(shape: EmailContacts, required: true, location_name: "emailContacts"))
120
+ ListEmailContactsResponse.struct_class = Types::ListEmailContactsResponse
121
+
122
+ ListTagsForResourceRequest.add_member(:arn, Shapes::ShapeRef.new(shape: EmailContactArn, required: true, location: "uri", location_name: "arn"))
123
+ ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
124
+
125
+ ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
126
+ ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
127
+
128
+ ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
129
+ ResourceNotFoundException.add_member(:resource_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "resourceId"))
130
+ ResourceNotFoundException.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "resourceType"))
131
+ ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
132
+
133
+ SendActivationCodeRequest.add_member(:arn, Shapes::ShapeRef.new(shape: EmailContactArn, required: true, location: "uri", location_name: "arn"))
134
+ SendActivationCodeRequest.struct_class = Types::SendActivationCodeRequest
135
+
136
+ SendActivationCodeResponse.struct_class = Types::SendActivationCodeResponse
137
+
138
+ ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
139
+ ServiceQuotaExceededException.add_member(:resource_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "resourceId"))
140
+ ServiceQuotaExceededException.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "resourceType"))
141
+ ServiceQuotaExceededException.add_member(:service_code, Shapes::ShapeRef.new(shape: ServiceCode, required: true, location_name: "serviceCode"))
142
+ ServiceQuotaExceededException.add_member(:quota_code, Shapes::ShapeRef.new(shape: QuotaCode, required: true, location_name: "quotaCode"))
143
+ ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
144
+
145
+ TagKeys.member = Shapes::ShapeRef.new(shape: TagKey)
146
+
147
+ TagMap.key = Shapes::ShapeRef.new(shape: TagKey)
148
+ TagMap.value = Shapes::ShapeRef.new(shape: TagValue)
149
+
150
+ TagResourceRequest.add_member(:arn, Shapes::ShapeRef.new(shape: EmailContactArn, required: true, location: "uri", location_name: "arn"))
151
+ TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, required: true, location_name: "tags"))
152
+ TagResourceRequest.struct_class = Types::TagResourceRequest
153
+
154
+ TagResourceResponse.struct_class = Types::TagResourceResponse
155
+
156
+ ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
157
+ ThrottlingException.add_member(:service_code, Shapes::ShapeRef.new(shape: ServiceCode, location_name: "serviceCode"))
158
+ ThrottlingException.add_member(:quota_code, Shapes::ShapeRef.new(shape: QuotaCode, location_name: "quotaCode"))
159
+ ThrottlingException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: Integer, location: "header", location_name: "Retry-After"))
160
+ ThrottlingException.struct_class = Types::ThrottlingException
161
+
162
+ UntagResourceRequest.add_member(:arn, Shapes::ShapeRef.new(shape: EmailContactArn, required: true, location: "uri", location_name: "arn"))
163
+ UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeys, required: true, location: "querystring", location_name: "tagKeys"))
164
+ UntagResourceRequest.struct_class = Types::UntagResourceRequest
165
+
166
+ UntagResourceResponse.struct_class = Types::UntagResourceResponse
167
+
168
+ ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
169
+ ValidationException.add_member(:reason, Shapes::ShapeRef.new(shape: ValidationExceptionReason, required: true, location_name: "reason"))
170
+ ValidationException.add_member(:field_list, Shapes::ShapeRef.new(shape: ValidationExceptionFieldList, location_name: "fieldList"))
171
+ ValidationException.struct_class = Types::ValidationException
172
+
173
+ ValidationExceptionField.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "name"))
174
+ ValidationExceptionField.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
175
+ ValidationExceptionField.struct_class = Types::ValidationExceptionField
176
+
177
+ ValidationExceptionFieldList.member = Shapes::ShapeRef.new(shape: ValidationExceptionField)
178
+
179
+
180
+ # @api private
181
+ API = Seahorse::Model::Api.new.tap do |api|
182
+
183
+ api.version = "2018-05-10"
184
+
185
+ api.metadata = {
186
+ "apiVersion" => "2018-05-10",
187
+ "auth" => ["aws.auth#sigv4"],
188
+ "endpointPrefix" => "notifications-contacts",
189
+ "protocol" => "rest-json",
190
+ "protocols" => ["rest-json"],
191
+ "serviceFullName" => "AWS User Notifications Contacts",
192
+ "serviceId" => "NotificationsContacts",
193
+ "signatureVersion" => "v4",
194
+ "signingName" => "notifications-contacts",
195
+ "uid" => "notificationscontacts-2018-05-10",
196
+ }
197
+
198
+ api.add_operation(:activate_email_contact, Seahorse::Model::Operation.new.tap do |o|
199
+ o.name = "ActivateEmailContact"
200
+ o.http_method = "PUT"
201
+ o.http_request_uri = "/emailcontacts/{arn}/activate/{code}"
202
+ o.input = Shapes::ShapeRef.new(shape: ActivateEmailContactRequest)
203
+ o.output = Shapes::ShapeRef.new(shape: ActivateEmailContactResponse)
204
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
205
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
206
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
207
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
208
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
209
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
210
+ end)
211
+
212
+ api.add_operation(:create_email_contact, Seahorse::Model::Operation.new.tap do |o|
213
+ o.name = "CreateEmailContact"
214
+ o.http_method = "POST"
215
+ o.http_request_uri = "/2022-09-19/emailcontacts"
216
+ o.input = Shapes::ShapeRef.new(shape: CreateEmailContactRequest)
217
+ o.output = Shapes::ShapeRef.new(shape: CreateEmailContactResponse)
218
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
219
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
220
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
221
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
222
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
223
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
224
+ end)
225
+
226
+ api.add_operation(:delete_email_contact, Seahorse::Model::Operation.new.tap do |o|
227
+ o.name = "DeleteEmailContact"
228
+ o.http_method = "DELETE"
229
+ o.http_request_uri = "/emailcontacts/{arn}"
230
+ o.input = Shapes::ShapeRef.new(shape: DeleteEmailContactRequest)
231
+ o.output = Shapes::ShapeRef.new(shape: DeleteEmailContactResponse)
232
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
233
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
234
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
235
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
236
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
237
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
238
+ end)
239
+
240
+ api.add_operation(:get_email_contact, Seahorse::Model::Operation.new.tap do |o|
241
+ o.name = "GetEmailContact"
242
+ o.http_method = "GET"
243
+ o.http_request_uri = "/emailcontacts/{arn}"
244
+ o.input = Shapes::ShapeRef.new(shape: GetEmailContactRequest)
245
+ o.output = Shapes::ShapeRef.new(shape: GetEmailContactResponse)
246
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
247
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
248
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
249
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
250
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
251
+ end)
252
+
253
+ api.add_operation(:list_email_contacts, Seahorse::Model::Operation.new.tap do |o|
254
+ o.name = "ListEmailContacts"
255
+ o.http_method = "GET"
256
+ o.http_request_uri = "/emailcontacts"
257
+ o.input = Shapes::ShapeRef.new(shape: ListEmailContactsRequest)
258
+ o.output = Shapes::ShapeRef.new(shape: ListEmailContactsResponse)
259
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
260
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
261
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
262
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
263
+ o[:pager] = Aws::Pager.new(
264
+ limit_key: "max_results",
265
+ tokens: {
266
+ "next_token" => "next_token"
267
+ }
268
+ )
269
+ end)
270
+
271
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
272
+ o.name = "ListTagsForResource"
273
+ o.http_method = "GET"
274
+ o.http_request_uri = "/tags/{arn}"
275
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
276
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
277
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
278
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
279
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
280
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
281
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
282
+ end)
283
+
284
+ api.add_operation(:send_activation_code, Seahorse::Model::Operation.new.tap do |o|
285
+ o.name = "SendActivationCode"
286
+ o.http_method = "POST"
287
+ o.http_request_uri = "/2022-10-31/emailcontacts/{arn}/activate/send"
288
+ o.input = Shapes::ShapeRef.new(shape: SendActivationCodeRequest)
289
+ o.output = Shapes::ShapeRef.new(shape: SendActivationCodeResponse)
290
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
291
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
292
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
293
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
294
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
295
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
296
+ end)
297
+
298
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
299
+ o.name = "TagResource"
300
+ o.http_method = "POST"
301
+ o.http_request_uri = "/tags/{arn}"
302
+ o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
303
+ o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
304
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
305
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
306
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
307
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
308
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
309
+ end)
310
+
311
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
312
+ o.name = "UntagResource"
313
+ o.http_method = "DELETE"
314
+ o.http_request_uri = "/tags/{arn}"
315
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
316
+ o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
317
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
318
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
319
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
320
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
321
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
322
+ end)
323
+ end
324
+
325
+ end
326
+ end
@@ -0,0 +1,59 @@
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::NotificationsContacts
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute use_fips
14
+ # 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.
15
+ #
16
+ # @return [Boolean]
17
+ #
18
+ # @!attribute endpoint
19
+ # Override the endpoint used to send this request
20
+ #
21
+ # @return [String]
22
+ #
23
+ # @!attribute region
24
+ # The AWS region used to dispatch the request.
25
+ #
26
+ # @return [String]
27
+ #
28
+ EndpointParameters = Struct.new(
29
+ :use_fips,
30
+ :endpoint,
31
+ :region,
32
+ ) do
33
+ include Aws::Structure
34
+
35
+ # @api private
36
+ class << self
37
+ PARAM_MAP = {
38
+ 'UseFIPS' => :use_fips,
39
+ 'Endpoint' => :endpoint,
40
+ 'Region' => :region,
41
+ }.freeze
42
+ end
43
+
44
+ def initialize(options = {})
45
+ self[:use_fips] = options[:use_fips]
46
+ self[:use_fips] = false if self[:use_fips].nil?
47
+ self[:endpoint] = options[:endpoint]
48
+ self[:region] = options[:region]
49
+ end
50
+
51
+ def self.create(config, options={})
52
+ new({
53
+ use_fips: config.use_fips_endpoint,
54
+ endpoint: (config.endpoint.to_s unless config.regional_endpoint),
55
+ region: config.region,
56
+ }.merge(options))
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,35 @@
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::NotificationsContacts
11
+ class EndpointProvider
12
+ def resolve_endpoint(parameters)
13
+ use_fips = parameters.use_fips
14
+ endpoint = parameters.endpoint
15
+ region = parameters.region
16
+ if Aws::Endpoints::Matchers.set?(endpoint)
17
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
18
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
19
+ end
20
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
21
+ end
22
+ if Aws::Endpoints::Matchers.set?(region)
23
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
24
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
25
+ return Aws::Endpoints::Endpoint.new(url: "https://notifications-contacts-fips.#{partition_result['implicitGlobalRegion']}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {"authSchemes"=>[{"name"=>"sigv4", "signingRegion"=>"#{partition_result['implicitGlobalRegion']}"}]})
26
+ end
27
+ return Aws::Endpoints::Endpoint.new(url: "https://notifications-contacts.#{partition_result['implicitGlobalRegion']}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {"authSchemes"=>[{"name"=>"sigv4", "signingRegion"=>"#{partition_result['implicitGlobalRegion']}"}]})
28
+ end
29
+ end
30
+ raise ArgumentError, "Invalid Configuration: Missing Region"
31
+ raise ArgumentError, 'No endpoint could be resolved'
32
+
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,20 @@
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
+
11
+ module Aws::NotificationsContacts
12
+ # @api private
13
+ module Endpoints
14
+
15
+
16
+ def self.parameters_for_operation(context)
17
+ Aws::NotificationsContacts::EndpointParameters.create(context.config)
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,227 @@
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::NotificationsContacts
11
+
12
+ # When NotificationsContacts returns an error response, the Ruby SDK constructs and raises an error.
13
+ # These errors all extend Aws::NotificationsContacts::Errors::ServiceError < {Aws::Errors::ServiceError}
14
+ #
15
+ # You can rescue all NotificationsContacts errors using ServiceError:
16
+ #
17
+ # begin
18
+ # # do stuff
19
+ # rescue Aws::NotificationsContacts::Errors::ServiceError
20
+ # # rescues all NotificationsContacts API errors
21
+ # end
22
+ #
23
+ #
24
+ # ## Request Context
25
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
26
+ # information about the request that generated the error.
27
+ # See {Seahorse::Client::RequestContext} for more information.
28
+ #
29
+ # ## Error Classes
30
+ # * {AccessDeniedException}
31
+ # * {ConflictException}
32
+ # * {InternalServerException}
33
+ # * {ResourceNotFoundException}
34
+ # * {ServiceQuotaExceededException}
35
+ # * {ThrottlingException}
36
+ # * {ValidationException}
37
+ #
38
+ # Additionally, error classes are dynamically generated for service errors based on the error code
39
+ # if they are not defined above.
40
+ module Errors
41
+
42
+ extend Aws::Errors::DynamicErrors
43
+
44
+ class AccessDeniedException < ServiceError
45
+
46
+ # @param [Seahorse::Client::RequestContext] context
47
+ # @param [String] message
48
+ # @param [Aws::NotificationsContacts::Types::AccessDeniedException] data
49
+ def initialize(context, message, data = Aws::EmptyStructure.new)
50
+ super(context, message, data)
51
+ end
52
+
53
+ # @return [String]
54
+ def message
55
+ @message || @data[:message]
56
+ end
57
+ end
58
+
59
+ class ConflictException < ServiceError
60
+
61
+ # @param [Seahorse::Client::RequestContext] context
62
+ # @param [String] message
63
+ # @param [Aws::NotificationsContacts::Types::ConflictException] data
64
+ def initialize(context, message, data = Aws::EmptyStructure.new)
65
+ super(context, message, data)
66
+ end
67
+
68
+ # @return [String]
69
+ def message
70
+ @message || @data[:message]
71
+ end
72
+
73
+ # @return [String]
74
+ def resource_id
75
+ @data[:resource_id]
76
+ end
77
+
78
+ # @return [String]
79
+ def resource_type
80
+ @data[:resource_type]
81
+ end
82
+ end
83
+
84
+ class InternalServerException < ServiceError
85
+
86
+ # @param [Seahorse::Client::RequestContext] context
87
+ # @param [String] message
88
+ # @param [Aws::NotificationsContacts::Types::InternalServerException] data
89
+ def initialize(context, message, data = Aws::EmptyStructure.new)
90
+ super(context, message, data)
91
+ end
92
+
93
+ # @return [String]
94
+ def message
95
+ @message || @data[:message]
96
+ end
97
+
98
+ def retryable?
99
+ true
100
+ end
101
+ end
102
+
103
+ class ResourceNotFoundException < ServiceError
104
+
105
+ # @param [Seahorse::Client::RequestContext] context
106
+ # @param [String] message
107
+ # @param [Aws::NotificationsContacts::Types::ResourceNotFoundException] data
108
+ def initialize(context, message, data = Aws::EmptyStructure.new)
109
+ super(context, message, data)
110
+ end
111
+
112
+ # @return [String]
113
+ def message
114
+ @message || @data[:message]
115
+ end
116
+
117
+ # @return [String]
118
+ def resource_id
119
+ @data[:resource_id]
120
+ end
121
+
122
+ # @return [String]
123
+ def resource_type
124
+ @data[:resource_type]
125
+ end
126
+ end
127
+
128
+ class ServiceQuotaExceededException < ServiceError
129
+
130
+ # @param [Seahorse::Client::RequestContext] context
131
+ # @param [String] message
132
+ # @param [Aws::NotificationsContacts::Types::ServiceQuotaExceededException] data
133
+ def initialize(context, message, data = Aws::EmptyStructure.new)
134
+ super(context, message, data)
135
+ end
136
+
137
+ # @return [String]
138
+ def message
139
+ @message || @data[:message]
140
+ end
141
+
142
+ # @return [String]
143
+ def resource_id
144
+ @data[:resource_id]
145
+ end
146
+
147
+ # @return [String]
148
+ def resource_type
149
+ @data[:resource_type]
150
+ end
151
+
152
+ # @return [String]
153
+ def service_code
154
+ @data[:service_code]
155
+ end
156
+
157
+ # @return [String]
158
+ def quota_code
159
+ @data[:quota_code]
160
+ end
161
+ end
162
+
163
+ class ThrottlingException < ServiceError
164
+
165
+ # @param [Seahorse::Client::RequestContext] context
166
+ # @param [String] message
167
+ # @param [Aws::NotificationsContacts::Types::ThrottlingException] data
168
+ def initialize(context, message, data = Aws::EmptyStructure.new)
169
+ super(context, message, data)
170
+ end
171
+
172
+ # @return [String]
173
+ def message
174
+ @message || @data[:message]
175
+ end
176
+
177
+ # @return [String]
178
+ def service_code
179
+ @data[:service_code]
180
+ end
181
+
182
+ # @return [String]
183
+ def quota_code
184
+ @data[:quota_code]
185
+ end
186
+
187
+ # @return [String]
188
+ def retry_after_seconds
189
+ @data[:retry_after_seconds]
190
+ end
191
+
192
+ def retryable?
193
+ true
194
+ end
195
+
196
+ def throttling?
197
+ true
198
+ end
199
+ end
200
+
201
+ class ValidationException < ServiceError
202
+
203
+ # @param [Seahorse::Client::RequestContext] context
204
+ # @param [String] message
205
+ # @param [Aws::NotificationsContacts::Types::ValidationException] data
206
+ def initialize(context, message, data = Aws::EmptyStructure.new)
207
+ super(context, message, data)
208
+ end
209
+
210
+ # @return [String]
211
+ def message
212
+ @message || @data[:message]
213
+ end
214
+
215
+ # @return [String]
216
+ def reason
217
+ @data[:reason]
218
+ end
219
+
220
+ # @return [String]
221
+ def field_list
222
+ @data[:field_list]
223
+ end
224
+ end
225
+
226
+ end
227
+ end