lib/reviewed/client.rb in reviewed-0.5.0 vs lib/reviewed/client.rb in reviewed-0.6.0
- old
+ new
@@ -57,10 +57,11 @@
Reviewed::Request.new(resource: resource(method), client: self)
end
def connection
@connection ||= ::Faraday.new(url: base_uri) do |faraday|
+ faraday.use Faraday::Cache if ENV['REVIEWED_CACHE_REDIS_URL']
faraday.response :mashify
faraday.response :errors
faraday.response :json
faraday.request :api_key
faraday.request :url_encoded
@@ -76,15 +77,12 @@
request.params.merge!(self.request_params)
request.headers['X-Reviewed-Authorization'] ||= self.api_key
end
raise Reviewed::ApiError.new(msg: "API connection returned redirect or error: status=#{res.status}") if res.status > 204 and res.status != 404
res
- rescue Faraday::Error::ClientError => e
- message = <<-EOS.gsub(/^[ ]*/, '')
- API Error. method: #{method} url: #{base_uri} path: #{path} params: #{params.to_s} api_key: #{self.api_key}
- Original exception message:
- #{e.message}
- EOS
+ rescue Errno::ETIMEDOUT, Faraday::Error::ClientError => e
+ message = %Q!API Error. method: #{method} url: #{base_uri} path: #{path} params: #{params.to_s} api_key: #{self.api_key}!
+ message << " Original exception message: #{e.message}"
new_exception = Reviewed::ApiError.new(msg: message)
new_exception.set_backtrace(e.backtrace) # TODO not seeing in Airbrake
raise new_exception
end
end