azure 0.7.3 → 0.7.4

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.
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 5ba36bbb5faaf4c52e3fc3b2f41b741b7c36722a
4
- data.tar.gz: 0458b5f67633e4908c5b76a2cd314d31c99f4424
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ MWYzOGVlNTBhYTU2YzcyMWEyM2RkZDMyNTI1M2VmMWY0YzM3MzdmOA==
5
+ data.tar.gz: !binary |-
6
+ YTNkY2FmZjEwNGZlOGIwZGM2ZmJhZTYzYTdiYmNiZTZkNDU1Zjc4Ng==
5
7
  SHA512:
6
- metadata.gz: bd1dc4d1b7c57f4dcf2b81d3830f9fe086b97dd35f23766ace5f6df20349e287dd1097b0e7a3a108d3ee7cdf15959130c3c1054531faff2f12e77a9e35945a51
7
- data.tar.gz: 0b8723c181c732524b3dd2cb91e9163e76cc879ea847f19dec3a0e3619d25e41a4e3170433271cf3e2980ff0387c36c4188ccb0225a8f462f78a9aec384a5ed6
8
+ metadata.gz: !binary |-
9
+ ZmE2ODY3OGY2MDA0NmNkMmMzN2UyZjY4ZGIxMmUxZmYzYzZmMWUwM2I4NmUy
10
+ MjM1NGYzMmNmN2JjNmU5MmMzNWVlYWFhOWI0YWY0MmEyOWRhNzVkN2VkZDQz
11
+ M2I4ZDFlOTY1MTZiNmQ4NThkNzc5OGNiNTMyYjIzYjFlMDUyZDY=
12
+ data.tar.gz: !binary |-
13
+ Y2Y0NmU5MGQ2YWRhZTE3ODZlNDQxMWFkMzRhZGQ0MWVhZmI2NDlmNTQwYzEx
14
+ OGY4NGQxMWMyZTVkMjRhYWJhMjA5ZjE1ZDJlMGEwYjc3N2NhZWVmZTdlOGRk
15
+ YWRhZjM0ZDY4NGUxZWUxYTNkZGFiMmNlMGZlYzQ0NzY2OTBhZWY=
data/Rakefile CHANGED
@@ -104,7 +104,7 @@ namespace :test do
104
104
  t.test_files = Dir['test/integration/**/*_test.rb'].reject do |path|
105
105
  # Reject the test paths those are not yet VCR recorded
106
106
  # Following three are Azure-Storage gem features and need to be removed when we take dependency on azure-storage gem
107
- path.include?('blob') || path.include?('queue') || path.include?('table')
107
+ path.include?('/blob/') || path.include?('/queue/') || path.include?('/table/')
108
108
  end
109
109
  t.verbose = true
110
110
  t.libs = %w(lib test)
data/azure.gemspec CHANGED
@@ -32,6 +32,7 @@ Gem::Specification.new do |s|
32
32
  s.required_ruby_version = '>= 1.9.3'
33
33
 
34
34
  s.add_runtime_dependency('addressable', '~> 2.3')
35
+ s.add_runtime_dependency('azure-core', '~> 0.1')
35
36
  s.add_runtime_dependency('faraday', '~> 0.9')
36
37
  s.add_runtime_dependency('faraday_middleware', '~> 0.10')
37
38
  s.add_runtime_dependency('json', '~> 1.8')
@@ -12,6 +12,7 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
  #--------------------------------------------------------------------------
15
+ require 'azure/core'
15
16
 
16
17
  module Azure
17
18
  module BaseManagement
@@ -92,7 +92,8 @@ module Azure
92
92
  private
93
93
 
94
94
  def default_client(opts)
95
- {client: Azure.client(opts || {})}
95
+ !opts.empty? ? {client: Azure.client(opts)} : {client: self}
96
96
  end
97
+
97
98
  end
98
99
  end
data/lib/azure/version.rb CHANGED
@@ -17,7 +17,7 @@ module Azure
17
17
  class Version
18
18
  MAJOR = 0 unless defined? MAJOR
19
19
  MINOR = 7 unless defined? MINOR
20
- UPDATE = 3 unless defined? UPDATE
20
+ UPDATE = 4 unless defined? UPDATE
21
21
  PRE = nil unless defined? PRE
22
22
 
23
23
  class << self
data/lib/azure.rb CHANGED
@@ -30,7 +30,6 @@ module Azure
30
30
  autoload :Default, 'azure/default'
31
31
  autoload :HttpClient, 'azure/http_client'
32
32
  autoload :Version, 'azure/version'
33
- autoload :HttpResponseHelper, 'azure/http_response_helper'
34
33
 
35
34
  # helpers because the naming is far too verbose
36
35
  autoload :BaseManagementService, 'azure/base_management/base_management_service'
@@ -63,15 +62,6 @@ module Azure
63
62
  autoload :CloudService, 'azure/cloud_service_management/cloud_service'
64
63
  end
65
64
 
66
- module Core
67
- autoload :Utility, 'azure/core/utility'
68
- autoload :Logger, 'azure/core/utility'
69
- autoload :Error, 'azure/core/error'
70
- autoload :Service, 'azure/core/service'
71
- autoload :FilteredService, 'azure/core/filtered_service'
72
- autoload :SignedService, 'azure/core/signed_service'
73
- end
74
-
75
65
  module Queue
76
66
  autoload :QueueService, 'azure/queue/queue_service'
77
67
  autoload :Message, 'azure/queue/message'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: azure
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.3
4
+ version: 0.7.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Microsoft Corporation
@@ -9,250 +9,264 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-04-12 00:00:00.000000000 Z
12
+ date: 2016-04-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: addressable
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - "~>"
18
+ - - ~>
19
19
  - !ruby/object:Gem::Version
20
20
  version: '2.3'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - "~>"
25
+ - - ~>
26
26
  - !ruby/object:Gem::Version
27
27
  version: '2.3'
28
+ - !ruby/object:Gem::Dependency
29
+ name: azure-core
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ~>
33
+ - !ruby/object:Gem::Version
34
+ version: '0.1'
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ~>
40
+ - !ruby/object:Gem::Version
41
+ version: '0.1'
28
42
  - !ruby/object:Gem::Dependency
29
43
  name: faraday
30
44
  requirement: !ruby/object:Gem::Requirement
31
45
  requirements:
32
- - - "~>"
46
+ - - ~>
33
47
  - !ruby/object:Gem::Version
34
48
  version: '0.9'
35
49
  type: :runtime
36
50
  prerelease: false
37
51
  version_requirements: !ruby/object:Gem::Requirement
38
52
  requirements:
39
- - - "~>"
53
+ - - ~>
40
54
  - !ruby/object:Gem::Version
41
55
  version: '0.9'
42
56
  - !ruby/object:Gem::Dependency
43
57
  name: faraday_middleware
44
58
  requirement: !ruby/object:Gem::Requirement
45
59
  requirements:
46
- - - "~>"
60
+ - - ~>
47
61
  - !ruby/object:Gem::Version
48
62
  version: '0.10'
49
63
  type: :runtime
50
64
  prerelease: false
51
65
  version_requirements: !ruby/object:Gem::Requirement
52
66
  requirements:
53
- - - "~>"
67
+ - - ~>
54
68
  - !ruby/object:Gem::Version
55
69
  version: '0.10'
56
70
  - !ruby/object:Gem::Dependency
57
71
  name: json
58
72
  requirement: !ruby/object:Gem::Requirement
59
73
  requirements:
60
- - - "~>"
74
+ - - ~>
61
75
  - !ruby/object:Gem::Version
62
76
  version: '1.8'
63
77
  type: :runtime
64
78
  prerelease: false
65
79
  version_requirements: !ruby/object:Gem::Requirement
66
80
  requirements:
67
- - - "~>"
81
+ - - ~>
68
82
  - !ruby/object:Gem::Version
69
83
  version: '1.8'
70
84
  - !ruby/object:Gem::Dependency
71
85
  name: mime-types
72
86
  requirement: !ruby/object:Gem::Requirement
73
87
  requirements:
74
- - - ">="
88
+ - - ! '>='
75
89
  - !ruby/object:Gem::Version
76
90
  version: '1'
77
- - - "<"
91
+ - - <
78
92
  - !ruby/object:Gem::Version
79
93
  version: '3.0'
80
94
  type: :runtime
81
95
  prerelease: false
82
96
  version_requirements: !ruby/object:Gem::Requirement
83
97
  requirements:
84
- - - ">="
98
+ - - ! '>='
85
99
  - !ruby/object:Gem::Version
86
100
  version: '1'
87
- - - "<"
101
+ - - <
88
102
  - !ruby/object:Gem::Version
89
103
  version: '3.0'
90
104
  - !ruby/object:Gem::Dependency
91
105
  name: nokogiri
92
106
  requirement: !ruby/object:Gem::Requirement
93
107
  requirements:
94
- - - "~>"
108
+ - - ~>
95
109
  - !ruby/object:Gem::Version
96
110
  version: '1.6'
97
111
  type: :runtime
98
112
  prerelease: false
99
113
  version_requirements: !ruby/object:Gem::Requirement
100
114
  requirements:
101
- - - "~>"
115
+ - - ~>
102
116
  - !ruby/object:Gem::Version
103
117
  version: '1.6'
104
118
  - !ruby/object:Gem::Dependency
105
119
  name: systemu
106
120
  requirement: !ruby/object:Gem::Requirement
107
121
  requirements:
108
- - - "~>"
122
+ - - ~>
109
123
  - !ruby/object:Gem::Version
110
124
  version: '2.6'
111
125
  type: :runtime
112
126
  prerelease: false
113
127
  version_requirements: !ruby/object:Gem::Requirement
114
128
  requirements:
115
- - - "~>"
129
+ - - ~>
116
130
  - !ruby/object:Gem::Version
117
131
  version: '2.6'
118
132
  - !ruby/object:Gem::Dependency
119
133
  name: thor
120
134
  requirement: !ruby/object:Gem::Requirement
121
135
  requirements:
122
- - - "~>"
136
+ - - ~>
123
137
  - !ruby/object:Gem::Version
124
138
  version: '0.19'
125
139
  type: :runtime
126
140
  prerelease: false
127
141
  version_requirements: !ruby/object:Gem::Requirement
128
142
  requirements:
129
- - - "~>"
143
+ - - ~>
130
144
  - !ruby/object:Gem::Version
131
145
  version: '0.19'
132
146
  - !ruby/object:Gem::Dependency
133
147
  name: uuid
134
148
  requirement: !ruby/object:Gem::Requirement
135
149
  requirements:
136
- - - "~>"
150
+ - - ~>
137
151
  - !ruby/object:Gem::Version
138
152
  version: '2.0'
139
153
  type: :runtime
140
154
  prerelease: false
141
155
  version_requirements: !ruby/object:Gem::Requirement
142
156
  requirements:
143
- - - "~>"
157
+ - - ~>
144
158
  - !ruby/object:Gem::Version
145
159
  version: '2.0'
146
160
  - !ruby/object:Gem::Dependency
147
161
  name: dotenv
148
162
  requirement: !ruby/object:Gem::Requirement
149
163
  requirements:
150
- - - "~>"
164
+ - - ~>
151
165
  - !ruby/object:Gem::Version
152
166
  version: '2.0'
153
167
  type: :development
154
168
  prerelease: false
155
169
  version_requirements: !ruby/object:Gem::Requirement
156
170
  requirements:
157
- - - "~>"
171
+ - - ~>
158
172
  - !ruby/object:Gem::Version
159
173
  version: '2.0'
160
174
  - !ruby/object:Gem::Dependency
161
175
  name: minitest
162
176
  requirement: !ruby/object:Gem::Requirement
163
177
  requirements:
164
- - - "~>"
178
+ - - ~>
165
179
  - !ruby/object:Gem::Version
166
180
  version: '5'
167
181
  type: :development
168
182
  prerelease: false
169
183
  version_requirements: !ruby/object:Gem::Requirement
170
184
  requirements:
171
- - - "~>"
185
+ - - ~>
172
186
  - !ruby/object:Gem::Version
173
187
  version: '5'
174
188
  - !ruby/object:Gem::Dependency
175
189
  name: minitest-reporters
176
190
  requirement: !ruby/object:Gem::Requirement
177
191
  requirements:
178
- - - "~>"
192
+ - - ~>
179
193
  - !ruby/object:Gem::Version
180
194
  version: '1'
181
195
  type: :development
182
196
  prerelease: false
183
197
  version_requirements: !ruby/object:Gem::Requirement
184
198
  requirements:
185
- - - "~>"
199
+ - - ~>
186
200
  - !ruby/object:Gem::Version
187
201
  version: '1'
188
202
  - !ruby/object:Gem::Dependency
189
203
  name: mocha
190
204
  requirement: !ruby/object:Gem::Requirement
191
205
  requirements:
192
- - - "~>"
206
+ - - ~>
193
207
  - !ruby/object:Gem::Version
194
208
  version: '1.0'
195
209
  type: :development
196
210
  prerelease: false
197
211
  version_requirements: !ruby/object:Gem::Requirement
198
212
  requirements:
199
- - - "~>"
213
+ - - ~>
200
214
  - !ruby/object:Gem::Version
201
215
  version: '1.0'
202
216
  - !ruby/object:Gem::Dependency
203
217
  name: rake
204
218
  requirement: !ruby/object:Gem::Requirement
205
219
  requirements:
206
- - - "~>"
220
+ - - ~>
207
221
  - !ruby/object:Gem::Version
208
222
  version: '10.0'
209
223
  type: :development
210
224
  prerelease: false
211
225
  version_requirements: !ruby/object:Gem::Requirement
212
226
  requirements:
213
- - - "~>"
227
+ - - ~>
214
228
  - !ruby/object:Gem::Version
215
229
  version: '10.0'
216
230
  - !ruby/object:Gem::Dependency
217
231
  name: timecop
218
232
  requirement: !ruby/object:Gem::Requirement
219
233
  requirements:
220
- - - "~>"
234
+ - - ~>
221
235
  - !ruby/object:Gem::Version
222
236
  version: '0.7'
223
237
  type: :development
224
238
  prerelease: false
225
239
  version_requirements: !ruby/object:Gem::Requirement
226
240
  requirements:
227
- - - "~>"
241
+ - - ~>
228
242
  - !ruby/object:Gem::Version
229
243
  version: '0.7'
230
244
  - !ruby/object:Gem::Dependency
231
245
  name: yard
232
246
  requirement: !ruby/object:Gem::Requirement
233
247
  requirements:
234
- - - "~>"
248
+ - - ~>
235
249
  - !ruby/object:Gem::Version
236
250
  version: '0.8'
237
251
  type: :development
238
252
  prerelease: false
239
253
  version_requirements: !ruby/object:Gem::Requirement
240
254
  requirements:
241
- - - "~>"
255
+ - - ~>
242
256
  - !ruby/object:Gem::Version
243
257
  version: '0.8'
244
258
  - !ruby/object:Gem::Dependency
245
259
  name: vcr
246
260
  requirement: !ruby/object:Gem::Requirement
247
261
  requirements:
248
- - - "~>"
262
+ - - ~>
249
263
  - !ruby/object:Gem::Version
250
264
  version: '3.0'
251
265
  type: :development
252
266
  prerelease: false
253
267
  version_requirements: !ruby/object:Gem::Requirement
254
268
  requirements:
255
- - - "~>"
269
+ - - ~>
256
270
  - !ruby/object:Gem::Version
257
271
  version: '3.0'
258
272
  description: Microsoft Azure Client Library for Ruby
@@ -262,7 +276,7 @@ executables:
262
276
  extensions: []
263
277
  extra_rdoc_files: []
264
278
  files:
265
- - ".env_sample"
279
+ - .env_sample
266
280
  - Gemfile
267
281
  - LICENSE.txt
268
282
  - Rakefile
@@ -287,22 +301,6 @@ files:
287
301
  - lib/azure/cloud_service_management/cloud_service_management_service.rb
288
302
  - lib/azure/cloud_service_management/serialization.rb
289
303
  - lib/azure/configurable.rb
290
- - lib/azure/core/auth/authorizer.rb
291
- - lib/azure/core/auth/shared_key.rb
292
- - lib/azure/core/auth/shared_key_lite.rb
293
- - lib/azure/core/auth/signer.rb
294
- - lib/azure/core/error.rb
295
- - lib/azure/core/filtered_service.rb
296
- - lib/azure/core/http/debug_filter.rb
297
- - lib/azure/core/http/http_error.rb
298
- - lib/azure/core/http/http_filter.rb
299
- - lib/azure/core/http/http_request.rb
300
- - lib/azure/core/http/http_response.rb
301
- - lib/azure/core/http/retry_policy.rb
302
- - lib/azure/core/http/signer_filter.rb
303
- - lib/azure/core/service.rb
304
- - lib/azure/core/signed_service.rb
305
- - lib/azure/core/utility.rb
306
304
  - lib/azure/default.rb
307
305
  - lib/azure/http_client.rb
308
306
  - lib/azure/http_response_helper.rb
@@ -383,19 +381,18 @@ require_paths:
383
381
  - lib
384
382
  required_ruby_version: !ruby/object:Gem::Requirement
385
383
  requirements:
386
- - - ">="
384
+ - - ! '>='
387
385
  - !ruby/object:Gem::Version
388
386
  version: 1.9.3
389
387
  required_rubygems_version: !ruby/object:Gem::Requirement
390
388
  requirements:
391
- - - ">="
389
+ - - ! '>='
392
390
  - !ruby/object:Gem::Version
393
391
  version: '0'
394
392
  requirements: []
395
393
  rubyforge_project:
396
- rubygems_version: 2.4.6
394
+ rubygems_version: 2.4.5
397
395
  signing_key:
398
396
  specification_version: 4
399
397
  summary: Official ruby client library to consume Microsoft Azure services.
400
398
  test_files: []
401
- has_rdoc:
@@ -1,36 +0,0 @@
1
- #-------------------------------------------------------------------------
2
- # # Copyright (c) Microsoft and contributors. All rights reserved.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- #--------------------------------------------------------------------------
15
- require "azure/core/configuration"
16
-
17
- module Azure
18
- module Core
19
- module Auth
20
- class Authorizer
21
- # Public: Signs an HTTP request before it's made, by adding the
22
- # Authorization header
23
- #
24
- # request - An Azure::Core::HttpRequest that hasn't been signed
25
- # signer - A signing strategy, such as Azure::Table::Auth::SharedKey
26
- #
27
- # Returns the modified request
28
- def sign(request, signer)
29
- signature = signer.sign(request.method, request.uri, request.headers)
30
- request.headers['Authorization'] = "#{signer.name} #{signature}"
31
- request
32
- end
33
- end
34
- end
35
- end
36
- end
@@ -1,118 +0,0 @@
1
- #-------------------------------------------------------------------------
2
- # # Copyright (c) Microsoft and contributors. All rights reserved.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- #--------------------------------------------------------------------------
15
- require 'cgi'
16
- require 'azure/core/auth/signer'
17
-
18
- module Azure
19
- module Core
20
- module Auth
21
- class SharedKey < Signer
22
- # The Azure account's name.
23
- attr :account_name
24
-
25
- # Initialize the Signer.
26
- #
27
- # @param account_name [String] The account name. Defaults to the one in the
28
- # global configuration.
29
- # @param access_key [String] The access_key encoded in Base64. Defaults to the
30
- # one in the global configuration.
31
- def initialize(account_name=Azure.storage_account_name, access_key=Azure.storage_access_key)
32
- @account_name = account_name
33
- super(access_key)
34
- end
35
-
36
- # The name of the strategy.
37
- #
38
- # @return [String]
39
- def name
40
- 'SharedKey'
41
- end
42
-
43
- # Create the signature for the request parameters
44
- #
45
- # @param method [Symbol] HTTP request method.
46
- # @param uri [URI] URI of the request we're signing.
47
- # @param headers [Hash] HTTP request headers.
48
- #
49
- # @return [String] base64 encoded signature
50
- def sign(method, uri, headers)
51
- "#{account_name}:#{super(signable_string(method, uri, headers))}"
52
- end
53
-
54
- # Sign the request
55
- #
56
- # @param req [Azure::Core::Http::HttpRequest] HTTP request to sign
57
- #
58
- # @return [Azure::Core::Http::HttpRequest]
59
- def sign_request(req)
60
- req.headers['Authorization'] = "#{name} #{sign(req.method, req.uri, req.headers)}"
61
- req
62
- end
63
-
64
- # Generate the string to sign.
65
- #
66
- # @param method [Symbol] HTTP request method.
67
- # @param uri [URI] URI of the request we're signing.
68
- # @param headers [Hash] HTTP request headers.
69
- #
70
- # @return [String]
71
- def signable_string(method, uri, headers)
72
- [
73
- method.to_s.upcase,
74
- headers.fetch('Content-Encoding', ''),
75
- headers.fetch('Content-Language', ''),
76
- headers.fetch('Content-Length', ''),
77
- headers.fetch('Content-MD5', ''),
78
- headers.fetch('Content-Type', ''),
79
- headers.fetch('Date', ''),
80
- headers.fetch('If-Modified-Since', ''),
81
- headers.fetch('If-Match', ''),
82
- headers.fetch('If-None-Match', ''),
83
- headers.fetch('If-Unmodified-Since', ''),
84
- headers.fetch('Range', ''),
85
- canonicalized_headers(headers),
86
- canonicalized_resource(uri)
87
- ].join("\n")
88
- end
89
-
90
- # Calculate the Canonicalized Headers string for a request.
91
- #
92
- # @param headers [Hash] HTTP request headers.
93
- #
94
- # @return [String] a string with the canonicalized headers.
95
- def canonicalized_headers(headers)
96
- headers = headers.map { |k,v| [k.to_s.downcase, v] }
97
- headers.select! { |k,v| k =~ /^x-ms-/ }
98
- headers.sort_by! { |(k,v)| k }
99
- headers.map! { |k,v| '%s:%s' % [k, v] }
100
- headers.map! { |h| h.gsub(/\s+/, ' ') }.join("\n")
101
- end
102
-
103
- # Calculate the Canonicalized Resource string for a request.
104
- #
105
- # @param uri [URI] URI of the request we're signing.
106
- #
107
- # @return [String] a string with the canonicalized resource.
108
- def canonicalized_resource(uri)
109
- resource = '/' + account_name + (uri.path.empty? ? '/' : uri.path)
110
- params = CGI.parse(uri.query.to_s).map { |k,v| [k.downcase, v] }
111
- params.sort_by! { |k,v| k }
112
- params.map! { |k,v| '%s:%s' % [k, v.map(&:strip).sort.join(',')] }
113
- [resource, *params].join("\n")
114
- end
115
- end
116
- end
117
- end
118
- end
@@ -1,48 +0,0 @@
1
- #-------------------------------------------------------------------------
2
- # # Copyright (c) Microsoft and contributors. All rights reserved.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- #--------------------------------------------------------------------------
15
- require "azure/core/auth/shared_key"
16
-
17
- module Azure
18
- module Core
19
- module Auth
20
- class SharedKeyLite < SharedKey
21
- # The name of the strategy.
22
- #
23
- # @return [String]
24
- def name
25
- 'SharedKeyLite'
26
- end
27
-
28
- # Generate the string to sign.
29
- #
30
- # @param method [Symbol] The HTTP request method.
31
- # @param uri [URI] The URI of the request we're signing.
32
- # @param headers [Hash] A Hash of HTTP request headers.
33
- #
34
- # Returns a plain text string.
35
- def signable_string(method, uri, headers)
36
- [
37
- method.to_s.upcase,
38
- headers.fetch('Content-MD5', ''),
39
- headers.fetch('Content-Type', ''),
40
- headers.fetch('Date') { raise IndexError, 'Headers must include Date' },
41
- canonicalized_headers(headers),
42
- canonicalized_resource(uri)
43
- ].join("\n")
44
- end
45
- end
46
- end
47
- end
48
- end