diff --git a/CHANGELOG.md b/CHANGELOG.md index b0bf5e93b98577ab600b35cbaefaf99942272744..ee1e9634dfe2cd11fe268f0f84a24a442d49be0c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ Major changes to Geocoder for each release. Please see the Git log for complete 1.2.4 (???) ------------------- * Add OpenCageData geocoder (thanks github.com/mtmail). +* Remove CloudMade geocoder. 1.2.3 (2014 Jul 11) ------------------- diff --git a/README.md b/README.md index 2dc1605edebef4984e0ef3e1228eb56e35368cfc..343bba8f935cdcfc425ad92ad9a3b1174fd67298 100644 --- a/README.md +++ b/README.md @@ -548,17 +548,6 @@ Data Science Toolkit provides an API whose reponse format is like Google's but w * **Limitations**: Only good for non-commercial use. For commercial usage please check http://developer.baidu.com/map/question.htm#qa0013 * **Notes**: To use Baidu set `Geocoder.configure(:lookup => :baidu, :api_key => "your_api_key")`. -#### CloudMade (`:cloudmade`) - -* **API key**: required -* **Quota**: 100,000 free requests, then purchase 100,000 more for $15 -* **Region**: world -* **SSL support**: yes ($5 per 100,000 requests) -* **Languages**: en -* **Documentation**: http://cloudmade.com/documentation/geocoding -* **Terms of Service**: http://cloudmade.com/api-terms-of-service -* **Limitations**: ? - #### Geocodio (`:geocodio`) * **API key**: required diff --git a/lib/geocoder/lookup.rb b/lib/geocoder/lookup.rb index eb1d4e5e004e7302ed6dc0e427ba862a58981aab..b2dcd136bcbb61004db4867011bee5b976d2f00d 100644 --- a/lib/geocoder/lookup.rb +++ b/lib/geocoder/lookup.rb @@ -36,7 +36,6 @@ module Geocoder :ovi, :here, :baidu, - :cloudmade, :geocodio, :smarty_streets, :test diff --git a/lib/geocoder/lookups/cloudmade.rb b/lib/geocoder/lookups/cloudmade.rb deleted file mode 100644 index afb6993e44c9007371057c3620a4c0155003641e..0000000000000000000000000000000000000000 --- a/lib/geocoder/lookups/cloudmade.rb +++ /dev/null @@ -1,35 +0,0 @@ -require 'geocoder/lookups/base' -require 'geocoder/results/cloudmade' - -module Geocoder::Lookup - class Cloudmade < Base - - def name - "Cloudmade" - end - - def query_url(query) - "http://geocoding.cloudmade.com/#{configuration.api_key}/geocoding/v2/find.js?#{url_query_string(query)}" - end - - def required_api_key_parts - ["key"] - end - - private - - def results(query) - data = fetch_data(query) - (data && data['features']) || [] - end - - def query_url_params(query) - { - :query => query.sanitized_text, - :return_location => true, - :return_geometry => false - }.merge(super) - end - - end -end diff --git a/lib/geocoder/results/cloudmade.rb b/lib/geocoder/results/cloudmade.rb deleted file mode 100644 index 4f62146e0b17236dd8c55d1e071bae898996b39b..0000000000000000000000000000000000000000 --- a/lib/geocoder/results/cloudmade.rb +++ /dev/null @@ -1,39 +0,0 @@ -require 'geocoder/results/base' - -module Geocoder::Result - class Cloudmade < Base - - def coordinates - @data["centroid"]["coordinates"] - end - - def street - @data["location"]["road"] - end - - def city - @data["location"]["city"] - end - - def state - @data["location"]["county"] - end - alias_method :state_code, :state - - def country - @data["location"]["country"] - end - alias_method :country_code, :country - - def postal_code - @data["location"]["postcode"] - end - - def address - [street, city, state, postal_code, country].compact.reject{|s| s.length == 0 }.join(", ") - end - - end -end - - diff --git a/test/unit/lookup_test.rb b/test/unit/lookup_test.rb index 7515b599526f70eda35f2c1c7bc4994bd6bdfc04..b1b30cb90e71d856b55b94d2aa62dc3e55fcd39b 100644 --- a/test/unit/lookup_test.rb +++ b/test/unit/lookup_test.rb @@ -87,7 +87,7 @@ class LookupTest < GeocoderTestCase def test_returns_empty_array_on_invalid_key silence_warnings do #Geocoder::Lookup.all_services_except_test.each do |l| - [:bing, :yahoo, :yandex, :maxmind, :cloudmade, :baidu, :baidu_ip].each do |l| + [:bing, :yahoo, :yandex, :maxmind, :baidu, :baidu_ip].each do |l| Geocoder.configure(:lookup => l) set_api_key!(l) assert_equal [], Geocoder.search("invalid key")