aws-sdk 1.5.8 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. data/lib/aws.rb +2 -0
  2. data/lib/aws/api_config/Route53-2012-02-29.yml +348 -0
  3. data/lib/aws/auto_scaling/client.rb +362 -588
  4. data/lib/aws/cloud_formation/client.rb +155 -224
  5. data/lib/aws/cloud_watch/client.rb +156 -229
  6. data/lib/aws/core.rb +67 -52
  7. data/lib/aws/core/client.rb +81 -82
  8. data/lib/aws/core/collection/with_limit_and_next_token.rb +2 -2
  9. data/lib/aws/core/configuration.rb +75 -72
  10. data/lib/aws/core/http/net_http_handler.rb +3 -3
  11. data/lib/aws/core/http/request.rb +107 -138
  12. data/lib/aws/core/inflection.rb +3 -3
  13. data/lib/aws/core/json_client.rb +106 -0
  14. data/lib/aws/core/option_grammar.rb +10 -1
  15. data/lib/aws/core/options/validator.rb +140 -0
  16. data/lib/aws/core/options/xml_serializer.rb +98 -0
  17. data/lib/aws/core/query_client.rb +131 -0
  18. data/lib/aws/core/rest_client.rb +90 -0
  19. data/lib/aws/core/rest_client/input_handler.rb +145 -0
  20. data/lib/aws/core/rest_client/output_handler.rb +43 -0
  21. data/lib/aws/core/signature/version_2.rb +7 -7
  22. data/lib/aws/core/signature/version_3.rb +5 -1
  23. data/lib/aws/core/signature/version_3_https.rb +51 -0
  24. data/lib/aws/core/signature/version_4.rb +5 -22
  25. data/lib/aws/core/signer.rb +1 -1
  26. data/lib/aws/core/uri_escape.rb +2 -0
  27. data/lib/aws/core/xml/frame.rb +8 -8
  28. data/lib/aws/core/xml/grammar.rb +8 -3
  29. data/lib/aws/dynamo_db/client.rb +600 -662
  30. data/lib/aws/ec2/client.rb +2688 -3492
  31. data/lib/aws/ec2/request.rb +0 -1
  32. data/lib/aws/elb/client.rb +280 -407
  33. data/lib/aws/emr/client.rb +7 -7
  34. data/lib/aws/iam/client.rb +822 -1268
  35. data/lib/aws/route_53.rb +71 -0
  36. data/lib/aws/route_53/client.rb +272 -0
  37. data/lib/aws/route_53/config.rb +18 -0
  38. data/lib/aws/route_53/errors.rb +22 -0
  39. data/lib/aws/route_53/request.rb +23 -0
  40. data/lib/aws/s3/object_version_collection.rb +6 -6
  41. data/lib/aws/s3/paginated_collection.rb +1 -1
  42. data/lib/aws/s3/request.rb +10 -5
  43. data/lib/aws/simple_db/client.rb +184 -234
  44. data/lib/aws/simple_email_service/client.rb +147 -238
  45. data/lib/aws/simple_workflow/client.rb +997 -1191
  46. data/lib/aws/sns/client.rb +176 -264
  47. data/lib/aws/sqs/client.rb +162 -253
  48. data/lib/aws/sqs/queue.rb +1 -1
  49. data/lib/aws/sqs/request.rb +4 -0
  50. data/lib/aws/sts/client.rb +57 -66
  51. metadata +95 -71
  52. data/lib/aws/core/client/query_json.rb +0 -112
  53. data/lib/aws/core/client/query_xml.rb +0 -122
@@ -19,7 +19,7 @@ module AWS
19
19
 
20
20
  API_VERSION = '2010-12-01'
21
21
 
22
- extend Core::Client::QueryXML
22
+ extend Core::QueryClient
23
23
 
24
24
  REGION_US_E1 = 'email.us-east-1.amazonaws.com'
25
25
 
@@ -30,318 +30,227 @@ module AWS
30
30
 
31
31
  # Calls the DeleteIdentity API operation.
32
32
  # @method delete_identity(options = {})
33
- #
34
- # === Options:
35
- #
36
- # * +:identity+ - *required* - (String) The identity to be removed from
37
- # the list of identities for the AWS Account.
38
- #
39
- # === Response Structure:
40
- #
41
- # This method returns no response data.
42
- #
33
+ # @param [Hash] options
34
+ # * +:identity+ - *required* - (String) The identity to be removed from
35
+ # the list of identities for the AWS Account.
43
36
  # @return [Core::Response]
44
- #
45
37
  define_client_method :delete_identity, 'DeleteIdentity'
46
38
 
47
39
  # Calls the DeleteVerifiedEmailAddress API operation.
48
40
  # @method delete_verified_email_address(options = {})
49
- #
50
- # === Options:
51
- #
52
- # * +:email_address+ - *required* - (String) An email address to be
53
- # removed from the list of verified addresses.
54
- #
55
- # === Response Structure:
56
- #
57
- # This method returns no response data.
58
- #
41
+ # @param [Hash] options
42
+ # * +:email_address+ - *required* - (String) An email address to be
43
+ # removed from the list of verified addresses.
59
44
  # @return [Core::Response]
60
- #
61
45
  define_client_method :delete_verified_email_address, 'DeleteVerifiedEmailAddress'
62
46
 
63
47
  # Calls the GetIdentityNotificationAttributes API operation.
64
48
  # @method get_identity_notification_attributes(options = {})
65
- #
66
- # === Options:
67
- #
68
- # * +:identities+ - *required* - (Array<String>) A list of one or more
69
- # identities.
70
- #
71
- # === Response Structure:
72
- #
73
- # * +:notification_attributes+ - (Hash<String,Hash>)
74
- # * +:bounce_topic+ - (String)
75
- # * +:complaint_topic+ - (String)
76
- # * +:forwarding_enabled+ - (Boolean)
77
- #
49
+ # @param [Hash] options
50
+ # * +:identities+ - *required* - (Array<String>) A list of one or more
51
+ # identities.
78
52
  # @return [Core::Response]
79
- #
53
+ # The #data method of the response object returns
54
+ # a hash with the following structure:
55
+ # * +:notification_attributes+ - (Hash<String,Hash>)
56
+ # * +:bounce_topic+ - (String)
57
+ # * +:complaint_topic+ - (String)
58
+ # * +:forwarding_enabled+ - (Boolean)
80
59
  define_client_method :get_identity_notification_attributes, 'GetIdentityNotificationAttributes'
81
60
 
82
61
  # Calls the GetIdentityVerificationAttributes API operation.
83
62
  # @method get_identity_verification_attributes(options = {})
84
- #
85
- # === Options:
86
- #
87
- # * +:identities+ - *required* - (Array<String>) A list of identities.
88
- #
89
- # === Response Structure:
90
- #
91
- # * +:verification_attributes+ - (Hash<String,Hash>)
92
- # * +:verification_status+ - (String)
93
- # * +:verification_token+ - (String)
94
- #
63
+ # @param [Hash] options
64
+ # * +:identities+ - *required* - (Array<String>) A list of identities.
95
65
  # @return [Core::Response]
96
- #
66
+ # The #data method of the response object returns
67
+ # a hash with the following structure:
68
+ # * +:verification_attributes+ - (Hash<String,Hash>)
69
+ # * +:verification_status+ - (String)
70
+ # * +:verification_token+ - (String)
97
71
  define_client_method :get_identity_verification_attributes, 'GetIdentityVerificationAttributes'
98
72
 
99
73
  # Calls the GetSendQuota API operation.
100
74
  # @method get_send_quota(options = {})
101
- #
102
- # === Options:
103
- #
104
- # This method accepts no options.
105
- #
106
- # === Response Structure:
107
- #
108
- # * +:max_24_hour_send+ - (Numeric)
109
- # * +:max_send_rate+ - (Numeric)
110
- # * +:sent_last_24_hours+ - (Numeric)
111
- #
75
+ # @param [Hash] options
112
76
  # @return [Core::Response]
113
- #
77
+ # The #data method of the response object returns
78
+ # a hash with the following structure:
79
+ # * +:max_24_hour_send+ - (Numeric)
80
+ # * +:max_send_rate+ - (Numeric)
81
+ # * +:sent_last_24_hours+ - (Numeric)
114
82
  define_client_method :get_send_quota, 'GetSendQuota'
115
83
 
116
84
  # Calls the GetSendStatistics API operation.
117
85
  # @method get_send_statistics(options = {})
118
- #
119
- # === Options:
120
- #
121
- # This method accepts no options.
122
- #
123
- # === Response Structure:
124
- #
125
- # * +:send_data_points+ - (Array<Hash>)
126
- # * +:timestamp+ - (Time)
127
- # * +:delivery_attempts+ - (Integer)
128
- # * +:bounces+ - (Integer)
129
- # * +:complaints+ - (Integer)
130
- # * +:rejects+ - (Integer)
131
- #
86
+ # @param [Hash] options
132
87
  # @return [Core::Response]
133
- #
88
+ # The #data method of the response object returns
89
+ # a hash with the following structure:
90
+ # * +:send_data_points+ - (Array<Hash>)
91
+ # * +:timestamp+ - (Time)
92
+ # * +:delivery_attempts+ - (Integer)
93
+ # * +:bounces+ - (Integer)
94
+ # * +:complaints+ - (Integer)
95
+ # * +:rejects+ - (Integer)
134
96
  define_client_method :get_send_statistics, 'GetSendStatistics'
135
97
 
136
98
  # Calls the ListIdentities API operation.
137
99
  # @method list_identities(options = {})
138
- #
139
- # === Options:
140
- #
141
- # * +:identity_type+ - (String) The type of the identities to list.
142
- # Possible values are "EmailAddress" and "Domain". If this parameter is
143
- # omitted, then all identities will be listed.
144
- # * +:next_token+ - (String) The token to use for pagination.
145
- # * +:max_items+ - (Integer) The maximum number of identities per page.
146
- # Possible values are 1-100 inclusive.
147
- #
148
- # === Response Structure:
149
- #
150
- # * +:identities+ - (Array<String>)
151
- # * +:next_token+ - (String)
152
- #
100
+ # @param [Hash] options
101
+ # * +:identity_type+ - (String) The type of the identities to list.
102
+ # Possible values are "EmailAddress" and "Domain". If this parameter
103
+ # is omitted, then all identities will be listed.
104
+ # * +:next_token+ - (String) The token to use for pagination.
105
+ # * +:max_items+ - (Integer) The maximum number of identities per page.
106
+ # Possible values are 1-100 inclusive.
153
107
  # @return [Core::Response]
154
- #
108
+ # The #data method of the response object returns
109
+ # a hash with the following structure:
110
+ # * +:identities+ - (Array<String>)
111
+ # * +:next_token+ - (String)
155
112
  define_client_method :list_identities, 'ListIdentities'
156
113
 
157
114
  # Calls the ListVerifiedEmailAddresses API operation.
158
115
  # @method list_verified_email_addresses(options = {})
159
- #
160
- # === Options:
161
- #
162
- # This method accepts no options.
163
- #
164
- # === Response Structure:
165
- #
166
- # * +:verified_email_addresses+ - (Array<String>)
167
- #
116
+ # @param [Hash] options
168
117
  # @return [Core::Response]
169
- #
118
+ # The #data method of the response object returns
119
+ # a hash with the following structure:
120
+ # * +:verified_email_addresses+ - (Array<String>)
170
121
  define_client_method :list_verified_email_addresses, 'ListVerifiedEmailAddresses'
171
122
 
172
123
  # Calls the SendEmail API operation.
173
124
  # @method send_email(options = {})
174
- #
175
- # === Options:
176
- #
177
- # * +:source+ - *required* - (String) The identity's email address.
178
- # * +:destination+ - *required* - (Hash) The destination for this email,
179
- # composed of To:, CC:, and BCC: fields.
180
- # * +:to_addresses+ - (Array<String>) The To: field(s) of the message.
181
- # * +:cc_addresses+ - (Array<String>) The CC: field(s) of the message.
182
- # * +:bcc_addresses+ - (Array<String>) The BCC: field(s) of the
183
- # message.
184
- # * +:message+ - *required* - (Hash) The message to be sent.
185
- # * +:subject+ - *required* - (Hash) The subject of the message: A
186
- # short summary of the content, which will appear in the recipient's
187
- # inbox.
188
- # * +:data+ - *required* - (String) The textual data of the content.
189
- # * +:charset+ - (String) The character set of the content.
190
- # * +:body+ - *required* - (Hash) The message body.
191
- # * +:text+ - (Hash) The content of the message, in text format. Use
192
- # this for text-based email clients, or clients on high-latency
193
- # networks (such as mobile devices).
194
- # * +:data+ - *required* - (String) The textual data of the
195
- # content.
196
- # * +:charset+ - (String) The character set of the content.
197
- # * +:html+ - (Hash) The content of the message, in HTML format. Use
198
- # this for email clients that can process HTML. You can include
199
- # clickable links, formatted text, and much more in an HTML
125
+ # @param [Hash] options
126
+ # * +:source+ - *required* - (String) The identity's email address.
127
+ # * +:destination+ - *required* - (Hash) The destination for this
128
+ # email, composed of To:, CC:, and BCC: fields.
129
+ # * +:to_addresses+ - (Array<String>) The To: field(s) of the
200
130
  # message.
131
+ # * +:cc_addresses+ - (Array<String>) The CC: field(s) of the
132
+ # message.
133
+ # * +:bcc_addresses+ - (Array<String>) The BCC: field(s) of the
134
+ # message.
135
+ # * +:message+ - *required* - (Hash) The message to be sent.
136
+ # * +:subject+ - *required* - (Hash) The subject of the message: A
137
+ # short summary of the content, which will appear in the
138
+ # recipient's inbox.
201
139
  # * +:data+ - *required* - (String) The textual data of the
202
140
  # content.
203
141
  # * +:charset+ - (String) The character set of the content.
204
- # * +:reply_to_addresses+ - (Array<String>) The reply-to email
205
- # address(es) for the message. If the recipient replies to the message,
206
- # each reply-to address will receive the reply.
207
- # * +:return_path+ - (String) The email address to which bounce
208
- # notifications are to be forwarded. If the message cannot be delivered
209
- # to the recipient, then an error message will be returned from the
210
- # recipient's ISP; this message will then be forwarded to the email
211
- # address specified by the ReturnPath parameter.
212
- #
213
- # === Response Structure:
214
- #
215
- # * +:message_id+ - (String)
216
- #
142
+ # * +:body+ - *required* - (Hash) The message body.
143
+ # * +:text+ - (Hash) The content of the message, in text format.
144
+ # Use this for text-based email clients, or clients on
145
+ # high-latency networks (such as mobile devices).
146
+ # * +:data+ - *required* - (String) The textual data of the
147
+ # content.
148
+ # * +:charset+ - (String) The character set of the content.
149
+ # * +:html+ - (Hash) The content of the message, in HTML format.
150
+ # Use this for email clients that can process HTML. You can
151
+ # include clickable links, formatted text, and much more in an
152
+ # HTML message.
153
+ # * +:data+ - *required* - (String) The textual data of the
154
+ # content.
155
+ # * +:charset+ - (String) The character set of the content.
156
+ # * +:reply_to_addresses+ - (Array<String>) The reply-to email
157
+ # address(es) for the message. If the recipient replies to the
158
+ # message, each reply-to address will receive the reply.
159
+ # * +:return_path+ - (String) The email address to which bounce
160
+ # notifications are to be forwarded. If the message cannot be
161
+ # delivered to the recipient, then an error message will be returned
162
+ # from the recipient's ISP; this message will then be forwarded to
163
+ # the email address specified by the ReturnPath parameter.
217
164
  # @return [Core::Response]
218
- #
165
+ # The #data method of the response object returns
166
+ # a hash with the following structure:
167
+ # * +:message_id+ - (String)
219
168
  define_client_method :send_email, 'SendEmail'
220
169
 
221
170
  # Calls the SendRawEmail API operation.
222
171
  # @method send_raw_email(options = {})
223
- #
224
- # === Options:
225
- #
226
- # * +:source+ - (String) The identity's email address. If you specify the
227
- # Source parameter, then bounce notifications and complaints will be
228
- # sent to this email address. This takes precedence over any
229
- # Return-Path header that you might include in the raw text of the
230
- # message.
231
- # * +:destinations+ - (Array<String>) A list of destinations for the
232
- # message.
233
- # * +:raw_message+ - *required* - (Hash) The raw text of the message. The
234
- # client is responsible for ensuring the following: Message must
235
- # contain a header and a body, separated by a blank line. All required
236
- # header fields must be present. Each part of a multipart MIME message
237
- # must be formatted properly. MIME content types must be among those
238
- # supported by Amazon SES. Refer to the Amazon SES Developer Guide for
239
- # more details. Content must be base64-encoded, if MIME requires it.
240
- # * +:data+ - *required* - (String) The raw data of the message. The
241
- # client must ensure that the message format complies with Internet
242
- # email standards regarding email header fields, MIME types, MIME
243
- # encoding, and base64 encoding (if necessary). For more information,
244
- # go to theAmazon SES Developer Guide.
245
- #
246
- # === Response Structure:
247
- #
248
- # * +:message_id+ - (String)
249
- #
172
+ # @param [Hash] options
173
+ # * +:source+ - (String) The identity's email address. If you specify
174
+ # the Source parameter, then bounce notifications and complaints will
175
+ # be sent to this email address. This takes precedence over any
176
+ # Return-Path header that you might include in the raw text of the
177
+ # message.
178
+ # * +:destinations+ - (Array<String>) A list of destinations for the
179
+ # message.
180
+ # * +:raw_message+ - *required* - (Hash) The raw text of the message.
181
+ # The client is responsible for ensuring the following: Message must
182
+ # contain a header and a body, separated by a blank line. All
183
+ # required header fields must be present. Each part of a multipart
184
+ # MIME message must be formatted properly. MIME content types must be
185
+ # among those supported by Amazon SES. Refer to the Amazon SES
186
+ # Developer Guide for more details. Content must be base64-encoded,
187
+ # if MIME requires it.
188
+ # * +:data+ - *required* - (String) The raw data of the message. The
189
+ # client must ensure that the message format complies with Internet
190
+ # email standards regarding email header fields, MIME types, MIME
191
+ # encoding, and base64 encoding (if necessary). For more
192
+ # information, go to theAmazon SES Developer Guide.
250
193
  # @return [Core::Response]
251
- #
194
+ # The #data method of the response object returns
195
+ # a hash with the following structure:
196
+ # * +:message_id+ - (String)
252
197
  define_client_method :send_raw_email, 'SendRawEmail'
253
198
 
254
199
  # Calls the SetIdentityFeedbackForwardingEnabled API operation.
255
200
  # @method set_identity_feedback_forwarding_enabled(options = {})
256
- #
257
- # === Options:
258
- #
259
- # * +:identity+ - *required* - (String) The identity for which to set
260
- # feedback notification forwarding. Examples: user@example.com,
261
- # example.com.
262
- # * +:forwarding_enabled+ - *required* - (Boolean) Sets whether Amazon
263
- # SES will forward feedback notifications as email. +true+ specifies
264
- # that Amazon SES will forward feedback notifications as email, in
265
- # addition to any Amazon SNS topic publishing otherwise specified.
266
- # +false+ specifies that Amazon SES will publish feedback notifications
267
- # only through Amazon SNS. This value can only be set to +false+ when
268
- # topics are specified for both Bounce and Complaint topic types.
269
- #
270
- # === Response Structure:
271
- #
272
- # This method returns no response data.
273
- #
201
+ # @param [Hash] options
202
+ # * +:identity+ - *required* - (String) The identity for which to set
203
+ # feedback notification forwarding. Examples: user@example.com,
204
+ # example.com.
205
+ # * +:forwarding_enabled+ - *required* - (Boolean) Sets whether Amazon
206
+ # SES will forward feedback notifications as email. +true+ specifies
207
+ # that Amazon SES will forward feedback notifications as email, in
208
+ # addition to any Amazon SNS topic publishing otherwise specified.
209
+ # +false+ specifies that Amazon SES will publish feedback
210
+ # notifications only through Amazon SNS. This value can only be set
211
+ # to +false+ when topics are specified for both Bounce and Complaint
212
+ # topic types.
274
213
  # @return [Core::Response]
275
- #
276
214
  define_client_method :set_identity_feedback_forwarding_enabled, 'SetIdentityFeedbackForwardingEnabled'
277
215
 
278
216
  # Calls the SetIdentityNotificationTopic API operation.
279
217
  # @method set_identity_notification_topic(options = {})
280
- #
281
- # === Options:
282
- #
283
- # * +:identity+ - *required* - (String) The identity for which the topic
284
- # will be set. Examples: user@example.com, example.com.
285
- # * +:notification_type+ - *required* - (String) The type of feedback
286
- # notifications that will be published to the specified topic.
287
- # * +:sns_topic+ - (String) The Amazon Resource Name (ARN) of the Amazon
288
- # Simple Notification Service (Amazon SNS) topic. If the parameter is
289
- # ommited from the request or a null value is passed, the topic is
290
- # cleared and publishing is disabled.
291
- #
292
- # === Response Structure:
293
- #
294
- # This method returns no response data.
295
- #
218
+ # @param [Hash] options
219
+ # * +:identity+ - *required* - (String) The identity for which the
220
+ # topic will be set. Examples: user@example.com, example.com.
221
+ # * +:notification_type+ - *required* - (String) The type of feedback
222
+ # notifications that will be published to the specified topic.
223
+ # * +:sns_topic+ - (String) The Amazon Resource Name (ARN) of the
224
+ # Amazon Simple Notification Service (Amazon SNS) topic. If the
225
+ # parameter is ommited from the request or a null value is passed,
226
+ # the topic is cleared and publishing is disabled.
296
227
  # @return [Core::Response]
297
- #
298
228
  define_client_method :set_identity_notification_topic, 'SetIdentityNotificationTopic'
299
229
 
300
230
  # Calls the VerifyDomainIdentity API operation.
301
231
  # @method verify_domain_identity(options = {})
302
- #
303
- # === Options:
304
- #
305
- # * +:domain+ - *required* - (String) The domain to be verified.
306
- #
307
- # === Response Structure:
308
- #
309
- # * +:verification_token+ - (String)
310
- #
232
+ # @param [Hash] options
233
+ # * +:domain+ - *required* - (String) The domain to be verified.
311
234
  # @return [Core::Response]
312
- #
235
+ # The #data method of the response object returns
236
+ # a hash with the following structure:
237
+ # * +:verification_token+ - (String)
313
238
  define_client_method :verify_domain_identity, 'VerifyDomainIdentity'
314
239
 
315
240
  # Calls the VerifyEmailAddress API operation.
316
241
  # @method verify_email_address(options = {})
317
- #
318
- # === Options:
319
- #
320
- # * +:email_address+ - *required* - (String) The email address to be
321
- # verified.
322
- #
323
- # === Response Structure:
324
- #
325
- # This method returns no response data.
326
- #
242
+ # @param [Hash] options
243
+ # * +:email_address+ - *required* - (String) The email address to be
244
+ # verified.
327
245
  # @return [Core::Response]
328
- #
329
246
  define_client_method :verify_email_address, 'VerifyEmailAddress'
330
247
 
331
248
  # Calls the VerifyEmailIdentity API operation.
332
249
  # @method verify_email_identity(options = {})
333
- #
334
- # === Options:
335
- #
336
- # * +:email_address+ - *required* - (String) The email address to be
337
- # verified.
338
- #
339
- # === Response Structure:
340
- #
341
- # This method returns no response data.
342
- #
250
+ # @param [Hash] options
251
+ # * +:email_address+ - *required* - (String) The email address to be
252
+ # verified.
343
253
  # @return [Core::Response]
344
- #
345
254
  define_client_method :verify_email_identity, 'VerifyEmailIdentity'
346
255
 
347
256
  ## end client methods ##