Skip to content
Snippets Groups Projects
Commit 46571560 authored by Alex Reisner's avatar Alex Reisner
Browse files

Don't define latitude and longitude in results.

The #latitude and #longitude methods are defined in the Base lookup. The
intention is that subclasses implement #coordinates only, as it results
in less code duplication.
parent 917ae737
No related branches found
No related tags found
No related merge requests found
......@@ -9,15 +9,9 @@ module Geocoder
end
def coordinates
[latitude, longitude]
end
def latitude
data.fetch('location', {}).fetch('latitude', 0.0)
end
def longitude
data.fetch('location', {}).fetch('longitude', 0.0)
%w[latitude longitude].map do |l|
data.fetch('location', {}).fetch(l, 0.0)
end
end
def city
......
......@@ -3,14 +3,6 @@ require 'geocoder/results/base'
module Geocoder::Result
class IpapiCom < Base
def latitude
lat
end
def longitude
lon
end
def coordinates
[lat, lon]
end
......
......@@ -7,16 +7,8 @@ module Geocoder::Result
"#{city} #{postal_code}, #{country}".sub(/^[ ,]*/, "")
end
def latitude
@data['loc'].split(',')[0].to_f
end
def longitude
@data['loc'].split(',')[1].to_f
end
def coordinates
[latitude, longitude]
@data['loc'].split(",").map(&:to_f)
end
def city
......
......@@ -3,16 +3,8 @@ require 'geocoder/results/base'
module Geocoder::Result
class Mapbox < Base
def latitude
@latitude ||= @data["geometry"]["coordinates"].last.to_f
end
def longitude
@longitude ||= @data["geometry"]["coordinates"].first.to_f
end
def coordinates
[latitude, longitude]
@data["geometry"]["coordinates"].reverse.map(&:to_f)
end
def place_name
......
......@@ -2,16 +2,9 @@ require 'geocoder/results/base'
module Geocoder::Result
class Mapquest < Base
def latitude
@data["latLng"]["lat"]
end
def longitude
@data["latLng"]["lng"]
end
def coordinates
[latitude, longitude]
%w[lat lng].map{ |l| @data["latLng"][l] }
end
def city
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment