4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# File 'lib/flex_commerce_api/json_api_client_extension/status_middleware.rb', line 4
def call(environment)
request_env = environment.dup
@app.call(environment).on_complete do |env|
handle_status(env[:status], env, request_env)
if env[:body].is_a?(Hash)
code = env[:body].fetch("meta", {}).fetch("status", 200).to_i
handle_status(code, env, request_env)
end
end
rescue Faraday::ConnectionFailed, Faraday::TimeoutError
raise ::FlexCommerceApi::Error::ConnectionError, environment
end
|