Class: Hyperwallet::ErrorHandler

Inherits:
Faraday::Middleware
  • Object
show all
Defined in:
lib/hyperwallet/error.rb

Constant Summary collapse

ERROR_STATUSES =
400..600

Instance Method Summary collapse

Instance Method Details

#on_complete(env) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/hyperwallet/error.rb', line 17

def on_complete(env)
  case env[:status]
  when 400
    raise Hyperwallet::BadRequest, error_message(env)
  when 401
    raise Hyperwallet::Unauthorized, error_message(env)
  when 403
    raise Hyperwallet::Forbidden, error_message(env)
  when 404
    raise Hyperwallet::NotFound, error_message(env)
  when 500
    raise Hyperwallet::InternalServerError, error_message(env)
  when 502
    raise Hyperwallet::BadGateway, error_message(env)
  when 503
    raise Hyperwallet::ServiceUnavailable, error_message(env)
  when 504
    raise Hyperwallet::GatewayTimeout, error_message(env)
  when ERROR_STATUSES
    raise Hyperwallet::Error, error_message(env)
  end
end