semian 0.7.0 → 0.7.1

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: '084b4a21e0290cba65079b0490496da902f49b4c'
4
- data.tar.gz: 07b2fda101604725efad2e5b9c6d478af5792b6b
3
+ metadata.gz: 5d7a8e836a1f026b0dc5afcf4454f9949fcb44e0
4
+ data.tar.gz: 68858abd9489ecb207656472ff910a7f6ad824ce
5
5
  SHA512:
6
- metadata.gz: 3c351bf24c90d6ccd7b4b15e055451543d218608f663dc229b99fd533a06f731606ecabf93a101f206938b7f39113d447dbb35b234a5ba6b31d603154b1e3c06
7
- data.tar.gz: cc23e70d1c25cb10ed075a35b1f184caf07d5c5939e98ad5412cfd4da5a36bb5364811e46e020fbe2a56d93036cf3c0606e14d975519aca3bc391d5d6195a43f
6
+ metadata.gz: 1cacd63d08f2fc3b7f42509295b3735ed8948c9185a8a236af5be737226e89dbf7614eec29f6f7d3d26cce5e05f66a6ef3a550b5081c1e0736575427702b912b
7
+ data.tar.gz: f736999b06d706947b2ba81170c4fbd1f5b6d2fa909c4058d60806e918cea1bad5d6757726929feb1f8fa382d8a013f9ac6827527067dff6cb886a27c3e282e7
@@ -45,8 +45,8 @@ module Semian
45
45
 
46
46
  # The naked methods are exposed as `raw_query` and `raw_connect` for instrumentation purpose
47
47
  def self.included(base)
48
- base.send(:alias_method, :raw_request, :request)
49
- base.send(:remove_method, :request)
48
+ base.send(:alias_method, :raw_transport_request, :transport_request)
49
+ base.send(:remove_method, :transport_request)
50
50
 
51
51
  base.send(:alias_method, :raw_connect, :connect)
52
52
  base.send(:remove_method, :connect)
@@ -92,9 +92,20 @@ module Semian
92
92
  acquire_semian_resource(adapter: :http, scope: :connection) { raw_connect }
93
93
  end
94
94
 
95
- def request(req, body = nil, &block)
96
- return raw_request(req, body, &block) if disabled?
97
- acquire_semian_resource(adapter: :http, scope: :query) { raw_request(req, body, &block) }
95
+ def transport_request(req, &block)
96
+ return raw_transport_request(req, &block) if disabled?
97
+ acquire_semian_resource(adapter: :http, scope: :query) do
98
+ res = raw_transport_request(req, &block)
99
+ handle_error_responses(res)
100
+ res
101
+ end
102
+ end
103
+
104
+ private
105
+
106
+ def handle_error_responses(res)
107
+ return unless raw_semian_options.fetch(:open_circuit_server_errors, false)
108
+ semian_resource.mark_failed(res) if res.is_a?(::Net::HTTPServerError)
98
109
  end
99
110
  end
100
111
  end
@@ -1,3 +1,3 @@
1
1
  module Semian
2
- VERSION = '0.7.0'
2
+ VERSION = '0.7.1'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: semian
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scott Francis
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2017-06-19 00:00:00.000000000 Z
13
+ date: 2017-06-23 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rake-compiler