class CC::Service::ResponseCheck
Constants
- ErrorStatuses
Public Instance Methods
on_complete(env)
click to toggle source
# File lib/cc/service/response_check.rb, line 19 def on_complete(env) if ErrorStatuses === env[:status] message = error_message(env) || "API request unsuccessful (#{env[:status]})" raise HTTPError.new(message, env) end end
Private Instance Methods
error_message(env)
click to toggle source
# File lib/cc/service/response_check.rb, line 30 def error_message(env) # We only handle Jira (or responses which look like Jira's). We will add # more logic here over time to account for other service's typical error # responses as we see them. if env[:response_headers]["content-type"] =~ /application\/json/ errors = JSON.parse(env[:body])["errors"] errors.is_a?(Hash) && errors.values.map(&:capitalize).join(", ") end rescue JSON::ParserError end