Sha256: 7911aef82b20bdc73ca3236a8cb7b4d84938b91395df904bf4a569e8e1726c9a

Contents?: true

Size: 1.05 KB

Versions: 30

Compression:

Stored size: 1.05 KB

Contents

require 'geocoder/lookups/base'
require "geocoder/results/okf"

module Geocoder::Lookup
  class Okf < Base

    def name
      "Okf"
    end

    def query_url(query)
      "#{protocol}://data.okf.fi/gis/1/geocode/json?" + url_query_string(query)
    end

    private # ---------------------------------------------------------------

    def valid_response?(response)
      json = parse_json(response.body)
      status = json["status"] if json
      super(response) and ['OK', 'ZERO_RESULTS'].include?(status)
    end

    def results(query)
      return [] unless doc = fetch_data(query)
      case doc['status']; when "OK" # OK status implies >0 results
        return doc['results']
      end
      return []
    end

    def query_url_okf_params(query)
      params = {
        (query.reverse_geocode? ? :latlng : :address) => query.sanitized_text,
        :sensor => "false",
        :language => (query.language || configuration.language)
      }
      params
    end

    def query_url_params(query)
      query_url_okf_params(query).merge(super)
    end
  end
end

Version data entries

30 entries across 30 versions & 3 rubygems

Version Path
geocoder-1.4.9 lib/geocoder/lookups/okf.rb
geocoder-1.4.8 lib/geocoder/lookups/okf.rb
geocoder-1.4.7 lib/geocoder/lookups/okf.rb
geocoder-1.4.6 lib/geocoder/lookups/okf.rb
geocoder-1.4.5 lib/geocoder/lookups/okf.rb
geocoder-1.4.4 lib/geocoder/lookups/okf.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/geocoder-1.4.3/lib/geocoder/lookups/okf.rb
geocoder-1.4.3 lib/geocoder/lookups/okf.rb
geocoder-1.4.2 lib/geocoder/lookups/okf.rb
geocoder-1.4.1 lib/geocoder/lookups/okf.rb
geocoder-1.4.0 lib/geocoder/lookups/okf.rb
geocoder-1.3.7 lib/geocoder/lookups/okf.rb
geocoder-1.3.6 lib/geocoder/lookups/okf.rb
geocoder-1.3.5 lib/geocoder/lookups/okf.rb
broken-geocoder-1.3.6 lib/geocoder/lookups/okf.rb
broken-geocoder-1.3.5 lib/geocoder/lookups/okf.rb
broken-geocoder-1.3.4 lib/geocoder/lookups/okf.rb
geocoder-1.3.4 lib/geocoder/lookups/okf.rb
geocoder-1.3.3 lib/geocoder/lookups/okf.rb
geocoder-1.3.2 lib/geocoder/lookups/okf.rb