geokit 1.7.0.rc1 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YmMyOTc1ZjczMWU1MzU3YzBjMDEzYzUzNGYxYzliNjYwOGVhNzdmNw==
4
+ ZjliOWQ5MWNlMjNjZjE0MzgwYzg1MDgyMWEyNGM0Y2YzY2YzODU3MA==
5
5
  data.tar.gz: !binary |-
6
- NDBjNjIyMWY0YjRhMGVjNWJlZjA0YmI3Yzk4MDMzOWM2N2U4MWM0Ng==
6
+ YzdiYzM4NmYyYTViMzg0MmM4Nzg0NTM1NDI4YzdkMmI1MjM5NmYzMg==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- MWE4NjBkMGU2N2U5NGFhYjZmNGUxMTA2NDQ3MDMxODEwYTliYmEwYWNhOWY0
10
- ZDJmZTkzNDQ1Y2RkMjAzNzE4NGNkYzgwYjViY2YyMDZkYjhlYTllZjg4OGU0
11
- YmNmZDQ2ZmVhZjMwMjgwYThlODA1MGJlMGRiMTcyYWI4YWEzYzU=
9
+ ZmQyNGY3MDM4YTU5OGQ2OTUxMGE4YWFkMzU1ZmUzZTMzMWEzMTkzMjBmNzhj
10
+ NTVmY2NmZThjNmJmMmQ5NjhhYTc1MDMyZTEwMWIwZjU0YTkyZGQyZTM2YWU0
11
+ Y2FkZmUwNmQ5N2Y1ZmJhZDllODAzMTJhMGU0N2U0NTA4NjViZWQ=
12
12
  data.tar.gz: !binary |-
13
- NmJmZGU0MTJiZDZlNzBiNzUwNzY3N2E4OTY3MzhiY2RhZTMyYzc3ZWQxODkw
14
- NzRjNDdjYTgwMTY1OTg1MWI3MDNmYTIzZTI1YTA2YmRlOGNkYjhhZTlhYWMw
15
- ODc5MjhmZDU5M2ZmMTcyMTQzYTliNzkzZDBiYWI3NzA1Nzg4MzA=
13
+ ZDg4N2UwODIxOTFmOGY3NGIzZGVjZGNiZjEwNDA0ZTM1NDA0YjRkODE2ZThi
14
+ Njk5NmZkOWUzZWIwZDJlMjcyZDMxYWVmMGUyNzVmNTQ3MmM5M2IzOWM5Y2Vh
15
+ ODhjNDY1MjcwZDU5MjYxNWM4OThlZmViYjg2MzUyZmViYzQyY2Q=
data/CHANGELOG.md CHANGED
@@ -1,4 +1,14 @@
1
- === 1.6.5 / 2012-01-23
1
+ ## 1.7.0
2
+
3
+ * Added Yahoo Boss, Yandex, RIPE and MaxMind Support
4
+ * Integration tests for google/yahoo boss
5
+ * Other minor fixes/improvements
6
+
7
+ ## 1.6.6
8
+
9
+ * Minor fixes/improvements
10
+
11
+ ## 1.6.5 / 2012-01-23
2
12
 
3
13
  * first release by @imajes, thanks @andre for all the hard work!
4
14
  * normalized whitespace
@@ -7,65 +17,71 @@
7
17
  * switched to multi json for agnostic json support
8
18
  * removed hoe and replaced with bundler's gem harness
9
19
 
10
- === 1.6.0 / 2011-05-27
20
+ ## 1.6.0 / 2011-05-27
11
21
 
12
22
  * added Google geocoder3 support (thanks @projectdx)
13
23
  * added FCC encoder support (thanks @paulschreiber)
14
24
  * various minor fixes.
15
25
 
16
- === 1.5.0 / 2009-09-21
26
+ ## 1.5.0 / 2009-09-21
27
+
17
28
  * fixed jruby compatibility (thanks manalang)
18
29
  * added country name to Google reverse geocoder (thanks joahking)
19
30
  * added DependentLocalityName as district, and SubAdministrativeAreaName as province (google geocoder only)
20
31
  * Google geocoder throws an error if you exceed geocoding rates (thanks drogus)
21
32
 
22
- === 1.4.1 / 2009-06-15
33
+ ## 1.4.1 / 2009-06-15
34
+
23
35
  * Fixed Ruby 1.9.1 compat and load order (thanks Niels Ganser)
24
36
 
25
- === 1.4.0 / 2009-05-27
37
+ ## 1.4.0 / 2009-05-27
38
+
26
39
  * Added country code/viewport biasing to GoogleGeocoder. Added Bounds#to_span method
27
40
  * Added suggested_bounds (Geokit::Bounds) property to GeoLoc. (Google geocoder only)
28
41
  * Added LatLng#reverse_geocode convenience method (thanks Tisho Georgiev for all three)
29
42
 
30
- === 1.3.2 / 2009-05-27
43
+ ## 1.3.2 / 2009-05-27
44
+
31
45
  * Fixed blank address geocoding bug
32
46
 
33
- === 1.3.1 / 2009-05-21
47
+ ## 1.3.1 / 2009-05-21
48
+
34
49
  * Support for External geocoders file (thanks dreamcat4)
35
50
  * Support multiple ip geocoders, including new setting for ip_provider_order (thanks dreamcat4)
36
51
 
37
- === 1.3.0 / 2009-04-11
52
+ ## 1.3.0 / 2009-04-11
53
+
38
54
  * Added capability to define multiple API keys for different domains that may be pointing to the same application (thanks Glenn Powell)
39
55
  * Added numeric accuracy accessor for Yahoo and Google geocoders (thanks Andrew Fecheyr Lippens)
40
56
  * Implement #hash and #eql? on LatLng to allow for using it as a hash key (thanks Luke Melia and Ross Kaffenberger)
41
- *
42
57
 
43
- === 1.2.6 / 2009-03-19
58
+ ## 1.2.6 / 2009-03-19
59
+
44
60
  * misc minor fixes
45
61
 
46
- === 1.2.5 / 2009-02-25
62
+ ## 1.2.5 / 2009-02-25
47
63
 
48
64
  * fixed GeoLoc.to_yaml
49
65
  * fixed minor google geocoding bug
50
66
  * now periodically publishing the Geokit gem to Rubyforge. Still maintaining development and managing contributions at Github
51
67
 
52
- === 1.2.4 / 2009-02-25
68
+ ## 1.2.4 / 2009-02-25
53
69
 
54
70
  * Improved Google geocoder in the Gem: Support for multiple geocoding results from the Google geocoder. (thanks github/pic)
55
71
 
56
- === 1.2.3 / 2009-02-01
72
+ ## 1.2.3 / 2009-02-01
57
73
 
58
74
  * Adding GeoPluginGeocoder for IP geocoding (thanks github/xjunior)
59
75
  * Ruby 1.9.1 compatibility and Unicode fixes (thanks github/Nielsomat)
60
76
  * various bug fixes
61
77
 
62
- === 1.2.1 / 2009-01-05
78
+ ## 1.2.1 / 2009-01-05
63
79
 
64
80
  * minor bug fixes
65
81
  * reverse geocoding added (Google only): res=Geokit::Geocoders::GoogleGeocoder.reverse_geocode "37.791821,-122.394679"
66
82
  * nautical miles added (in addition to miles and KM)
67
83
 
68
- === 1.2.0 / 2008-12-01
84
+ ## 1.2.0 / 2008-12-01
69
85
 
70
86
  * Improved Geocoder.us support -- respects authentication, and can geocode city names or zipcodes alone
71
87
  * cross-meridian finds work correctly with bounds conditions
@@ -73,14 +89,17 @@
73
89
  * added Geonames geocoder
74
90
  * the gem and plugin are now hosted at Github.
75
91
 
76
- === 1.1.1 / 2008-01-20
92
+ ## 1.1.1 / 2008-01-20
93
+
77
94
  * fixes for distance calculation (in-memory and database) when distances are either very small or 0.
78
95
  * NOTE: older versions of MySQL/Postgres may not work. See readme for more info.
79
96
 
80
- === 1.1.0 / 2007-12-07
97
+ ## 1.1.0 / 2007-12-07
98
+
81
99
  * Geokit is now Rails 2.0 / Edge friendly.
82
100
 
83
- === 1.0.0 / 2007-07-22
101
+ ## 1.0.0 / 2007-07-22
102
+
84
103
  * see http://earthcode.com/blog/2007/07/new_geokit_release.html
85
104
  * auto geocoding: an option to automatically geocode a model's address field on create
86
105
  * in-memory sort-by-distance for arrays of location objects
data/Gemfile CHANGED
@@ -3,4 +3,5 @@ source "http://rubygems.org"
3
3
  # Specify your gem's dependencies in geokit.gemspec
4
4
  gemspec
5
5
 
6
- gem 'coveralls', :require => false
6
+ gem 'mime-types', '< 2.0', :platforms => :ruby_18
7
+ gem 'geoip' # for testing - only required for max_mind
data/README.markdown CHANGED
@@ -17,11 +17,10 @@ The Geokit gem provides:
17
17
  * Rectangular bounds calculations: is a point within a given rectangular bounds?
18
18
  * Heading and midpoint calculations
19
19
 
20
- Combine this gem with the [geokit-rails plugin](http://github.com/imajes/geokit-rails) to get location-based finders for your Rails app.
20
+ Combine this gem with the [geokit-rails plugin](http://github.com/geokit/geokit-rails) to get location-based finders for your Rails app.
21
21
 
22
- * Geokit main site [http://rubygeokit.org/](http://rubygeokit.org).
23
- * Repository at Github: [http://github.com/imajes/geokit](http://github.com/imajes/geokit).
24
- * RDoc pages: [http://rdoc.info/github/imajes/geokit/master/frames](http://rdoc.info/github/imajes/geokit/master/frames)
22
+ * Repository at Github: [http://github.com/geokit/geokit](http://github.com/geokit/geokit).
23
+ * RDoc pages: [http://rdoc.info/github/geokit/geokit/master/frames](http://rdoc.info/github/geokit/geokit/master/frames)
25
24
  * Follow the Google Group for updates and discussion on Geokit: [http://groups.google.com/group/geokit](http://groups.google.com/group/geokit)
26
25
 
27
26
  ## INSTALL
@@ -126,7 +125,7 @@ If you're using this gem by itself, here are the configuration options:
126
125
  # Geokit::Geocoders::ip_provider_order = [:external,:geo_plugin,:ip]
127
126
  ```
128
127
 
129
- If you're using this gem with the [geokit-rails plugin](http://github.com/imajes/geokit-rails), the plugin
128
+ If you're using this gem with the [geokit-rails plugin](http://github.com/geokit/geokit-rails), the plugin
130
129
  creates a template with these settings and places it in `config/initializers/geokit_config.rb`.
131
130
 
132
131
  ## SUPPORTED GEOCODERS
data/Rakefile CHANGED
@@ -1,7 +1,8 @@
1
1
  require "bundler/gem_tasks"
2
2
  require 'rake/testtask'
3
3
 
4
- task :default => :test
4
+ task :default do
5
+ end
5
6
 
6
7
  Rake::TestTask.new do |t|
7
8
  t.libs << "test"
Binary file
@@ -0,0 +1,104 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://maps.google.com/maps/api/geocode/json?address=San%20Francisco,%20CA&sensor=false
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - '*/*'
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Content-Type:
22
+ - application/json; charset=UTF-8
23
+ Date:
24
+ - Wed, 13 Nov 2013 14:55:52 GMT
25
+ Expires:
26
+ - Thu, 14 Nov 2013 14:55:52 GMT
27
+ Cache-Control:
28
+ - public, max-age=86400
29
+ Vary:
30
+ - Accept-Language
31
+ Access-Control-Allow-Origin:
32
+ - '*'
33
+ Server:
34
+ - mafe
35
+ X-Xss-Protection:
36
+ - 1; mode=block
37
+ X-Frame-Options:
38
+ - SAMEORIGIN
39
+ Transfer-Encoding:
40
+ - chunked
41
+ body:
42
+ encoding: UTF-8
43
+ string: |
44
+ {
45
+ "results" : [
46
+ {
47
+ "address_components" : [
48
+ {
49
+ "long_name" : "San Francisco",
50
+ "short_name" : "SF",
51
+ "types" : [ "locality", "political" ]
52
+ },
53
+ {
54
+ "long_name" : "San Francisco County",
55
+ "short_name" : "San Francisco County",
56
+ "types" : [ "administrative_area_level_2", "political" ]
57
+ },
58
+ {
59
+ "long_name" : "California",
60
+ "short_name" : "CA",
61
+ "types" : [ "administrative_area_level_1", "political" ]
62
+ },
63
+ {
64
+ "long_name" : "United States",
65
+ "short_name" : "US",
66
+ "types" : [ "country", "political" ]
67
+ }
68
+ ],
69
+ "formatted_address" : "San Francisco, CA, USA",
70
+ "geometry" : {
71
+ "bounds" : {
72
+ "northeast" : {
73
+ "lat" : 37.9297707,
74
+ "lng" : -122.3279149
75
+ },
76
+ "southwest" : {
77
+ "lat" : 37.6933354,
78
+ "lng" : -123.1077733
79
+ }
80
+ },
81
+ "location" : {
82
+ "lat" : 37.7749295,
83
+ "lng" : -122.4194155
84
+ },
85
+ "location_type" : "APPROXIMATE",
86
+ "viewport" : {
87
+ "northeast" : {
88
+ "lat" : 37.812,
89
+ "lng" : -122.3482
90
+ },
91
+ "southwest" : {
92
+ "lat" : 37.70339999999999,
93
+ "lng" : -122.527
94
+ }
95
+ }
96
+ },
97
+ "types" : [ "locality", "political" ]
98
+ }
99
+ ],
100
+ "status" : "OK"
101
+ }
102
+ http_version:
103
+ recorded_at: Wed, 13 Nov 2013 14:55:50 GMT
104
+ recorded_with: VCR 2.7.0
@@ -0,0 +1,399 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://maps.google.com/maps/api/geocode/json?address=Syracuse&region=it&sensor=false
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - '*/*'
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Content-Type:
22
+ - application/json; charset=UTF-8
23
+ Date:
24
+ - Wed, 13 Nov 2013 14:55:51 GMT
25
+ Expires:
26
+ - Thu, 14 Nov 2013 14:55:51 GMT
27
+ Cache-Control:
28
+ - public, max-age=86400
29
+ Vary:
30
+ - Accept-Language
31
+ Access-Control-Allow-Origin:
32
+ - '*'
33
+ Server:
34
+ - mafe
35
+ X-Xss-Protection:
36
+ - 1; mode=block
37
+ X-Frame-Options:
38
+ - SAMEORIGIN
39
+ Transfer-Encoding:
40
+ - chunked
41
+ body:
42
+ encoding: UTF-8
43
+ string: |
44
+ {
45
+ "results" : [
46
+ {
47
+ "address_components" : [
48
+ {
49
+ "long_name" : "Syracuse",
50
+ "short_name" : "Syracuse",
51
+ "types" : [ "locality", "political" ]
52
+ },
53
+ {
54
+ "long_name" : "Onondaga",
55
+ "short_name" : "Onondaga",
56
+ "types" : [ "administrative_area_level_2", "political" ]
57
+ },
58
+ {
59
+ "long_name" : "New York",
60
+ "short_name" : "NY",
61
+ "types" : [ "administrative_area_level_1", "political" ]
62
+ },
63
+ {
64
+ "long_name" : "United States",
65
+ "short_name" : "US",
66
+ "types" : [ "country", "political" ]
67
+ }
68
+ ],
69
+ "formatted_address" : "Syracuse, NY, USA",
70
+ "geometry" : {
71
+ "bounds" : {
72
+ "northeast" : {
73
+ "lat" : 43.0861018,
74
+ "lng" : -76.07408409999999
75
+ },
76
+ "southwest" : {
77
+ "lat" : 42.984366,
78
+ "lng" : -76.20447600000001
79
+ }
80
+ },
81
+ "location" : {
82
+ "lat" : 43.0481221,
83
+ "lng" : -76.14742439999999
84
+ },
85
+ "location_type" : "APPROXIMATE",
86
+ "viewport" : {
87
+ "northeast" : {
88
+ "lat" : 43.0861018,
89
+ "lng" : -76.07408409999999
90
+ },
91
+ "southwest" : {
92
+ "lat" : 42.984366,
93
+ "lng" : -76.20447600000001
94
+ }
95
+ }
96
+ },
97
+ "types" : [ "locality", "political" ]
98
+ },
99
+ {
100
+ "address_components" : [
101
+ {
102
+ "long_name" : "Syracuse",
103
+ "short_name" : "Syracuse",
104
+ "types" : [ "locality", "political" ]
105
+ },
106
+ {
107
+ "long_name" : "Turkey Creek",
108
+ "short_name" : "Turkey Creek",
109
+ "types" : [ "administrative_area_level_3", "political" ]
110
+ },
111
+ {
112
+ "long_name" : "Kosciusko",
113
+ "short_name" : "Kosciusko",
114
+ "types" : [ "administrative_area_level_2", "political" ]
115
+ },
116
+ {
117
+ "long_name" : "Indiana",
118
+ "short_name" : "IN",
119
+ "types" : [ "administrative_area_level_1", "political" ]
120
+ },
121
+ {
122
+ "long_name" : "United States",
123
+ "short_name" : "US",
124
+ "types" : [ "country", "political" ]
125
+ },
126
+ {
127
+ "long_name" : "46567",
128
+ "short_name" : "46567",
129
+ "types" : [ "postal_code" ]
130
+ }
131
+ ],
132
+ "formatted_address" : "Syracuse, IN 46567, USA",
133
+ "geometry" : {
134
+ "bounds" : {
135
+ "northeast" : {
136
+ "lat" : 41.43607,
137
+ "lng" : -85.73427170000001
138
+ },
139
+ "southwest" : {
140
+ "lat" : 41.403028,
141
+ "lng" : -85.7686119
142
+ }
143
+ },
144
+ "location" : {
145
+ "lat" : 41.42782570000001,
146
+ "lng" : -85.7524895
147
+ },
148
+ "location_type" : "APPROXIMATE",
149
+ "viewport" : {
150
+ "northeast" : {
151
+ "lat" : 41.43607,
152
+ "lng" : -85.73427170000001
153
+ },
154
+ "southwest" : {
155
+ "lat" : 41.403028,
156
+ "lng" : -85.7686119
157
+ }
158
+ }
159
+ },
160
+ "types" : [ "locality", "political" ]
161
+ },
162
+ {
163
+ "address_components" : [
164
+ {
165
+ "long_name" : "Syracuse",
166
+ "short_name" : "Syracuse",
167
+ "types" : [ "locality", "political" ]
168
+ },
169
+ {
170
+ "long_name" : "Davis County",
171
+ "short_name" : "Davis County",
172
+ "types" : [ "administrative_area_level_2", "political" ]
173
+ },
174
+ {
175
+ "long_name" : "Utah",
176
+ "short_name" : "UT",
177
+ "types" : [ "administrative_area_level_1", "political" ]
178
+ },
179
+ {
180
+ "long_name" : "United States",
181
+ "short_name" : "US",
182
+ "types" : [ "country", "political" ]
183
+ }
184
+ ],
185
+ "formatted_address" : "Syracuse, UT, USA",
186
+ "geometry" : {
187
+ "bounds" : {
188
+ "northeast" : {
189
+ "lat" : 41.1110471,
190
+ "lng" : -112.035575
191
+ },
192
+ "southwest" : {
193
+ "lat" : 41.0556259,
194
+ "lng" : -112.1171349
195
+ }
196
+ },
197
+ "location" : {
198
+ "lat" : 41.0893878,
199
+ "lng" : -112.0646657
200
+ },
201
+ "location_type" : "APPROXIMATE",
202
+ "viewport" : {
203
+ "northeast" : {
204
+ "lat" : 41.1110471,
205
+ "lng" : -112.035575
206
+ },
207
+ "southwest" : {
208
+ "lat" : 41.0556259,
209
+ "lng" : -112.1171349
210
+ }
211
+ }
212
+ },
213
+ "types" : [ "locality", "political" ]
214
+ },
215
+ {
216
+ "address_components" : [
217
+ {
218
+ "long_name" : "Syracuse",
219
+ "short_name" : "Syracuse",
220
+ "types" : [ "locality", "political" ]
221
+ },
222
+ {
223
+ "long_name" : "Syracuse",
224
+ "short_name" : "Syracuse",
225
+ "types" : [ "administrative_area_level_3", "political" ]
226
+ },
227
+ {
228
+ "long_name" : "Hamilton",
229
+ "short_name" : "Hamilton",
230
+ "types" : [ "administrative_area_level_2", "political" ]
231
+ },
232
+ {
233
+ "long_name" : "Kansas",
234
+ "short_name" : "KS",
235
+ "types" : [ "administrative_area_level_1", "political" ]
236
+ },
237
+ {
238
+ "long_name" : "United States",
239
+ "short_name" : "US",
240
+ "types" : [ "country", "political" ]
241
+ }
242
+ ],
243
+ "formatted_address" : "Syracuse, KS, USA",
244
+ "geometry" : {
245
+ "bounds" : {
246
+ "northeast" : {
247
+ "lat" : 37.990495,
248
+ "lng" : -101.7367079
249
+ },
250
+ "southwest" : {
251
+ "lat" : 37.968298,
252
+ "lng" : -101.762123
253
+ }
254
+ },
255
+ "location" : {
256
+ "lat" : 37.9805686,
257
+ "lng" : -101.7526718
258
+ },
259
+ "location_type" : "APPROXIMATE",
260
+ "viewport" : {
261
+ "northeast" : {
262
+ "lat" : 37.990495,
263
+ "lng" : -101.7367079
264
+ },
265
+ "southwest" : {
266
+ "lat" : 37.968298,
267
+ "lng" : -101.762123
268
+ }
269
+ }
270
+ },
271
+ "types" : [ "locality", "political" ]
272
+ },
273
+ {
274
+ "address_components" : [
275
+ {
276
+ "long_name" : "Syracuse",
277
+ "short_name" : "Syracuse",
278
+ "types" : [ "locality", "political" ]
279
+ },
280
+ {
281
+ "long_name" : "Syracuse",
282
+ "short_name" : "Syracuse",
283
+ "types" : [ "administrative_area_level_3", "political" ]
284
+ },
285
+ {
286
+ "long_name" : "Otoe",
287
+ "short_name" : "Otoe",
288
+ "types" : [ "administrative_area_level_2", "political" ]
289
+ },
290
+ {
291
+ "long_name" : "Nebraska",
292
+ "short_name" : "NE",
293
+ "types" : [ "administrative_area_level_1", "political" ]
294
+ },
295
+ {
296
+ "long_name" : "United States",
297
+ "short_name" : "US",
298
+ "types" : [ "country", "political" ]
299
+ },
300
+ {
301
+ "long_name" : "68446",
302
+ "short_name" : "68446",
303
+ "types" : [ "postal_code" ]
304
+ }
305
+ ],
306
+ "formatted_address" : "Syracuse, NE 68446, USA",
307
+ "geometry" : {
308
+ "bounds" : {
309
+ "northeast" : {
310
+ "lat" : 40.6728649,
311
+ "lng" : -96.17200389999999
312
+ },
313
+ "southwest" : {
314
+ "lat" : 40.6512059,
315
+ "lng" : -96.1978209
316
+ }
317
+ },
318
+ "location" : {
319
+ "lat" : 40.6601895,
320
+ "lng" : -96.18248349999999
321
+ },
322
+ "location_type" : "APPROXIMATE",
323
+ "viewport" : {
324
+ "northeast" : {
325
+ "lat" : 40.6728649,
326
+ "lng" : -96.17200389999999
327
+ },
328
+ "southwest" : {
329
+ "lat" : 40.6512059,
330
+ "lng" : -96.1978209
331
+ }
332
+ }
333
+ },
334
+ "types" : [ "locality", "political" ]
335
+ },
336
+ {
337
+ "address_components" : [
338
+ {
339
+ "long_name" : "Syracuse",
340
+ "short_name" : "Syracuse",
341
+ "types" : [ "locality", "political" ]
342
+ },
343
+ {
344
+ "long_name" : "Siracusa",
345
+ "short_name" : "Siracusa",
346
+ "types" : [ "administrative_area_level_3", "political" ]
347
+ },
348
+ {
349
+ "long_name" : "Syracuse",
350
+ "short_name" : "SR",
351
+ "types" : [ "administrative_area_level_2", "political" ]
352
+ },
353
+ {
354
+ "long_name" : "Sicilia",
355
+ "short_name" : "Sicilia",
356
+ "types" : [ "administrative_area_level_1", "political" ]
357
+ },
358
+ {
359
+ "long_name" : "Italy",
360
+ "short_name" : "IT",
361
+ "types" : [ "country", "political" ]
362
+ }
363
+ ],
364
+ "formatted_address" : "Syracuse, Italy",
365
+ "geometry" : {
366
+ "bounds" : {
367
+ "northeast" : {
368
+ "lat" : 37.1056629,
369
+ "lng" : 15.3012622
370
+ },
371
+ "southwest" : {
372
+ "lat" : 37.0526518,
373
+ "lng" : 15.2405306
374
+ }
375
+ },
376
+ "location" : {
377
+ "lat" : 37.0754739,
378
+ "lng" : 15.2865861
379
+ },
380
+ "location_type" : "APPROXIMATE",
381
+ "viewport" : {
382
+ "northeast" : {
383
+ "lat" : 37.1056629,
384
+ "lng" : 15.3012622
385
+ },
386
+ "southwest" : {
387
+ "lat" : 37.0526518,
388
+ "lng" : 15.2405306
389
+ }
390
+ }
391
+ },
392
+ "types" : [ "locality", "political" ]
393
+ }
394
+ ],
395
+ "status" : "OK"
396
+ }
397
+ http_version:
398
+ recorded_at: Wed, 13 Nov 2013 14:55:49 GMT
399
+ recorded_with: VCR 2.7.0