class CoinSync::PriceLoaders::Cache
Public Class Methods
new(name)
click to toggle source
# File lib/coinsync/price_loaders/cache.rb, line 7 def initialize(name) @name = name @filename = "data/prices/#{name}.json" if File.exist?(@filename) @prices = JSON.parse(File.read(@filename)) else @prices = {} end end
Public Instance Methods
[](coin, time)
click to toggle source
# File lib/coinsync/price_loaders/cache.rb, line 18 def [](coin, time) @prices[coin.code] ||= {} @prices[coin.code][time.to_i.to_s] end
[]=(coin, time, price)
click to toggle source
# File lib/coinsync/price_loaders/cache.rb, line 23 def []=(coin, time, price) @prices[coin.code] ||= {} @prices[coin.code][time.to_i.to_s] = price end
save()
click to toggle source
# File lib/coinsync/price_loaders/cache.rb, line 28 def save FileUtils.mkdir_p(File.dirname(@filename)) File.write(@filename, JSON.generate(@prices)) end