class Geocoder::Lookup::Base

def check_response_for_errors!(response)

def check_response_for_errors!(response)
  if response.code.to_i == 400
    raise_error(Geocoder::InvalidRequest) ||
      Geocoder.log(:warn, "Geocoding API error: 400 Bad Request")
  elsif response.code.to_i == 401
    raise_error(Geocoder::RequestDenied) ||
      Geocoder.log(:warn, "Geocoding API error: 401 Unauthorized")
  elsif response.code.to_i == 402
    raise_error(Geocoder::OverQueryLimitError) ||
      Geocoder.log(:warn, "Geocoding API error: 402 Payment Required")
  elsif response.code.to_i == 429
    raise_error(Geocoder::OverQueryLimitError) ||
      Geocoder.log(:warn, "Geocoding API error: 429 Too Many Requests")
  elsif response.code.to_i == 503
    raise_error(Geocoder::ServiceUnavailable) ||
      Geocoder.log(:warn, "Geocoding API error: 503 Service Unavailable")
  end
end