Sha256: ef9a8576791aacb2513a465467c3e8d9b4de1f7a8d8d7bcd9ffb6b8db1ae139b
Contents?: true
Size: 998 Bytes
Versions: 3
Compression:
Stored size: 998 Bytes
Contents
# Fetcher module WeatherFetcher class WeatherData attr_accessor :time_costs def initialize(h = { }) @time_costs = Hash.new @h = h @h.keys.each do |k| self.instance_variable_set("@#{k}".to_sym, @h[k]) end end # Return Array of WeatherData objects def self.factory(obj) return [ new(obj) ] if obj.kind_of? Hash return factory_from_array(obj) if obj.kind_of? Array end def self.factory_from_array(array = []) ao = Array.new array.each do |a| obj = self.new(a) ao << obj end return ao end # Mark this weather as just downloaded def just_fetched! @fetch_time ||= Time.now end def next_within!(_interval) # just_fetched! @next_fetch_time = @fetch_time + _interval end attr_reader :time_created, :time_from, :time_to, :fetch_time, :next_fetch_time, :temperature, :wind, :pressure, :wind_kmh, :snow, :rain, :provider end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
weather_fetcher-0.0.8 | lib/weather_fetcher/weather_data.rb |
weather_fetcher-0.0.7 | lib/weather_fetcher/weather_data.rb |
weather_fetcher-0.0.6 | lib/weather_fetcher/weather_data.rb |