Module: Geokit::Geocoders
- Defined in:
- lib/geokit/geocoders.rb,
lib/geokit/geocoders/ip.rb,
lib/geokit/geocoders/fcc.rb,
lib/geokit/geocoders/bing.rb,
lib/geokit/geocoders/ripe.rb,
lib/geokit/multi_geocoder.rb,
lib/geokit/geocoders/yahoo.rb,
lib/geokit/geocoders/google.rb,
lib/geokit/geocoders/mapbox.rb,
lib/geokit/geocoders/yandex.rb,
lib/geokit/geocoders/base_ip.rb,
lib/geokit/geocoders/ipstack.rb,
lib/geokit/geocoders/maxmind.rb,
lib/geokit/geocoders/geobytes.rb,
lib/geokit/geocoders/geocodio.rb,
lib/geokit/geocoders/geonames.rb,
lib/geokit/geocoders/mapquest.rb,
lib/geokit/geocoders/opencage.rb,
lib/geokit/geocoders/geo_plugin.rb,
lib/geokit/geocoders/ca_geocoder.rb,
lib/geokit/geocoders/us_geocoder.rb,
lib/geokit/geocoders/openstreetmap.rb,
lib/geokit/geocoders/ip_api_geocoder.rb
Overview
Contains a range of geocoders:
### “regular” address geocoders
-
Yahoo Geocoder - requires an API key.
-
Geocoder.us - may require authentication if performing more than the free request limit.
-
Geocoder.ca - for Canada; may require authentication as well.
-
Geonames - a free geocoder
### address geocoders that also provide reverse geocoding
-
Google Geocoder - requires an API key.
### IP address geocoders
-
IP Geocoder - geocodes an IP address using hostip.info’s web service.
-
Geoplugin.net – another IP address geocoder
-
IP-API.com – another IP address geocoder
### The Multigeocoder
-
Multi Geocoder - provides failover for the physical location geocoders.
Some of these geocoders require configuration. You don’t have to provide it here. See the README.
Defined Under Namespace
Classes: AccessDeniedError, BaseIpGeocoder, BingGeocoder, CaGeocoder, FCCGeocoder, GeoPluginGeocoder, GeobytesGeocoder, GeocodeError, Geocoder, GeocodioGeocoder, GeonamesGeocoder, GoogleGeocoder, IpApiGeocoder, IpGeocoder, IpstackGeocoder, MapQuestGeocoder, MapboxGeocoder, MaxmindGeocoder, MultiGeocoder, NoSuchGeocoderError, OSMGeocoder, OpencageGeocoder, RipeGeocoder, TooManyQueriesError, UsGeocoder, YahooGeocoder, YandexGeocoder
Constant Summary collapse
- OsmGeocoder =
Geokit::Geocoders::OSMGeocoder
- @@proxy =
nil
- @@useragent =
nil
- @@request_timeout =
nil
- @@provider_order =
[:google, :us]
- @@ip_provider_order =
[:geo_plugin, :ip]
- @@logger =
Logger.new(STDOUT)
- @@host =
nil
- @@domain =
nil
- @@net_adapter =
Geokit::NetAdapter::NetHttp
- @@secure =
true
- @@ssl_verify_mode =
OpenSSL::SSL::VERIFY_PEER
Class Method Summary collapse
Class Method Details
.__define_accessors ⇒ Object
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/geokit/geocoders.rb', line 48 def self.__define_accessors class_variables.each do |v| sym = v.to_s.delete('@').to_sym next if self.respond_to? sym module_eval <<-EOS, __FILE__, __LINE__ def self.#{sym} value = if defined?(#{sym.to_s.upcase}) #{sym.to_s.upcase} else @@#{sym} end if value.is_a?(Hash) value = (self.domain.nil? ? nil : value[self.domain]) || value.values.first end value end def self.#{sym}=(obj) @@#{sym} = obj end EOS end end |