Sha256: 1dde242ffd98224784dee671b543c2ba0ce5c48a510129799ef8ae1eacb414ec
Contents?: true
Size: 435 Bytes
Versions: 5
Compression:
Stored size: 435 Bytes
Contents
module CurrencyRate class Storage attr_reader :data def initialize(adapter_name: nil, timeout: 1800) @timeout = timeout @data = {} @adapter_name = adapter_name end def fetch(key) if @data[key].nil? || (@data[key][:timestamp] < (Time.now.to_i - @timeout)) @data[key] = { content: yield, timestamp: Time.now.to_i } end @data[key][:content] end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
currency-rate-0.4.1 | lib/storage.rb |
currency-rate-0.4.0 | lib/storage.rb |
currency-rate-0.3.9 | lib/storage.rb |
currency-rate-0.3.8 | lib/storage.rb |
currency-rate-0.3.7 | lib/storage.rb |