Module: Jipcode

Defined in:
lib/jipcode/address_locator.rb,
lib/jipcode/address_locator/helper.rb,
lib/jipcode/address_locator/indexer.rb,
lib/jipcode/address_locator/locator.rb,
lib/jipcode/address_locator/version.rb,
lib/jipcode/address_locator/normalizer.rb,
lib/jipcode/address_locator/ext_jipcode.rb

Defined Under Namespace

Modules: AddressLocator

Class Method Summary collapse

Class Method Details

.locate_by_address(search_address, opt = {}) ⇒ Array<Hash>

Note:

If there are no index files, this method creates them from jipcode.gem data.

Find zipcode data by address.

Parameters:

  • search_address (String)
  • opt (Hash) (defaults to: {})

    the options to create results.

Options Hash (opt):

  • :distance (String)

    return with jaro winkler distance

Returns:

  • (Array<Hash>)

    zipcode data



12
13
14
15
16
17
18
19
20
# File 'lib/jipcode/address_locator/ext_jipcode.rb', line 12

def self.locate_by_address(search_address, opt = {})
  AddressLocator.create_index! unless AddressLocator.exist_latest_index?

  AddressLocator.locate(search_address).map do |address_param|
    address = extended_address_from(address_param, opt)
    address[:distance] = address_param['distance'] if opt[:distance]
    address
  end
end