curlyrest 0.1.21 → 0.1.22

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 10e31632c8cdbe180955e29c9862146f4b77bfb2
4
- data.tar.gz: d9281e31089841adfb887afa6275cbf0ef5cfbab
3
+ metadata.gz: 5876f26582f2147488307418ca6a1b6eab058807
4
+ data.tar.gz: f2cacd52f9b75775f35f3b7e147dd9bc5ab48f38
5
5
  SHA512:
6
- metadata.gz: 7300e4ea3c9f22e1adb5610ebe4284d4932bc4be7d2f7c22c3b2dffa9b9f2e2034581acd0d2ebc4790e0de1253e371830a8dbd7abd7636783d31dbbdbb7bbdb7
7
- data.tar.gz: a5c31852e6b391afa10bfd78bb92deaaa73605d99bba09709e2eb81f2ebad3d548f646fa376c4a88e6d2efc111a7d1c208f127fc647231970a48b9716094a99c
6
+ metadata.gz: b7d97bd204e1442cabfdedba056ac6890664c60a1e056db104c496c9b2ace5b98b3d396ad6f3c62c432b0902a7e5408e6bc01aee98c59be9aad2929a04ceaeb0
7
+ data.tar.gz: 819443b20968f6faf02744db09cc8d60fec067a1a59316e3e5fbb9adb4d3c9f6fb849618e5e0c53d5c327952d257c5ecb8940ad353fc2b1f1d5f37f4e9c544e8
data/README.md CHANGED
@@ -20,7 +20,8 @@ Or install it yourself as:
20
20
 
21
21
  ## Usage
22
22
 
23
- Simply replace your use of require 'rest-client' with require 'curlyrest', and optionally add header :params of :use_curl with true or 'debug' which will cause the request to be executed with curl and response parsed to be compatable with rest-client.
23
+ Simply replace your use of require 'rest-client' with require 'curlyrest', and optionally add header of :use_curl with true or 'debug' which will cause the request to be executed with curl and response parsed to be compatable with rest-client.
24
+ Environment variable `FORCE_CURL_DEBUG` will cause all API calls to be executed and debugged with curl.
24
25
 
25
26
  ## Development
26
27
 
@@ -1,3 +1,3 @@
1
1
  module Curlyrest
2
- VERSION = '0.1.21'.freeze
2
+ VERSION = '0.1.22'.freeze
3
3
  end
data/lib/curlyrest.rb CHANGED
@@ -9,7 +9,7 @@ module Curlyrest
9
9
  include Net::HTTPHeader
10
10
  attr_reader :code, :http_version, :message, :headers
11
11
  attr_accessor :body, :inflate
12
- def initialize(http_version, status, message='')
12
+ def initialize(http_version, status, message = '')
13
13
  @message = message
14
14
  @http_version = http_version
15
15
  @code = status
@@ -49,7 +49,7 @@ module Curlyrest
49
49
  re = %r{^HTTP\/(\d+|\d+\.\d+)\s(\d+)\s*(.*)$}
50
50
  return unless re.match(line.chop)
51
51
  r = Regexp.last_match(2)
52
- return if r and r == '100'
52
+ return if r && r == '100'
53
53
  @state = :headers
54
54
  @response = CurlResponse.new(Regexp.last_match(1),
55
55
  Regexp.last_match(2),
@@ -62,7 +62,7 @@ module Curlyrest
62
62
  @response[key] << value
63
63
  else
64
64
  @response[key] = [@response[key], value]
65
- end
65
+ end
66
66
  else
67
67
  @response[key] = value
68
68
  end
@@ -130,13 +130,19 @@ module Curlyrest
130
130
  @line = "curl -isS -X #{@method.upcase}#{curl_proxy(@options[:proxy])}"\
131
131
  "#{curl_headers(@headers)}'#{@uri}' -d '#{curl_data(@payload)}'"
132
132
  end
133
+
134
+ def exec_curl
135
+ debug = options[:curl] == 'debug' || ENV['FORCE_CURL_DEBUG']
136
+ puts line if debug
137
+ r = `#{line}`
138
+ puts r if debug
139
+ r
140
+ end
133
141
  end
134
142
 
135
143
  def curl_transmit(uri, method, headers, payload)
136
144
  ct = CurlTransmitter.new(uri, method, headers, payload)
137
- puts ct.line if ct.options[:curl] == 'debug'
138
- r = `#{ct.line}`
139
- puts r if ct.options[:curl] == 'debug'
145
+ r = ct.exec_curl
140
146
  CurlResponseParser.new(r).response
141
147
  end
142
148
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: curlyrest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.21
4
+ version: 0.1.22
5
5
  platform: ruby
6
6
  authors:
7
7
  - Keith Williams
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-09-07 00:00:00.000000000 Z
11
+ date: 2018-09-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler