class Faraday::Disqussion::RaiseHttp4xx
@private
Public Instance Methods
on_complete(env)
click to toggle source
# File lib/faraday/disqussion/raise_http_4xx.rb, line 8 def on_complete(env) case env[:status].to_i when 400 raise ::Disqussion::BadRequest.new(error_message(env), env[:response_headers]) when 401 raise ::Disqussion::Unauthorized.new(error_message(env), env[:response_headers]) when 403 raise ::Disqussion::Forbidden.new(error_message(env), env[:response_headers]) when 404 raise ::Disqussion::NotFound.new(error_message(env), env[:response_headers]) end end
Private Instance Methods
error_body(body)
click to toggle source
# File lib/faraday/disqussion/raise_http_4xx.rb, line 27 def error_body(body) if body['code'] && body['response'] "Disqus Error #{body['code']}: #{body['response']}" else nil end end
error_message(env)
click to toggle source
# File lib/faraday/disqussion/raise_http_4xx.rb, line 23 def error_message(env) "#{env[:method].to_s.upcase} #{env[:url].to_s}: (#{env[:status]}) #{error_body(env[:body])}" end