################################################################################ # # # Based on Octokit::Response::RaiseError # # # # Original Octokit license # # ---------------------------------------------------------------------------- # # Copyright (c) 2009-2016 Wynn Netherland, Adam Stacoviak, Erik Michaels-Ober # # # # Permission is hereby granted, free of charge, to any person obtaining a # # copy of this software and associated documentation files (the "Software"), # # to deal in the Software without restriction, including without limitation # # the rights to use, copy, modify, merge, publish, distribute, sublicense, # # and/or sell copies of the Software, and to permit persons to whom the # # Software is furnished to do so, subject to the following conditions: # # # # The above copyright notice and this permission notice shall be included # # in all copies or substantial portions of the Software. # # ---------------------------------------------------------------------------- # # # ################################################################################ require 'faraday' require 'hyperkit/error' module Hyperkit # Faraday response middleware module Response # This class raises an Hyperkit-flavored exception based # HTTP status codes returned by the API class RaiseError < Faraday::Response::Middleware private def on_complete(response) if error = Hyperkit::Error.from_response(response) raise error end end end end end