class BtcPrice::Cache

Public Class Methods

new(backend) click to toggle source
# File lib/btc_price/cache.rb, line 7
def initialize(backend)
  @backend = backend
end

Public Instance Methods

clear() click to toggle source
# File lib/btc_price/cache.rb, line 19
def clear
  $cache.delete 'price'
end
current_price() click to toggle source
# File lib/btc_price/cache.rb, line 11
def current_price
  begin
    read
  rescue Memcached::NotFound
    write
  end
end

Private Instance Methods

read() click to toggle source
# File lib/btc_price/cache.rb, line 25
def read
  $cache.get 'price'
end
write() click to toggle source
# File lib/btc_price/cache.rb, line 29
def write
  price = @backend.current_price
  $cache.set 'price', price
  price
end