Sha256: da3c36d2526884ca8d7d6a849f94a70c6102a8b156beb52544d95c04df6b5452
Contents?: true
Size: 797 Bytes
Versions: 1
Compression:
Stored size: 797 Bytes
Contents
require 'hackeroo/error' module Hackeroo class Error # Raised when Hackeroo returns a 4xx HTTP status code or there's an error in Faraday class ClientError < Hackeroo::Error # Create a new error from an HTTP environment # # @param response [Hash] # @return [Hackeroo::Error] def self.from_response(response={}) new(parse_error(response[:body]), response[:response_headers]) end private def self.parse_error(body) if body.nil? '' elsif body[:error] body[:error] elsif body[:errors] first = Array(body[:errors]).first if first.is_a?(Hash) first[:message].chomp else first.chomp end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
hackeroo-0.1.0 | lib/hackeroo/error/client_error.rb |