From d4e2af76ac2c09d90818b302a48261e548b0d46f Mon Sep 17 00:00:00 2001 From: Alex Reisner <alex@alexreisner.com> Date: Fri, 22 Apr 2011 20:43:15 -0400 Subject: [PATCH] Refactor for consistency with other Results. --- lib/geocoder/results/bing.rb | 51 +++++++++++++++++------------------- 1 file changed, 24 insertions(+), 27 deletions(-) diff --git a/lib/geocoder/results/bing.rb b/lib/geocoder/results/bing.rb index 70b696b8..215e4fb1 100644 --- a/lib/geocoder/results/bing.rb +++ b/lib/geocoder/results/bing.rb @@ -4,48 +4,45 @@ module Geocoder::Result class Bing < Base def address(format = :full) - data_address['formattedAddress'] + @data['address']['formattedAddress'] end def city - data_address['locality'] + @data['address']['locality'] end - def country - data_address['countryRegion'] + def state_code + @data['address']['adminDistrict'] end - - def country_code - # Bing does not return a contry code - "" + + alias_method :state, :state_code + + def country + @data['address']['countryRegion'] end + alias_method :country_code, :country + def postal_code - data_address['postalCode'] + @data['address']['postalCode'] end - + def coordinates - data_coordinates['coordinates'] + @data['point']['coordinates'] end - - def data_address + + def address_data @data['address'] end - - def data_coordinates - @data['point'] - end - - def address_line - data_address['addressLine'] - end - - def state - data_address['adminDistrict'] + + def self.response_attributes + %w[bbox name confidence entityType] end - - def confidence - @data['confidence'] + + response_attributes.each do |a| + define_method a do + @data[a] + end end end end -- GitLab