thrift_rack 0.2.0 → 0.2.1

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,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3112a7bb184974829cabffede052e726282e26b6
4
- data.tar.gz: f465453942e1f42e97d056c93c094f66a751af42
3
+ metadata.gz: e0608ab993648edf5b74086cfef549cc0c344887
4
+ data.tar.gz: 4d58ef96f632a4c6ba0c2f1ae115071c1fb6383e
5
5
  SHA512:
6
- metadata.gz: 59862634376d053336d96e7d36c4af4286a7802764ebb638d90e5aaa0b0fb261e1fbdd78d9bfaf03335f377b9cb3d3a22d4951b0e1cedf5d56f63696c7c69d68
7
- data.tar.gz: eeaa115cc611531979398ff94ff098eba40e58aea256dde0e1f0707c7c88d345fb210fda06f8712aa10ba26f7fde2f6ad32a906e0d2af82d12d0e83e1c635d00
6
+ metadata.gz: a5d573b744625771cd92d9a25bddb6a00b5f9163dda955069c4635a37c1b5bdce00d15c642c7867eccd4bb047710e1a15ef27d36cc4f9309b0a9b6a9d2321ef5
7
+ data.tar.gz: 8c40f164b016decf4c0d0d90212929a0881824380bb68efbcbcba5775339377ccd2e53dc3050cd57b9b3526b9c269d7af3e6b32d401428e29d8e0a2c97a5fc09
data/Gemfile.lock CHANGED
@@ -2,26 +2,26 @@ PATH
2
2
  remote: .
3
3
  specs:
4
4
  thrift_rack (0.2.0)
5
+ net-http-persistent (>= 3.0)
6
+ openssl (>= 1.0)
5
7
  rack (>= 2.0)
6
8
  thrift (~> 0.10.0)
7
- typhoeus (> 1.1)
8
9
 
9
10
  GEM
10
11
  remote: https://rubygems.org/
11
12
  specs:
12
13
  coderay (1.1.2)
13
- ethon (0.11.0)
14
- ffi (>= 1.3.0)
15
- ffi (1.9.23)
14
+ connection_pool (2.2.1)
16
15
  method_source (0.9.0)
16
+ net-http-persistent (3.0.0)
17
+ connection_pool (~> 2.2)
18
+ openssl (2.1.0)
17
19
  pry (0.11.3)
18
20
  coderay (~> 1.1.0)
19
21
  method_source (~> 0.9.0)
20
22
  rack (2.0.5)
21
23
  rake (10.5.0)
22
24
  thrift (0.10.0.0)
23
- typhoeus (1.3.0)
24
- ethon (>= 0.9.0)
25
25
 
26
26
  PLATFORMS
27
27
  ruby
@@ -55,7 +55,14 @@ class ThriftRack
55
55
  end
56
56
 
57
57
  class << self
58
- attr_accessor :app_name
58
+ attr_accessor :app_name, :pool_size
59
+
60
+ def pool_size=(p)
61
+ http = Net::HTTP::Persistent.new(name: self.app_name, pool_size: p)
62
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
63
+ HttpClientTransport.default = http
64
+ @pool_size = p
65
+ end
59
66
  end
60
67
  end
61
68
  end
@@ -1,6 +1,7 @@
1
1
  require 'thrift'
2
2
  require "stringio"
3
- require 'typhoeus'
3
+ require 'net/http/persistent'
4
+ require 'openssl'
4
5
  class ThriftRack
5
6
  class HttpClientTransport < Thrift::BaseTransport
6
7
  class RespCodeError < StandardError; end
@@ -20,13 +21,28 @@ class ThriftRack
20
21
 
21
22
 
22
23
  def flush
23
- resp = Typhoeus.post(@url, body: @outbuf, headers: @headers, ssl_verifypeer: false)
24
+ uri = URI(@url)
25
+ post = Net::HTTP::Post.new uri.path
26
+ post.body = @outbuf
27
+ post.initialize_http_header(@headers)
28
+ resp = ThriftRack::HttpClientTransport.default.request(uri, post)
24
29
  data = resp.body
25
- raise RespCodeError.new("#{resp.code} on #{@url} with body #{data}") unless resp.code == 200
30
+ raise RespCodeError.new("#{resp.code} on #{@url} with body #{data}") unless resp.code.to_i == 200
26
31
  data = Thrift::Bytes.force_binary_encoding(data)
27
32
  @inbuf = StringIO.new data
28
33
  ensure
29
34
  @outbuf = Thrift::Bytes.empty_byte_buffer
30
35
  end
36
+
37
+ class << self
38
+ attr_accessor :default
39
+
40
+ def default
41
+ return @default if @default
42
+ @default = Net::HTTP::Persistent.new
43
+ @default.verify_mode = OpenSSL::SSL::VERIFY_NONE
44
+ @default
45
+ end
46
+ end
31
47
  end
32
48
  end
@@ -1,3 +1,3 @@
1
1
  class ThriftRack
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
data/thrift_rack.gemspec CHANGED
@@ -23,7 +23,8 @@ Gem::Specification.new do |spec|
23
23
 
24
24
  spec.add_dependency "rack", ">= 2.0"
25
25
  spec.add_dependency "thrift", '~> 0.10.0'
26
- spec.add_dependency 'typhoeus', '> 1.1'
26
+ spec.add_dependency 'net-http-persistent', ">= 3.0.0"
27
+ spec.add_dependency 'openssl', ">= 1.0.0"
27
28
 
28
29
  spec.add_development_dependency "bundler", "~> 1.16"
29
30
  spec.add_development_dependency "rake", "~> 10.0"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thrift_rack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - xuxiangyang
@@ -39,19 +39,33 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: 0.10.0
41
41
  - !ruby/object:Gem::Dependency
42
- name: typhoeus
42
+ name: net-http-persistent
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '1.1'
47
+ version: 3.0.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">"
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: 3.0.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: openssl
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: 1.0.0
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
53
67
  - !ruby/object:Gem::Version
54
- version: '1.1'
68
+ version: 1.0.0
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: bundler
57
71
  requirement: !ruby/object:Gem::Requirement