azure-storage 0.14.0.preview → 0.15.0.preview

Sign up to get free protection for your applications and to get access to all the features.
@@ -84,6 +84,8 @@ module Azure::Storage
84
84
  # * +:if_none_match+ - String. An ETag value. Specify an ETag value for this conditional header to create a new blob
85
85
  # only if the blob's ETag value does not match the value specified. If the values are identical,
86
86
  # the Blob service returns status code 412 (Precondition Failed).
87
+ # * +:lease_id+ - String. Required if the blob has an active lease. To perform this operation on a blob with an active lease,
88
+ # specify the valid lease ID for this header.
87
89
  #
88
90
  # See http://msdn.microsoft.com/en-us/library/azure/dd179451.aspx
89
91
  #
@@ -110,6 +112,7 @@ module Azure::Storage
110
112
 
111
113
  StorageService.add_metadata_to_headers options[:metadata], headers
112
114
  add_blob_conditional_headers options, headers
115
+ headers["x-ms-lease-id"] = options[:lease_id] if options[:lease_id]
113
116
 
114
117
  # call PutBlob with empty body
115
118
  response = call(:put, uri, content, headers, options)
@@ -138,6 +141,8 @@ module Azure::Storage
138
141
  # * +:timeout+ - Integer. A timeout in seconds.
139
142
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
140
143
  # in the analytics logs when storage analytics logging is enabled.
144
+ # * +:lease_id+ - String. Required if the blob has an active lease. To perform this operation on a blob with an
145
+ # active lease, specify the valid lease ID for this header.
141
146
  #
142
147
  # See http://msdn.microsoft.com/en-us/library/azure/dd135726.aspx
143
148
  #
@@ -151,6 +156,7 @@ module Azure::Storage
151
156
 
152
157
  headers = StorageService.common_headers
153
158
  StorageService.with_header headers, "Content-MD5", options[:content_md5]
159
+ headers["x-ms-lease-id"] = options[:lease_id] if options[:lease_id]
154
160
 
155
161
  response = call(:put, uri, content, headers, options)
156
162
  response.headers["Content-MD5"]
@@ -194,6 +200,8 @@ module Azure::Storage
194
200
  # * +:timeout+ - Integer. A timeout in seconds.
195
201
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
196
202
  # in the analytics logs when storage analytics logging is enabled.
203
+ # * +:lease_id+ - String. Required if the blob has an active lease. To perform this operation on a blob with an
204
+ # active lease, specify the valid lease ID for this header.
197
205
  #
198
206
  # This operation also supports the use of conditional headers to commit the block list if a specified condition is met.
199
207
  # For more information, see https://msdn.microsoft.com/en-us/library/azure/dd179371.aspx
@@ -219,6 +227,7 @@ module Azure::Storage
219
227
 
220
228
  StorageService.add_metadata_to_headers(options[:metadata], headers)
221
229
  add_blob_conditional_headers(options, headers)
230
+ headers["x-ms-lease-id"] = options[:lease_id] if options[:lease_id]
222
231
  end
223
232
 
224
233
  body = Serialization.block_list_to_xml(block_list)
@@ -251,6 +260,14 @@ module Azure::Storage
251
260
  # * +:timeout+ - Integer. A timeout in seconds.
252
261
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
253
262
  # in the analytics logs when storage analytics logging is enabled.
263
+ # * +:location_mode+ - LocationMode. Specifies the location mode used to decide
264
+ # which location the request should be sent to.
265
+ # * +:lease_id+ - String. If this header is specified, the operation will be performed only if both of the
266
+ # following conditions are met:
267
+ # - The blob's lease is currently active.
268
+ # - The lease ID specified in the request matches that of the blob.
269
+ # If this header is specified and both of these conditions are not met, the request will fail
270
+ # and the operation will fail with status code 412 (Precondition Failed).
254
271
  #
255
272
  # See http://msdn.microsoft.com/en-us/library/azure/dd179400.aspx
256
273
  #
@@ -263,9 +280,12 @@ module Azure::Storage
263
280
  StorageService.with_query query, "blocklisttype", options[:blocklist_type].to_s if options[:blocklist_type]
264
281
  StorageService.with_query query, "timeout", options[:timeout].to_s if options[:timeout]
265
282
 
266
- uri = blob_uri(container, blob, query)
283
+ headers = options[:lease_id] ? { "x-ms-lease-id" => options[:lease_id] } : {}
284
+
285
+ options[:request_location_mode] = RequestLocationMode::PRIMARY_OR_SECONDARY
286
+ uri = blob_uri(container, blob, query, options)
267
287
 
268
- response = call(:get, uri, nil, {}, options)
288
+ response = call(:get, uri, nil, headers, options)
269
289
 
270
290
  Serialization.block_list_from_xml(response.body)
271
291
  end
@@ -23,7 +23,6 @@
23
23
  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24
24
  # THE SOFTWARE.
25
25
  #--------------------------------------------------------------------------
26
- require "azure/storage/blob/serialization"
27
26
 
28
27
  module Azure::Storage::Blob
29
28
  module Container
@@ -97,6 +96,11 @@ module Azure::Storage::Blob
97
96
  # * +:timeout+ - Integer. A timeout in seconds.
98
97
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
99
98
  # in the analytics logs when storage analytics logging is enabled.
99
+ # * +:location_mode+ - LocationMode. Specifies the location mode used to decide
100
+ # which location the request should be sent to.
101
+ # * +:lease_id+ - String. If specified, Get Container Properties only succeeds if the container’s lease is
102
+ # active and matches this ID. If there is no active lease or the ID does not match, 412
103
+ # (Precondition Failed) is returned.
100
104
  #
101
105
  # See http://msdn.microsoft.com/en-us/library/azure/dd179370.aspx
102
106
  #
@@ -106,8 +110,11 @@ module Azure::Storage::Blob
106
110
  query = {}
107
111
  query["timeout"] = options[:timeout].to_s if options[:timeout]
108
112
 
113
+ headers = options[:lease_id] ? { "x-ms-lease-id" => options[:lease_id] } : {}
114
+
109
115
  # Call
110
- response = call(:get, container_uri(name, query), nil, {}, options)
116
+ options[:request_location_mode] = Azure::Storage::RequestLocationMode::PRIMARY_OR_SECONDARY
117
+ response = call(:get, container_uri(name, query, options), nil, headers, options)
111
118
 
112
119
  # result
113
120
  container = Serialization.container_from_headers(response.headers)
@@ -128,6 +135,11 @@ module Azure::Storage::Blob
128
135
  # * +:timeout+ - Integer. A timeout in seconds.
129
136
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
130
137
  # in the analytics logs when storage analytics logging is enabled.
138
+ # * +:location_mode+ - LocationMode. Specifies the location mode used to decide
139
+ # which location the request should be sent to.
140
+ # * +:lease_id+ - String. If specified, Get Container Metadata only succeeds if the container’s lease is
141
+ # active and matches this ID. If there is no active lease or the ID does not match, 412
142
+ # (Precondition Failed) is returned.
131
143
  #
132
144
  # See http://msdn.microsoft.com/en-us/library/azure/ee691976.aspx
133
145
  #
@@ -137,8 +149,11 @@ module Azure::Storage::Blob
137
149
  query = { "comp" => "metadata" }
138
150
  query["timeout"] = options[:timeout].to_s if options[:timeout]
139
151
 
152
+ headers = options[:lease_id] ? { "x-ms-lease-id" => options[:lease_id] } : {}
153
+
140
154
  # Call
141
- response = call(:get, container_uri(name, query), nil, {}, options)
155
+ options[:request_location_mode] = Azure::Storage::RequestLocationMode::PRIMARY_OR_SECONDARY
156
+ response = call(:get, container_uri(name, query, options), nil, headers, options)
142
157
 
143
158
  # result
144
159
  container = Serialization.container_from_headers(response.headers)
@@ -160,6 +175,9 @@ module Azure::Storage::Blob
160
175
  # * +:timeout+ - Integer. A timeout in seconds.
161
176
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
162
177
  # in the analytics logs when storage analytics logging is enabled.
178
+ # * +:lease_id+ - String. If specified, Set Container Metadata only succeeds if the container’s lease is
179
+ # active and matches this ID. If there is no active lease or the ID does not match, 412
180
+ # (Precondition Failed) is returned.
163
181
  #
164
182
  # See http://msdn.microsoft.com/en-us/library/azure/dd179362.aspx
165
183
  #
@@ -172,6 +190,7 @@ module Azure::Storage::Blob
172
190
  # Headers
173
191
  headers = StorageService.common_headers
174
192
  StorageService.add_metadata_to_headers(metadata, headers) if metadata
193
+ headers["x-ms-lease-id"] = options[:lease_id] if options[:lease_id]
175
194
 
176
195
  # Call
177
196
  call(:put, container_uri(name, query), nil, headers, options)
@@ -194,6 +213,11 @@ module Azure::Storage::Blob
194
213
  # * +:timeout+ - Integer. A timeout in seconds.
195
214
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
196
215
  # in the analytics logs when storage analytics logging is enabled.
216
+ # * +:location_mode+ - LocationMode. Specifies the location mode used to decide
217
+ # which location the request should be sent to.
218
+ # * +:lease_id+ - String. If specified, Get Container ACL only succeeds if the container’s lease is
219
+ # active and matches this ID. If there is no active lease or the ID does not match, 412
220
+ # (Precondition Failed) is returned.
197
221
  #
198
222
  # See http://msdn.microsoft.com/en-us/library/azure/dd179469.aspx
199
223
  #
@@ -206,8 +230,11 @@ module Azure::Storage::Blob
206
230
  query = { "comp" => "acl" }
207
231
  query["timeout"] = options[:timeout].to_s if options[:timeout]
208
232
 
233
+ headers = options[:lease_id] ? { "x-ms-lease-id" => options[:lease_id] } : {}
234
+
209
235
  # Call
210
- response = call(:get, container_uri(name, query), nil, {}, options)
236
+ options[:request_location_mode] = Azure::Storage::RequestLocationMode::PRIMARY_OR_SECONDARY
237
+ response = call(:get, container_uri(name, query, options), nil, headers, options)
211
238
 
212
239
  # Result
213
240
  container = Serialization.container_from_headers(response.headers)
@@ -234,6 +261,9 @@ module Azure::Storage::Blob
234
261
  # * +:timeout+ - Integer. A timeout in seconds.
235
262
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
236
263
  # in the analytics logs when storage analytics logging is enabled.
264
+ # * +:lease_id+ - String. If specified, Set Container ACL only succeeds if the container’s lease is
265
+ # active and matches this ID. If there is no active lease or the ID does not match, 412
266
+ # (Precondition Failed) is returned.
237
267
  #
238
268
  # See http://msdn.microsoft.com/en-us/library/azure/dd179391.aspx
239
269
  #
@@ -252,6 +282,7 @@ module Azure::Storage::Blob
252
282
  # Headers + body
253
283
  headers = StorageService.common_headers
254
284
  headers["x-ms-blob-public-access"] = public_access_level if public_access_level && public_access_level.to_s.length > 0
285
+ headers["x-ms-lease-id"] = options[:lease_id] if options[:lease_id]
255
286
 
256
287
  signed_identifiers = nil
257
288
  signed_identifiers = options[:signed_identifiers] if options[:signed_identifiers]
@@ -283,6 +314,11 @@ module Azure::Storage::Blob
283
314
  # * +:timeout+ - Integer. A timeout in seconds.
284
315
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
285
316
  # in the analytics logs when storage analytics logging is enabled.
317
+ # * +:lease_id+ - String. Required for version 2012-02-12 and newer if the container has an active lease. To call
318
+ # Delete Container on a container that has an active lease, specify the lease ID in this header.
319
+ # If this header is not specified when there is an active lease, Delete Container will return 409
320
+ # (Conflict). If you specify the wrong lease ID, or a lease ID on a container that does not have
321
+ # an active lease, Delete Container will return 412 (Precondition failed).
286
322
  #
287
323
  # See http://msdn.microsoft.com/en-us/library/azure/dd179408.aspx
288
324
  #
@@ -292,8 +328,10 @@ module Azure::Storage::Blob
292
328
  query = {}
293
329
  query["timeout"] = options[:timeout].to_s if options[:timeout]
294
330
 
331
+ headers = options[:lease_id] ? { "x-ms-lease-id" => options[:lease_id] } : {}
332
+
295
333
  # Call
296
- call(:delete, container_uri(name, query), nil, {}, options)
334
+ call(:delete, container_uri(name, query), nil, headers, options)
297
335
 
298
336
  # result
299
337
  nil
@@ -329,6 +367,8 @@ module Azure::Storage::Blob
329
367
  # * +:if_none_match+ - String. An ETag value. Specify an ETag value for this conditional header to acquire the lease
330
368
  # only if the container's ETag value does not match the value specified. If the values are identical,
331
369
  # the Blob service returns status code 412 (Precondition Failed).
370
+ # * +:origin+ - String. Optional. Specifies the origin from which the request is issued. The presence of this header results
371
+ # in cross-origin resource sharing headers on the response.
332
372
  #
333
373
  # See http://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
334
374
  #
@@ -368,6 +408,8 @@ module Azure::Storage::Blob
368
408
  # * +:if_none_match+ - String. An ETag value. Specify an ETag value for this conditional header to renew the lease
369
409
  # only if the container's ETag value does not match the value specified. If the values are identical,
370
410
  # the Blob service returns status code 412 (Precondition Failed).
411
+ # * +:origin+ - String. Optional. Specifies the origin from which the request is issued. The presence of this header results
412
+ # in cross-origin resource sharing headers on the response.
371
413
  # See http://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
372
414
  #
373
415
  # Returns the renewed lease id
@@ -403,6 +445,8 @@ module Azure::Storage::Blob
403
445
  # * +:if_none_match+ - String. An ETag value. Specify an ETag value for this conditional header to change the lease
404
446
  # only if the container's ETag value does not match the value specified. If the values are identical,
405
447
  # the Blob service returns status code 412 (Precondition Failed).
448
+ # * +:origin+ - String. Optional. Specifies the origin from which the request is issued. The presence of this header results
449
+ # in cross-origin resource sharing headers on the response.
406
450
  # See http://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
407
451
  #
408
452
  # Returns the changed lease id
@@ -438,6 +482,8 @@ module Azure::Storage::Blob
438
482
  # * +:if_none_match+ - String. An ETag value. Specify an ETag value for this conditional header to release the lease
439
483
  # only if the container's ETag value does not match the value specified. If the values are identical,
440
484
  # the Blob service returns status code 412 (Precondition Failed).
485
+ # * +:origin+ - String. Optional. Specifies the origin from which the request is issued. The presence of this header results
486
+ # in cross-origin resource sharing headers on the response.
441
487
  # See http://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
442
488
  #
443
489
  # Returns nil on success
@@ -485,6 +531,8 @@ module Azure::Storage::Blob
485
531
  # * +:if_none_match+ - String. An ETag value. Specify an ETag value for this conditional header to break the lease
486
532
  # only if the container's ETag value does not match the value specified. If the values are identical,
487
533
  # the Blob service returns status code 412 (Precondition Failed).
534
+ # * +:origin+ - String. Optional. Specifies the origin from which the request is issued. The presence of this header results
535
+ # in cross-origin resource sharing headers on the response.
488
536
  # See http://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
489
537
  #
490
538
  # Returns an Integer of the remaining lease time. This value is the approximate time remaining in the lease
@@ -536,6 +584,8 @@ module Azure::Storage::Blob
536
584
  # * +:timeout+ - Integer. A timeout in seconds.
537
585
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
538
586
  # in the analytics logs when storage analytics logging is enabled.
587
+ # * +:location_mode+ - LocationMode. Specifies the location mode used to decide
588
+ # which location the request should be sent to.
539
589
  #
540
590
  # NOTE: Metadata requested with the :metadata parameter must have been stored in
541
591
  # accordance with the naming restrictions imposed by the 2009-09-19 version of the Blob
@@ -567,7 +617,8 @@ module Azure::Storage::Blob
567
617
  query["include"] = included_datasets.join "," if included_datasets.length > 0
568
618
 
569
619
  # Scheme + path
570
- uri = container_uri(name, query)
620
+ options[:request_location_mode] = Azure::Storage::RequestLocationMode::PRIMARY_OR_SECONDARY
621
+ uri = container_uri(name, query, options)
571
622
 
572
623
  # Call
573
624
  response = call(:get, uri, nil, {}, options)
@@ -69,6 +69,8 @@ module Azure::Storage
69
69
  # * +:if_none_match+ - String. An ETag value. Specify an ETag value for this conditional header to create a new blob
70
70
  # only if the blob's ETag value does not match the value specified. If the values are identical,
71
71
  # the Blob service returns status code 412 (Precondition Failed).
72
+ # * +:lease_id+ - String. Required if the blob has an active lease. To perform this operation on a blob with an active lease,
73
+ # specify the valid lease ID for this header.
72
74
  #
73
75
  # See http://msdn.microsoft.com/en-us/library/azure/dd179451.aspx
74
76
  #
@@ -102,6 +104,7 @@ module Azure::Storage
102
104
 
103
105
  StorageService.add_metadata_to_headers options[:metadata], headers
104
106
  add_blob_conditional_headers options, headers
107
+ headers["x-ms-lease-id"] = options[:lease_id] if options[:lease_id]
105
108
 
106
109
  # call PutBlob with empty body
107
110
  response = call(:put, uri, nil, headers, options)
@@ -150,6 +153,8 @@ module Azure::Storage
150
153
  # * +:timeout+ - Integer. A timeout in seconds.
151
154
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
152
155
  # in the analytics logs when storage analytics logging is enabled.
156
+ # * +:lease_id+ - String. Required if the blob has an active lease. To perform this operation on a blob with an active lease,
157
+ # specify the valid lease ID for this header.
153
158
  #
154
159
  # See http://msdn.microsoft.com/en-us/library/azure/ee691975.aspx
155
160
  #
@@ -166,6 +171,7 @@ module Azure::Storage
166
171
 
167
172
  # clear default content type
168
173
  StorageService.with_header headers, "Content-Type", ""
174
+ headers["x-ms-lease-id"] = options[:lease_id] if options[:lease_id]
169
175
 
170
176
  # set optional headers
171
177
  unless options.empty?
@@ -257,7 +263,9 @@ module Azure::Storage
257
263
  # * +:timeout+ - Integer. A timeout in seconds.
258
264
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
259
265
  # in the analytics logs when storage analytics logging is enabled.
260
- # * +:if_modified_since+ - String. A DateTime value. Specify this conditional header to list the pages only if
266
+ # * +:location_mode+ - LocationMode. Specifies the location mode used to decide
267
+ # which location the request should be sent to.
268
+ # * +:if_modified_since+ - String. A DateTime value. Specify this conditional header to list the pages only if
261
269
  # the blob has been modified since the specified date/time. If the blob has not been modified,
262
270
  # the Blob service returns status code 412 (Precondition Failed).
263
271
  # * +:if_unmodified_since+ - String. A DateTime value. Specify this conditional header to list the pages only if
@@ -273,6 +281,12 @@ module Azure::Storage
273
281
  # were changed between target blob and previous snapshot. Changed pages include both updated and
274
282
  # cleared pages. The target blob may be a snapshot, as long as the snapshot specified by this
275
283
  # is the older of the two.
284
+ # * +:lease_id+ - String. If this header is specified, the operation will be performed only if both of the
285
+ # following conditions are met:
286
+ # - The blob's lease is currently active.
287
+ # - The lease ID specified in the request matches that of the blob.
288
+ # If this header is specified and both of these conditions are not met, the request will fail
289
+ # and the Get Blob operation will fail with status code 412 (Precondition Failed).
276
290
  #
277
291
  # See http://msdn.microsoft.com/en-us/library/azure/ee691973.aspx
278
292
  #
@@ -286,13 +300,15 @@ module Azure::Storage
286
300
  query.update("prevsnapshot" => options[:previous_snapshot]) if options[:previous_snapshot]
287
301
  StorageService.with_query query, "timeout", options[:timeout].to_s if options[:timeout]
288
302
 
289
- uri = blob_uri(container, blob, query)
303
+ options[:request_location_mode] = RequestLocationMode::PRIMARY_OR_SECONDARY
304
+ uri = blob_uri(container, blob, query, options)
290
305
 
291
306
  options[:start_range] = 0 if options[:end_range] && (not options[:start_range])
292
307
 
293
308
  headers = StorageService.common_headers
294
309
  StorageService.with_header headers, "x-ms-range", "bytes=#{options[:start_range]}-#{options[:end_range]}" if options[:start_range]
295
310
  add_blob_conditional_headers options, headers
311
+ headers["x-ms-lease-id"] = options[:lease_id] if options[:lease_id]
296
312
 
297
313
  response = call(:get, uri, nil, headers, options)
298
314
 
@@ -384,6 +400,12 @@ module Azure::Storage
384
400
  # * +:timeout+ - Integer. A timeout in seconds.
385
401
  # * +:request_id+ - String. Provides a client-generated, opaque value with a 1 KB character limit that is recorded
386
402
  # in the analytics logs when storage analytics logging is enabled.
403
+ # * +:lease_id+ - String. If this header is specified, the operation will be performed only if both of the
404
+ # following conditions are met:
405
+ # - The blob's lease is currently active.
406
+ # - The lease ID specified in the request matches that of the blob.
407
+ # If this header is specified and both of these conditions are not met, the request will fail
408
+ # and the Snapshot Blob operation will fail with status code 412 (Precondition Failed).
387
409
  #
388
410
  # See https://docs.microsoft.com/en-us/rest/api/storageservices/incremental-copy-blob
389
411
  #
@@ -408,6 +430,7 @@ module Azure::Storage
408
430
  unless options.empty?
409
431
  add_blob_conditional_headers options, headers
410
432
  StorageService.add_metadata_to_headers options[:metadata], headers
433
+ headers["x-ms-lease-id"] = options[:lease_id] if options[:lease_id]
411
434
  end
412
435
 
413
436
  response = call(:put, uri, nil, headers, options)
@@ -56,7 +56,7 @@ module Azure::Storage
56
56
  # * +:storage_connection_string+ - String. The storage connection string.
57
57
  # * +:storage_account_name+ - String. The name of the storage account.
58
58
  # * +:storage_access_key+ - Base64 String. The access key of the storage account.
59
- # * +:storage_sas_token+ - String. The signed access signiture for the storage account or one of its service.
59
+ # * +:storage_sas_token+ - String. The signed access signature for the storage account or one of its service.
60
60
  # * +:storage_blob_host+ - String. Specified Blob serivce endpoint or hostname
61
61
  # * +:storage_table_host+ - String. Specified Table serivce endpoint or hostname
62
62
  # * +:storage_queue_host+ - String. Specified Queue serivce endpoint or hostname
@@ -66,7 +66,7 @@ module Azure::Storage
66
66
  # * +:ca_file+ - String. File path of the CA file if having issue with SSL
67
67
  # * +:user_agent_prefix+ - String. The user agent prefix that can identify the application calls the library
68
68
  #
69
- # The valid set of options inlcude:
69
+ # The valid set of options include:
70
70
  # * Storage Emulator: +:use_development_storage+ required, +:development_storage_proxy_uri+ optionally
71
71
  # * Storage account name and key: +:storage_account_name+ and +:storage_access_key+ required, set +:storage_dns_suffix+ necessarily
72
72
  # * Storage account name and SAS token: +:storage_account_name+ and +:storage_sas_token+ required, set +:storage_dns_suffix+ necessarily
@@ -87,7 +87,7 @@ module Azure::Storage
87
87
  Azure::Storage::Service::StorageService.user_agent_prefix = options[:user_agent_prefix]
88
88
  options.delete :user_agent_prefix
89
89
  end
90
- Azure::Storage::Service::StorageService.register_request_callback &block if block_given?
90
+ Azure::Storage::Service::StorageService.register_request_callback(&block) if block_given?
91
91
  reset!(options)
92
92
  end
93
93
 
@@ -130,17 +130,17 @@ module Azure::Storage
130
130
  # * +:development_storage_proxy_uri+ - String. Used with +:use_development_storage+ if emulator is hosted other than localhost.
131
131
  # * +:storage_account_name+ - String. The name of the storage account.
132
132
  # * +:storage_access_key+ - Base64 String. The access key of the storage account.
133
- # * +:storage_sas_token+ - String. The signed access signiture for the storage account or one of its service.
134
- # * +:storage_blob_host+ - String. Specified Blob serivce endpoint or hostname
135
- # * +:storage_table_host+ - String. Specified Table serivce endpoint or hostname
136
- # * +:storage_queue_host+ - String. Specified Queue serivce endpoint or hostname
137
- # * +:storage_dns_suffix+ - String. The suffix of a regional Storage Serivce, to
133
+ # * +:storage_sas_token+ - String. The signed access signature for the storage account or one of its service.
134
+ # * +:storage_blob_host+ - String. Specified Blob service endpoint or hostname
135
+ # * +:storage_table_host+ - String. Specified Table service endpoint or hostname
136
+ # * +:storage_queue_host+ - String. Specified Queue service endpoint or hostname
137
+ # * +:storage_dns_suffix+ - String. The suffix of a regional Storage Service, to
138
138
  # * +:default_endpoints_protocol+ - String. http or https
139
139
  # * +:use_path_style_uri+ - String. Whether use path style URI for specified endpoints
140
140
  # * +:ca_file+ - String. File path of the CA file if having issue with SSL
141
141
  # * +:user_agent_prefix+ - String. The user agent prefix that can identify the application calls the library
142
142
  #
143
- # The valid set of options inlcude:
143
+ # The valid set of options include:
144
144
  # * Storage Emulator: +:use_development_storage+ required, +:development_storage_proxy_uri+ optionally
145
145
  # * Storage account name and key: +:storage_account_name+ and +:storage_access_key+ required, set +:storage_dns_suffix+ necessarily
146
146
  # * Storage account name and SAS token: +:storage_account_name+ and +:storage_sas_token+ required, set +:storage_dns_suffix+ necessarily
@@ -176,7 +176,7 @@ module Azure::Storage
176
176
  #
177
177
  # @return [Azure::Storage::Client]
178
178
  def create_from_env(&block)
179
- create &block
179
+ create(&block)
180
180
  end
181
181
 
182
182
  # Public: Creates an instance of [Azure::Storage::Client] from Environment Variables
@@ -26,6 +26,7 @@
26
26
 
27
27
  require "uri"
28
28
  require "azure/storage/client_options_error"
29
+ require "azure/storage/core/auth/anonymous_signer"
29
30
 
30
31
  module Azure::Storage
31
32
  module ClientOptions
@@ -46,7 +47,7 @@ module Azure::Storage
46
47
  # * +:storage_connection_string+ - String. The storage connection string.
47
48
  # * +:storage_account_name+ - String. The name of the storage account.
48
49
  # * +:storage_access_key+ - Base64 String. The access key of the storage account.
49
- # * +:storage_sas_token+ - String. The signed access signiture for the storage account or one of its service.
50
+ # * +:storage_sas_token+ - String. The signed access signature for the storage account or one of its service.
50
51
  # * +:storage_blob_host+ - String. Specified Blob serivce endpoint or hostname
51
52
  # * +:storage_table_host+ - String. Specified Table serivce endpoint or hostname
52
53
  # * +:storage_queue_host+ - String. Specified Queue serivce endpoint or hostname
@@ -55,7 +56,7 @@ module Azure::Storage
55
56
  # * +:use_path_style_uri+ - String. Whether use path style URI for specified endpoints
56
57
  # * +:ca_file+ - String. File path of the CA file if having issue with SSL
57
58
  #
58
- # The valid set of options inlcude:
59
+ # The valid set of options include:
59
60
  # * Storage Emulator: +:use_development_storage+ required, +:development_storage_proxy_uri+ optionally
60
61
  # * Storage account name and key: +:storage_account_name+ and +:storage_access_key+ required, set +:storage_dns_suffix+ necessarily
61
62
  # * Storage account name and SAS token: +:storage_account_name+ and +:storage_sas_token+ required, set +:storage_dns_suffix+ necessarily
@@ -74,7 +75,7 @@ module Azure::Storage
74
75
  if options.is_a? String
75
76
  options = parse_connection_string(options)
76
77
  elsif options.is_a? Hash
77
- # When the options are provided via singlton setup: Azure::Storage.setup()
78
+ # When the options are provided via singleton setup: Azure::Storage.setup()
78
79
  options = setup_options if options.length == 0
79
80
 
80
81
  options = parse_connection_string(options[:storage_connection_string]) if options[:storage_connection_string]
@@ -235,6 +236,8 @@ module Azure::Storage
235
236
  optional: [:use_path_style_uri, :default_endpoints_protocol, :storage_sas_token])
236
237
  results[:use_path_style_uri] = results.key?(:use_path_style_uri)
237
238
  normalize_hosts(results)
239
+ # Adds anonymous signer if no sas token
240
+ results[:signer] = Azure::Storage::Core::Auth::AnonymousSigner.new unless results.key?(:storage_sas_token)
238
241
  return results
239
242
  rescue InvalidOptionsError => e
240
243
  end