Class: Geocoder::Result::Here

Inherits:
Base
  • Object
show all
Defined in:
lib/geocoder/results/here.rb

Instance Attribute Summary

Attributes inherited from Base

#cache_hit, #data

Instance Method Summary collapse

Methods inherited from Base

#initialize, #latitude, #longitude

Constructor Details

This class inherits a constructor from Geocoder::Result::Base

Instance Method Details

#address(format = :full) ⇒ Object

A string in the given format.



9
10
11
# File 'lib/geocoder/results/here.rb', line 9

def address(format = :full)
  address_data['Label']
end

#cityObject



41
42
43
# File 'lib/geocoder/results/here.rb', line 41

def city
  address_data['City']
end

#coordinatesObject

A two-element array: [lat, lon].



16
17
18
19
# File 'lib/geocoder/results/here.rb', line 16

def coordinates
  fail unless d = @data['Location']['DisplayPosition']
  [d['Latitude'].to_f, d['Longitude'].to_f]
end

#countryObject



53
54
55
56
57
58
# File 'lib/geocoder/results/here.rb', line 53

def country
  fail unless d = address_data['AdditionalData']
  if v = d.find{|ad| ad['key']=='CountryName'}
    return v['value']
  end
end

#country_codeObject



60
61
62
# File 'lib/geocoder/results/here.rb', line 60

def country_code
  address_data['Country']
end

#postal_codeObject



37
38
39
# File 'lib/geocoder/results/here.rb', line 37

def postal_code
  address_data['PostalCode']
end

#provinceObject



33
34
35
# File 'lib/geocoder/results/here.rb', line 33

def province
  address_data['County']
end

#province_codeObject



49
50
51
# File 'lib/geocoder/results/here.rb', line 49

def province_code
  address_data['State']
end

#routeObject



21
22
23
# File 'lib/geocoder/results/here.rb', line 21

def route
  address_data['Street']
end

#stateObject



29
30
31
# File 'lib/geocoder/results/here.rb', line 29

def state
  address_data['County']
end

#state_codeObject



45
46
47
# File 'lib/geocoder/results/here.rb', line 45

def state_code
  address_data['State']
end

#street_numberObject



25
26
27
# File 'lib/geocoder/results/here.rb', line 25

def street_number
  address_data['HouseNumber']
end

#viewportObject



64
65
66
67
68
69
70
71
# File 'lib/geocoder/results/here.rb', line 64

def viewport
  map_view = data['Location']['MapView'] || fail
  south = map_view['BottomRight']['Latitude']
  west = map_view['TopLeft']['Longitude']
  north = map_view['TopLeft']['Latitude']
  east = map_view['BottomRight']['Longitude']
  [south, west, north, east]
end