Class: BrazeAPI::Response::RaiseError
- Inherits:
-
Faraday::Response::RaiseError
- Object
- Faraday::Response::RaiseError
- BrazeAPI::Response::RaiseError
- Defined in:
- lib/braze_api/response/raise_error.rb
Overview
Extends the Faraday RaiseError middleware to handle errors
Instance Method Summary collapse
-
#on_complete(env) ⇒ Object
rubocop:disable Metrics/AbcSize, Metrics/MethodLength.
Instance Method Details
#on_complete(env) ⇒ Object
rubocop:disable Metrics/AbcSize, Metrics/MethodLength
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/braze_api/response/raise_error.rb', line 7 def on_complete(env) # rubocop:disable Metrics/AbcSize, Metrics/MethodLength case env[:status] when 400 raise BrazeAPI::Errors::BadRequest, JSON.parse(response_values(env)[:body])['message'] when 401 raise BrazeAPI::Errors::Unauthorized when 404 raise BrazeAPI::Errors::NotFound, JSON.parse(response_values(env)[:body])['message'] when 429 raise BrazeAPI::Errors::RateLimited, JSON.parse(response_values(env)[:body])['message'] when ClientErrorStatuses raise BrazeAPI::Errors::InternalServerError, JSON.parse(response_values(env)[:body])['message'] else super end end |