The Geocoder base class which defines the interface to be used by all other geocoders.
Call the geocoder service using the timeout if configured.
# File lib/geokit/geocoders.rb, line 141 def self.call_geocoder_service(url) Timeout::timeout(Geokit::Geocoders::request_timeout) { return self.do_get(url) } if Geokit::Geocoders::request_timeout return self.do_get(url) rescue TimeoutError return nil end
Not all geocoders can do reverse geocoding. So, unless the subclass explicitly overrides this method, a call to reverse_geocode will return an empty GeoLoc. If you happen to be using MultiGeocoder, this will cause it to failover to the next geocoder, which will hopefully be one which supports reverse geocoding.
# File lib/geokit/geocoders.rb, line 151 def self.do_reverse_geocode(latlng) return GeoLoc.new end
Main method which calls the do_geocode template method which subclasses are responsible for implementing. Returns a populated GeoLoc or an empty one with a failed success code.
# File lib/geokit/geocoders.rb, line 128 def self.geocode(address, options = {}) res = do_geocode(address, options) return res.nil? ? GeoLoc.new : res end
Main method which calls the do_reverse_geocode template method which subclasses are responsible for implementing. Returns a populated GeoLoc or an empty one with a failed success code.
# File lib/geokit/geocoders.rb, line 135 def self.reverse_geocode(latlng) res = do_reverse_geocode(latlng) return res.success? ? res : GeoLoc.new end
Generated with the Darkfish Rdoc Generator 2.