Module: IdealPostcodes::Postcode

Defined in:
lib/idealpostcodes/postcode.rb

Class Method Summary collapse

Class Method Details

.find_by_location(geolocation) ⇒ Object



15
16
17
18
19
20
21
# File 'lib/idealpostcodes/postcode.rb', line 15

def self.find_by_location(geolocation)
  query = { lonlat: "#{geolocation[:longitude]},#{geolocation[:latitude]}" }
  query[:limit] = geolocation[:limit] unless geolocation[:limit].nil?
  query[:radius] = geolocation[:radius] unless geolocation[:radius].nil?
  response = IdealPostcodes.request :get, 'postcodes', query
  response[:result]
end

.lookup(postcode) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
# File 'lib/idealpostcodes/postcode.rb', line 3

def self.lookup(postcode)
  begin
    response = IdealPostcodes.request :get, "postcodes/#{postcode}"
    addresses = response[:result]
  rescue IdealPostcodes::ResourceNotFoundError => e
    raise e unless e.response_code == 4040

    addresses = []
  end
  addresses
end