Sha256: eb3e3c588435e4446616318fdc6ddeb3bc46ce7301d2f58acbb9a1975e65d05c

Contents?: true

Size: 581 Bytes

Versions: 8

Compression:

Stored size: 581 Bytes

Contents

require 'delegate'

module Barometer
  module WeatherService
    class WundergroundV1
      class Query < SimpleDelegator
        attr_reader :converted_query

        def self.accepted_formats
          [:zipcode, :postalcode, :icao, :coordinates, :geocode]
        end

        def initialize(query)
          super
          @converted_query = convert_query
        end

        def to_param
          {query: converted_query.q.dup}
        end

        private

        def convert_query
          convert!(*self.class.accepted_formats)
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
barometer-0.9.7 lib/barometer/weather_services/wunderground_v1/query.rb
barometer-0.9.6 lib/barometer/weather_services/wunderground_v1/query.rb
barometer-0.9.5 lib/barometer/weather_services/wunderground_v1/query.rb
barometer-0.9.4 lib/barometer/weather_services/wunderground_v1/query.rb
barometer-0.9.3 lib/barometer/weather_services/wunderground_v1/query.rb
barometer-0.9.2 lib/barometer/weather_services/wunderground_v1/query.rb
barometer-0.9.1 lib/barometer/weather_services/wunderground_v1/query.rb
barometer-0.9.0 lib/barometer/weather_services/wunderground_v1/query.rb