Sha256: d26de3cbf056842a5c9e05744fe2d5c23f2dbb8a4e32991970403c88afa076e6

Contents?: true

Size: 803 Bytes

Versions: 4

Compression:

Stored size: 803 Bytes

Contents

# coding: utf-8
# frozen_string_literal: true

module Stealth
  module Redis
    extend ActiveSupport::Concern

    included do
      private

      def get_key(key, expiration: Stealth.config.session_ttl)
        if expiration > 0
          getex(key, expiration)
        else
          $redis.get(key)
        end
      end

      def delete_key(key)
        $redis.del(key)
      end

      def getex(key, expiration=Stealth.config.session_ttl)
        $redis.multi do
          $redis.expire(key, expiration)
          $redis.get(key)
        end.last
      end

      def persist_key(key:, value:, expiration: Stealth.config.session_ttl)
        if expiration > 0
          $redis.setex(key, expiration, value)
        else
          $redis.set(key, value)
        end
      end

    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
stealth-2.0.0.beta4 lib/stealth/helpers/redis.rb
stealth-2.0.0.beta3 lib/stealth/helpers/redis.rb
stealth-2.0.0.beta2 lib/stealth/helpers/redis.rb
stealth-2.0.0.beta1 lib/stealth/helpers/redis.rb