Class: GoogleMapsPlatform::GeocodingStatus

Inherits:
Object
  • Object
show all
Defined in:
lib/google_maps_platform/models/geocoding_status.rb

Overview

The status field within the Geocoding response object contains the status of the request, and may contain debugging information to help you track down why geocoding is not working. The “status” field may contain the following values: - OK indicates that no errors occurred; the address was successfully parsed and at least one geocode was returned. - ZERO_RESULTS indicates that the geocode was successful but returned no results. This may occur if the geocoder was passed a non-existent address or a latlng in a remote location. - OVER_DAILY_LIMIT indicates any of the following: - The API key is missing or invalid. - Billing has not been enabled on your account. - A self-imposed usage cap has been exceeded. - The provided method of payment is no longer valid (for example, a credit card has expired). - OVER_QUERY_LIMIT indicates that you are over your quota. - REQUEST_DENIED indicates that your request was denied. - INVALID_REQUEST generally indicates that the query (address, components, or latlng) is missing. - UNKNOWN_ERROR indicates that the request could not be processed due to a server error. The request may succeed if you try again.

Constant Summary collapse

GEOCODING_STATUS =
[
  # TODO: Write general description for OK
  OK = 'OK'.freeze,

  # TODO: Write general description for INVALID_REQUEST
  INVALID_REQUEST = 'INVALID_REQUEST'.freeze,

  # TODO: Write general description for OVER_DAILY_LIMIT
  OVER_DAILY_LIMIT = 'OVER_DAILY_LIMIT'.freeze,

  # TODO: Write general description for OVER_QUERY_LIMIT
  OVER_QUERY_LIMIT = 'OVER_QUERY_LIMIT'.freeze,

  # TODO: Write general description for REQUEST_DENIED
  REQUEST_DENIED = 'REQUEST_DENIED'.freeze,

  # TODO: Write general description for UNKNOWN_ERROR
  UNKNOWN_ERROR = 'UNKNOWN_ERROR'.freeze,

  # TODO: Write general description for ZERO_RESULTS
  ZERO_RESULTS = 'ZERO_RESULTS'.freeze
].freeze

Class Method Summary collapse

Class Method Details

.from_value(value, default_value = OK) ⇒ Object



53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/google_maps_platform/models/geocoding_status.rb', line 53

def self.from_value(value, default_value = OK)
  return default_value if value.nil?

  str = value.to_s.strip

  case str.downcase
  when 'ok' then OK
  when 'invalid_request' then INVALID_REQUEST
  when 'over_daily_limit' then OVER_DAILY_LIMIT
  when 'over_query_limit' then OVER_QUERY_LIMIT
  when 'request_denied' then REQUEST_DENIED
  when 'unknown_error' then UNKNOWN_ERROR
  when 'zero_results' then ZERO_RESULTS
  else
    default_value
  end
end

.validate(value) ⇒ Object



47
48
49
50
51
# File 'lib/google_maps_platform/models/geocoding_status.rb', line 47

def self.validate(value)
  return false if value.nil?

  GEOCODING_STATUS.include?(value)
end