Sha256: 21ca8435ffa772819a53f70065c0c43e71cce78dac0ffb22669ec2c530948195
Contents?: true
Size: 1.44 KB
Versions: 4
Compression:
Stored size: 1.44 KB
Contents
# Class GeocoderClient represents server request of geocoding API (calculate # the location to use for a posting based on location-specific details within # the posting such as a street address or a latitude and longitude value). # # Its methods are used to query API with appropriate requests: # geocode(requests) - returns array of responses # # Example: # # client = GeocoderClient.new # request = GeocoderRequest.new # request.latitude = '37.77493' # request.longitude = '-122.41942' # # response = client.geocode(request) # # response.first.code # => "CAZ" # response.first.latitude # => 39.77493 # response.first.longitude # => -122.41942 class GeocoderClient < Client # Method geocode sends geocode request to Geocode API. # Takes array of GeocoderRequest objects as +requests+ parameter. # # Examples: # # request = GeocoderRequest.new # client.geocode(request) # => [GeocoderResponse] # # requests = [GeocoderRequest.new, GeocoderRequest.new] # client.geocode(requests) # => [GeocoderResponse, GeocoderResponse] # def geocode(geocoder_requests) geocoder_requests = [geocoder_requests] unless geocoder_requests.is_a? Array params = "data=[" params << geocoder_requests.collect{|request| "#{request.to_params}"}.join(',') params << "]" p params response = execute_post('geocoder/geocode', params) p response p decode(response) GeocoderResponse.from_array(decode(response)) end end
Version data entries
4 entries across 4 versions & 1 rubygems