hknife 0.1.1 → 0.1.2

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 (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/hknife/version.rb +1 -1
  3. data/lib/hknife.rb +35 -1
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c140f08eb8eab6bae40eda6272ab8f94612aacb9
4
- data.tar.gz: 2331ebcb9e8758775086998cb15120d5010ca80e
3
+ metadata.gz: 802eece8a4e4495b3c5a611bcb35ceafd71dfa77
4
+ data.tar.gz: 21ba7733da42413d7846819aec2b5ba858186c5c
5
5
  SHA512:
6
- metadata.gz: 1e6d98a4311f46ae32eb75d3e95c7c827628adec853cd84642088a4997a4d1dfb473c5c7c88b889cd18f750cfe278c1f03ec553b898b3fc6ad8fd584668301cc
7
- data.tar.gz: baab1ace695a40d48e98dbd19ce3aa0832606d5fee313e52c267884a72cbfeb8b0d09b8addee22225bf412eb02c9a302dafb3e2e70403397992f99c0bd497a0c
6
+ metadata.gz: 94709900b637db4b4d04d6562465d4ee1b9927fa6c75b3c92817e9b9439a7a9d83e52eb0ac689fe01f9366619b7423a39be2f8712b9889e92b0f7bac9390a248
7
+ data.tar.gz: aeb37ae7272d906beec3760b8a8d878dff760742d2008fd3f45cb3417a277575e909e90d5a2a89917ff41bd4c74eea9caf36ce25ed35ced785da0b863ea4a3f8
@@ -1,3 +1,3 @@
1
1
  module Hknife
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
data/lib/hknife.rb CHANGED
@@ -33,6 +33,22 @@ module Hknife
33
33
  self
34
34
  end
35
35
 
36
+ def put(uri, data)
37
+ uriObj = URI.parse(uri)
38
+ @http_client = Net::HTTP.new(uriObj.host, uriObj.port)
39
+ @http_client.use_ssl = uriObj.scheme == 'https'
40
+ @request = Net::HTTP::Put.new(uriObj.path)
41
+ @requestor = lambda do |request|
42
+ res = @http_client.request(request)
43
+ case res['Content-Type']
44
+ when /application\/json/ then
45
+ res.body = JSON.parse(res.body)
46
+ end
47
+ res
48
+ end
49
+ self
50
+ end
51
+
36
52
  def post_form(uri, data)
37
53
  uriObj = URI.parse(uri)
38
54
  @http_client = Net::HTTP.new(uriObj.host, uriObj.port)
@@ -99,6 +115,13 @@ module Hknife
99
115
  self
100
116
  end
101
117
 
118
+ def put(uri, data)
119
+ req = Request.new()
120
+ req.put(uri, data)
121
+ @queue << req
122
+ self
123
+ end
124
+
102
125
  def header(hdr)
103
126
  @queue.last.header(hdr)
104
127
  self
@@ -159,6 +182,17 @@ module Hknife
159
182
  obj
160
183
  end
161
184
 
185
+ def put(uri, data)
186
+ obj = RequestQueue.new
187
+ obj.put(uri, data)
188
+
189
+ if block_given?
190
+ yield obj.request, obj.response
191
+ end
192
+
193
+ obj
194
+ end
195
+
162
196
  def header(hsh)
163
197
  obj = RequestQueue.new
164
198
  obj.header(hsh)
@@ -182,7 +216,7 @@ module Hknife
182
216
  end
183
217
  end
184
218
 
185
- delegate :get, :post_form, :request, :header, :parallel
219
+ delegate :get, :post_form, :request, :header, :parallel, :put
186
220
 
187
221
  class << self
188
222
  attr_accessor :target
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hknife
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - nyamage
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-03-07 00:00:00.000000000 Z
11
+ date: 2017-03-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler