Sha256: 11025ca7b2c9dc5f440a95539ebeb89f3c75476384c47169b1c059cbf0530b13

Contents?: true

Size: 616 Bytes

Versions: 1

Compression:

Stored size: 616 Bytes

Contents

# frozen_string_literal: true

module RailsWebCache
  class RedisCacheStore < Base
    def keys_size
      redis.dbsize
    end

    def keys
      redis.keys
    end

    def search(query = '')
      redis.scan_each(match: "*#{query.downcase}*").to_a if query
    end

    def entry(key, options = {})
      return nil unless key
      return nil unless type(key) == 'string'
      entry = read_entry(key, options)
      return nil unless entry
      RailsWebCache::Entry.new(entry)
    end

    private

    def redis
      @redis ||= cache.redis
    end

    def type(key)
      redis.type(key)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rails_web_cache-0.4.0 lib/rails_web_cache/redis_cache_store.rb