Sha256: dbb448f40a6bf012cc09ca1719be9012337fa9463fb6db76997a3be220978d92

Contents?: true

Size: 729 Bytes

Versions: 6

Compression:

Stored size: 729 Bytes

Contents

module Lawnchair
  module StorageEngine
    class Redis < Abstract
      class << self
        def data_store
          Lawnchair.redis
        end
    
        def set(key, value, options={})
          ttl   = options[:expires_in] || 3600
          value = Marshal.dump(value) unless options[:raw]
          
          data_store.set(computed_key(key), value)
          data_store.expireat(computed_key(key), (Time.now + ttl).to_i)
        end
  
        def exists?(key)
          data_store.exists(computed_key(key))
        end
  
        def expire!(key)
          start_time = Time.now
          data_store.del(computed_key(key))
          log("EXPIRATION", key, Time.now-start_time)
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
lawnchair-0.6.11 lib/storage_engine/redis.rb
lawnchair-0.6.10 lib/storage_engine/redis.rb
lawnchair-0.6.9 lib/storage_engine/redis.rb
lawnchair-0.6.8 lib/storage_engine/redis.rb
lawnchair-0.6.7 lib/storage_engine/redis.rb
lawnchair-0.6.6 lib/storage_engine/redis.rb