class Accuweather::Location::Cache
Constants
- CITIES_CSV_FILE
Public Class Methods
new()
click to toggle source
# File lib/accuweather/location/cache.rb, line 6 def initialize csv_data = Zlib::Inflate.inflate(File.read(CITIES_CSV_FILE)) @city_data = {} csv_data.split("\n").each do |line| line_data = line.split('|') arr = @city_data[line_data[1].downcase] arr = [] if arr.nil? arr << Accuweather::Location::City.new(id: line_data[0], city: line_data[1], state: line_data[2], latitude: line_data[3], longitude: line_data[4]) @city_data[line_data[1].downcase] = arr end end
Public Instance Methods
cities(name:)
click to toggle source
# File lib/accuweather/location/cache.rb, line 23 def cities(name:) @city_data.fetch(name.downcase, []) end