Sha256: 5a3d0bc5cfb408ca8e329c0d407a63c045767d896f972c4f36fded0aa096b6cf

Contents?: true

Size: 1.04 KB

Versions: 2

Compression:

Stored size: 1.04 KB

Contents

module Nominatim
  class Configuration

    DEFAULT_ENDPOINT = 'http://nominatim.openstreetmap.org'

    DEFAULT_KEY = nil

    DEFAULT_USER_AGENT = "Nominatim Ruby Gem #{Nominatim::VERSION}"

    DEFAULT_EMAIL = nil

    DEFAULT_LANGUAGE = 'en'

    DEFAULT_TIMEOUT = nil

    DEFAULT_SEARCH_URL = 'search'
    DEFAULT_REVERSE_URL = 'reverse'

    VALID_OPTIONS_KEYS = [
      :endpoint,
      :key,
      :user_agent,
      :email,
      :accept_language,
      :timeout,
      :search_url,
      :reverse_url
    ]

    attr_accessor *VALID_OPTIONS_KEYS

    def initialize
      reset!
    end

    def configure
      yield self
      self
    end

    def reset!
      self.endpoint         = DEFAULT_ENDPOINT
      self.key              = DEFAULT_KEY
      self.user_agent       = DEFAULT_USER_AGENT
      self.email            = DEFAULT_EMAIL
      self.accept_language  = DEFAULT_LANGUAGE
      self.timeout          = DEFAULT_TIMEOUT
      self.search_url       = DEFAULT_SEARCH_URL
      self.reverse_url      = DEFAULT_REVERSE_URL
    end
  end
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
nominatim-0.0.6 lib/nominatim/configuration.rb
ruby-nominatim-1.0.0 lib/nominatim/configuration.rb