Class: LinkedIn::FaradayMiddleware::LinkedinErrorResponse

Inherits:
Faraday::Response::Middleware
  • Object
show all
Defined in:
lib/linkedin/faraday_middleware/linkedin_error_response.rb

Constant Summary collapse

ERRORS =
{
  400 => BadRequest,
  401 => Unauthorized,
  403 => Forbidden,
  404 => NotFound,
  500 => InternalServerError
}

Instance Method Summary collapse

Instance Method Details

#on_complete(env) ⇒ Object



12
13
14
15
16
17
# File 'lib/linkedin/faraday_middleware/linkedin_error_response.rb', line 12

def on_complete(env)
  status = env[:status].to_i
  error = ERRORS[status] || Error

  raise error.new response_values(env) if status >= 400
end

#response_values(env) ⇒ Object



19
20
21
22
23
24
# File 'lib/linkedin/faraday_middleware/linkedin_error_response.rb', line 19

def response_values(env)
  {
    request: OpenStruct.new(headers: env[:request_headers], uri: env[:url]),
    response: env[:response]
  }
end