aws-sdk 1.1.4 → 1.2.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.
Files changed (58) hide show
  1. data/lib/aws.rb +2 -0
  2. data/lib/aws/api_config/ELB-2011-08-15.yml +380 -0
  3. data/lib/aws/api_config/SNS-2010-03-31.yml +2 -2
  4. data/lib/aws/api_config/SimpleEmailService-2010-12-01.yml +5 -5
  5. data/lib/aws/core.rb +18 -3
  6. data/lib/aws/core/client_logging.rb +5 -6
  7. data/lib/aws/core/collection.rb +241 -0
  8. data/lib/aws/core/collection/batchable.rb +133 -0
  9. data/lib/aws/core/collection/limitable.rb +92 -0
  10. data/lib/aws/core/collection/simple.rb +89 -0
  11. data/lib/aws/core/configuration.rb +23 -0
  12. data/lib/aws/core/option_grammar.rb +2 -0
  13. data/lib/aws/core/page_result.rb +73 -0
  14. data/lib/aws/ec2/security_group.rb +154 -89
  15. data/lib/aws/ec2/security_group/egress_ip_permission_collection.rb +1 -2
  16. data/lib/aws/ec2/security_group/{ip_permission_collection.rb → ingress_ip_permission_collection.rb} +4 -1
  17. data/lib/aws/ec2/security_group/ip_permission.rb +23 -45
  18. data/lib/aws/elb.rb +65 -0
  19. data/lib/aws/elb/availability_zone_collection.rb +138 -0
  20. data/lib/aws/elb/backend_server_policy_collection.rb +150 -0
  21. data/lib/aws/elb/client.rb +35 -0
  22. data/lib/aws/elb/client/xml.rb +33 -0
  23. data/lib/aws/elb/config.rb +18 -0
  24. data/lib/aws/elb/errors.rb +30 -0
  25. data/lib/aws/elb/instance_collection.rb +174 -0
  26. data/lib/aws/elb/listener.rb +189 -0
  27. data/lib/aws/elb/listener_collection.rb +119 -0
  28. data/lib/aws/elb/listener_opts.rb +45 -0
  29. data/lib/aws/elb/listener_spec.rb +14 -0
  30. data/lib/aws/elb/load_balancer.rb +255 -0
  31. data/lib/aws/elb/load_balancer_collection.rb +113 -0
  32. data/lib/aws/elb/load_balancer_policy.rb +93 -0
  33. data/lib/aws/elb/load_balancer_policy_collection.rb +208 -0
  34. data/lib/aws/elb/request.rb +23 -0
  35. data/lib/aws/iam/collection.rb +24 -26
  36. data/lib/aws/iam/group_user_collection.rb +21 -28
  37. data/lib/aws/iam/server_certificate_collection.rb +1 -37
  38. data/lib/aws/record.rb +1 -1
  39. data/lib/aws/record/base.rb +14 -1
  40. data/lib/aws/record/finder_methods.rb +4 -1
  41. data/lib/aws/record/validations.rb +73 -32
  42. data/lib/aws/{core/api_config_transform.rb → record/validators/method.rb} +9 -12
  43. data/lib/aws/s3/bucket_collection.rb +6 -4
  44. data/lib/aws/s3/client.rb +37 -6
  45. data/lib/aws/s3/config.rb +3 -1
  46. data/lib/aws/s3/prefixed_collection.rb +1 -2
  47. data/lib/aws/s3/presigned_post.rb +37 -4
  48. data/lib/aws/s3/s3_object.rb +93 -1
  49. data/lib/aws/simple_db/domain.rb +8 -0
  50. data/lib/aws/simple_db/item.rb +15 -0
  51. data/lib/aws/simple_db/item_collection.rb +255 -201
  52. data/lib/aws/simple_db/item_data.rb +1 -1
  53. data/lib/aws/simple_email_service/client.rb +0 -1
  54. data/lib/aws/sns/client.rb +0 -1
  55. metadata +107 -55
  56. data/lib/aws/core/collections.rb +0 -229
  57. data/lib/aws/simple_email_service/client/options.rb +0 -21
  58. data/lib/aws/sns/client/options.rb +0 -21
data/lib/aws.rb CHANGED
@@ -14,6 +14,7 @@
14
14
  require 'aws/core'
15
15
 
16
16
  require 'aws/ec2/config'
17
+ require 'aws/elb/config'
17
18
  require 'aws/iam/config'
18
19
  require 'aws/s3/config'
19
20
  require 'aws/simple_db/config'
@@ -25,6 +26,7 @@ require 'aws/sts/config'
25
26
  module AWS
26
27
  register_autoloads(self) do
27
28
  autoload :EC2, 'ec2'
29
+ autoload :ELB, 'elb'
28
30
  autoload :IAM, 'iam'
29
31
  autoload :S3, 's3'
30
32
  autoload :SimpleDB, 'simple_db'
@@ -0,0 +1,380 @@
1
+ # Copyright 2011 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ ---
15
+ :operations:
16
+ DescribeLoadBalancerPolicies:
17
+ :input:
18
+ PolicyNames:
19
+ - :membered_list:
20
+ - :string
21
+ LoadBalancerName:
22
+ - :string
23
+ :output:
24
+ - PolicyDescriptions:
25
+ - :list: member
26
+ - member:
27
+ - PolicyAttributeDescriptions:
28
+ - :list: member
29
+ CreateLoadBalancerPolicy:
30
+ :input:
31
+ PolicyAttributes:
32
+ - :membered_list:
33
+ - :structure:
34
+ AttributeValue:
35
+ - :string
36
+ AttributeName:
37
+ - :string
38
+ PolicyTypeName:
39
+ - :string
40
+ - :required
41
+ LoadBalancerName:
42
+ - :string
43
+ - :required
44
+ PolicyName:
45
+ - :string
46
+ - :required
47
+ :output: []
48
+
49
+ DescribeLoadBalancerPolicyTypes:
50
+ :input:
51
+ PolicyTypeNames:
52
+ - :membered_list:
53
+ - :string
54
+ :output:
55
+ - PolicyTypeDescriptions:
56
+ - :list: member
57
+ - member:
58
+ - PolicyAttributeTypeDescriptions:
59
+ - :list: member
60
+ CreateAppCookieStickinessPolicy:
61
+ :input:
62
+ CookieName:
63
+ - :string
64
+ - :required
65
+ LoadBalancerName:
66
+ - :string
67
+ - :required
68
+ PolicyName:
69
+ - :string
70
+ - :required
71
+ :output: []
72
+
73
+ DeregisterInstancesFromLoadBalancer:
74
+ :input:
75
+ LoadBalancerName:
76
+ - :string
77
+ - :required
78
+ Instances:
79
+ - :membered_list:
80
+ - :structure:
81
+ InstanceId:
82
+ - :string
83
+ - :required
84
+ :output:
85
+ - Instances:
86
+ - :list: member
87
+ DeleteLoadBalancerPolicy:
88
+ :input:
89
+ LoadBalancerName:
90
+ - :string
91
+ - :required
92
+ PolicyName:
93
+ - :string
94
+ - :required
95
+ :output: []
96
+
97
+ DisableAvailabilityZonesForLoadBalancer:
98
+ :input:
99
+ AvailabilityZones:
100
+ - :membered_list:
101
+ - :string
102
+ - :required
103
+ LoadBalancerName:
104
+ - :string
105
+ - :required
106
+ :output:
107
+ - AvailabilityZones:
108
+ - :list: member
109
+ DescribeLoadBalancers:
110
+ :input:
111
+ LoadBalancerNames:
112
+ - :membered_list:
113
+ - :string
114
+ :output:
115
+ - LoadBalancerDescriptions:
116
+ - :list: member
117
+ - member:
118
+ - ListenerDescriptions:
119
+ - :list: member
120
+ - member:
121
+ - Listener:
122
+ - LoadBalancerPort:
123
+ - :integer
124
+ - InstancePort:
125
+ - :integer
126
+ - PolicyNames:
127
+ - :list: member
128
+ - Policies:
129
+ - AppCookieStickinessPolicies:
130
+ - :list: member
131
+ - LBCookieStickinessPolicies:
132
+ - :list: member
133
+ - member:
134
+ - CookieExpirationPeriod:
135
+ - :long
136
+ - OtherPolicies:
137
+ - :list: member
138
+ - BackendServerDescriptions:
139
+ - :list: member
140
+ - member:
141
+ - InstancePort:
142
+ - :integer
143
+ - PolicyNames:
144
+ - :list: member
145
+ - AvailabilityZones:
146
+ - :list: member
147
+ - Instances:
148
+ - :list: member
149
+ - HealthCheck:
150
+ - Interval:
151
+ - :integer
152
+ - Timeout:
153
+ - :integer
154
+ - UnhealthyThreshold:
155
+ - :integer
156
+ - HealthyThreshold:
157
+ - :integer
158
+ - CreatedTime:
159
+ - :timestamp
160
+ DeleteLoadBalancerListeners:
161
+ :input:
162
+ LoadBalancerPorts:
163
+ - :membered_list:
164
+ - :integer
165
+ - :required
166
+ LoadBalancerName:
167
+ - :string
168
+ - :required
169
+ :output: []
170
+
171
+ CreateLoadBalancer:
172
+ :input:
173
+ Listeners:
174
+ - :membered_list:
175
+ - :structure:
176
+ InstancePort:
177
+ - :integer
178
+ - :required
179
+ Protocol:
180
+ - :string
181
+ - :required
182
+ InstanceProtocol:
183
+ - :string
184
+ LoadBalancerPort:
185
+ - :integer
186
+ - :required
187
+ SSLCertificateId:
188
+ - :string
189
+ - :required
190
+ AvailabilityZones:
191
+ - :membered_list:
192
+ - :string
193
+ - :required
194
+ LoadBalancerName:
195
+ - :string
196
+ - :required
197
+ :output: []
198
+
199
+ SetLoadBalancerPoliciesOfListener:
200
+ :input:
201
+ PolicyNames:
202
+ - :membered_list:
203
+ - :string
204
+ - :required
205
+ LoadBalancerPort:
206
+ - :integer
207
+ - :required
208
+ LoadBalancerName:
209
+ - :string
210
+ - :required
211
+ :output: []
212
+
213
+ CreateLBCookieStickinessPolicy:
214
+ :input:
215
+ CookieExpirationPeriod:
216
+ - :long
217
+ LoadBalancerName:
218
+ - :string
219
+ - :required
220
+ PolicyName:
221
+ - :string
222
+ - :required
223
+ :output: []
224
+
225
+ SetLoadBalancerListenerSSLCertificate:
226
+ :input:
227
+ LoadBalancerPort:
228
+ - :integer
229
+ - :required
230
+ LoadBalancerName:
231
+ - :string
232
+ - :required
233
+ SSLCertificateId:
234
+ - :string
235
+ - :required
236
+ :output: []
237
+
238
+ SetLoadBalancerPoliciesForBackendServer:
239
+ :input:
240
+ InstancePort:
241
+ - :integer
242
+ - :required
243
+ PolicyNames:
244
+ - :membered_list:
245
+ - :string
246
+ - :required
247
+ LoadBalancerName:
248
+ - :string
249
+ - :required
250
+ :output: []
251
+
252
+ EnableAvailabilityZonesForLoadBalancer:
253
+ :input:
254
+ AvailabilityZones:
255
+ - :membered_list:
256
+ - :string
257
+ - :required
258
+ LoadBalancerName:
259
+ - :string
260
+ - :required
261
+ :output:
262
+ - AvailabilityZones:
263
+ - :list: member
264
+ DescribeInstanceHealth:
265
+ :input:
266
+ LoadBalancerName:
267
+ - :string
268
+ - :required
269
+ Instances:
270
+ - :membered_list:
271
+ - :structure:
272
+ InstanceId:
273
+ - :string
274
+ :output:
275
+ - InstanceStates:
276
+ - :list: member
277
+ ConfigureHealthCheck:
278
+ :input:
279
+ HealthCheck:
280
+ - :structure:
281
+ HealthyThreshold:
282
+ - :integer
283
+ - :required
284
+ Timeout:
285
+ - :integer
286
+ - :required
287
+ Interval:
288
+ - :integer
289
+ - :required
290
+ UnhealthyThreshold:
291
+ - :integer
292
+ - :required
293
+ Target:
294
+ - :string
295
+ - :required
296
+ - :required
297
+ LoadBalancerName:
298
+ - :string
299
+ - :required
300
+ :output:
301
+ - HealthCheck:
302
+ - Interval:
303
+ - :integer
304
+ - Timeout:
305
+ - :integer
306
+ - UnhealthyThreshold:
307
+ - :integer
308
+ - HealthyThreshold:
309
+ - :integer
310
+ CreateLoadBalancerListeners:
311
+ :input:
312
+ Listeners:
313
+ - :membered_list:
314
+ - :structure:
315
+ InstancePort:
316
+ - :integer
317
+ - :required
318
+ Protocol:
319
+ - :string
320
+ - :required
321
+ InstanceProtocol:
322
+ - :string
323
+ LoadBalancerPort:
324
+ - :integer
325
+ - :required
326
+ SSLCertificateId:
327
+ - :string
328
+ - :required
329
+ LoadBalancerName:
330
+ - :string
331
+ - :required
332
+ :output: []
333
+
334
+ DeleteLoadBalancer:
335
+ :input:
336
+ LoadBalancerName:
337
+ - :string
338
+ - :required
339
+ :output: []
340
+
341
+ RegisterInstancesWithLoadBalancer:
342
+ :input:
343
+ LoadBalancerName:
344
+ - :string
345
+ - :required
346
+ Instances:
347
+ - :membered_list:
348
+ - :structure:
349
+ InstanceId:
350
+ - :string
351
+ - :required
352
+ :output:
353
+ - Instances:
354
+ - :list: member
355
+ :client_errors:
356
+ DuplicateListener: []
357
+
358
+ InvalidInstance: []
359
+
360
+ PolicyNotFound: []
361
+
362
+ ListenerNotFound: []
363
+
364
+ LoadBalancerNotFound: []
365
+
366
+ TooManyLoadBalancers: []
367
+
368
+ InvalidConfigurationRequest: []
369
+
370
+ PolicyTypeNotFound: []
371
+
372
+ TooManyPolicies: []
373
+
374
+ CertificateNotFound: []
375
+
376
+ DuplicateLoadBalancerName: []
377
+
378
+ DuplicatePolicyName: []
379
+
380
+ :server_errors: {}
@@ -61,11 +61,11 @@
61
61
  - :string
62
62
  - :required
63
63
  AWSAccountId:
64
- - :list:
64
+ - :membered_list:
65
65
  - :string
66
66
  - :required
67
67
  ActionName:
68
- - :list:
68
+ - :membered_list:
69
69
  - :string
70
70
  - :required
71
71
  :output: []
@@ -21,13 +21,13 @@
21
21
  Destination:
22
22
  - :structure:
23
23
  ToAddresses:
24
- - :list:
24
+ - :membered_list:
25
25
  - :string
26
26
  CcAddresses:
27
- - :list:
27
+ - :membered_list:
28
28
  - :string
29
29
  BccAddresses:
30
- - :list:
30
+ - :membered_list:
31
31
  - :string
32
32
  - :required
33
33
  Message:
@@ -59,7 +59,7 @@
59
59
  - :required
60
60
  - :required
61
61
  ReplyToAddresses:
62
- - :list:
62
+ - :membered_list:
63
63
  - :string
64
64
  ReturnPath:
65
65
  - :string
@@ -70,7 +70,7 @@
70
70
  Source:
71
71
  - :string
72
72
  Destinations:
73
- - :list:
73
+ - :membered_list:
74
74
  - :string
75
75
  RawMessage:
76
76
  - :structure:
@@ -55,7 +55,7 @@ require 'aws/core/autoloader'
55
55
  module AWS
56
56
 
57
57
  # Current version of the AWS SDK for Ruby
58
- VERSION = "1.1.4"
58
+ VERSION = "1.2.0"
59
59
 
60
60
  register_autoloads(self) do
61
61
  autoload :Errors, 'errors'
@@ -65,7 +65,6 @@ module AWS
65
65
 
66
66
  AWS.register_autoloads(self) do
67
67
  autoload :ApiConfig, 'api_config'
68
- autoload :ApiConfigTransform, 'api_config_transform'
69
68
  autoload :AsyncHandle, 'async_handle'
70
69
  autoload :AuthorizeV2, 'authorize_v2'
71
70
  autoload :AuthorizeV3, 'authorize_v3'
@@ -73,7 +72,7 @@ module AWS
73
72
  autoload :Cacheable, 'cacheable'
74
73
  autoload :Client, 'client'
75
74
  autoload :ClientLogging, 'client_logging'
76
- autoload :Collections, 'collections'
75
+ autoload :Collection, 'collection'
77
76
  autoload :Configuration, 'configuration'
78
77
  autoload :ConfiguredClientMethods, 'configured_client_methods'
79
78
  autoload :ConfiguredGrammars, 'configured_grammars'
@@ -88,6 +87,7 @@ module AWS
88
87
  autoload :Model, 'model'
89
88
  autoload :Naming, 'naming'
90
89
  autoload :OptionGrammar, 'option_grammar'
90
+ autoload :PageResult, 'page_result'
91
91
  autoload :Policy, 'policy'
92
92
  autoload :Resource, 'resource'
93
93
  autoload :ResourceCache, 'resource_cache'
@@ -188,6 +188,21 @@ module AWS
188
188
  # absolute minimum size (in bytes) each S3 multipart segment should be.
189
189
  # Defaults to 5242880 (5MB).
190
190
  #
191
+ # @option options [Symbol] :s3_server_side_encryption (nil) The
192
+ # algorithm to use when encrypting object data on the server
193
+ # side. The only valid value is +:aes256+, which specifies that
194
+ # the object should be stored using the AES encryption algorithm
195
+ # with 256 bit keys. Defaults to +nil+, meaning server side
196
+ # encryption is not used unless specified on each individual
197
+ # call to upload an object. This option controls the default
198
+ # behavior for the following methods:
199
+ #
200
+ # * {S3::S3Object#write}
201
+ # * {S3::S3Object#multipart_upload}
202
+ # * {S3::S3Object#copy_from} and {S3::S3Object#copy_to}
203
+ # * {S3::S3Object#presigned_post}
204
+ # * {S3::Bucket#presigned_post}
205
+ #
191
206
  # @option options [String] :secret_access_key (nil) AWS secret access
192
207
  # key credential.
193
208
  #