lib/redis_token.rb in redis_token-0.0.7 vs lib/redis_token.rb in redis_token-0.0.8

- old
+ new

@@ -62,11 +62,11 @@ @created_value = value key_ttl = args[:ttl] || @default_ttl @redis.multi do |multi| - multi.set(token_to_key(token), serializer.pack(value), ex: key_ttl) + multi.set(token_to_key(token), @serializer.pack(value), ex: key_ttl) multi.set(token_to_owner(owner, token), nil, ex: key_ttl) end token end @@ -111,11 +111,11 @@ value[:payload] = args[:payload] key_ttl = args[:ttl] || @redis.ttl(key) @redis.multi do |multi| - multi.set(key, serializer.pack(value), ex: key_ttl) + multi.set(key, @serializer.pack(value), ex: key_ttl) multi.expire(token_to_owner(hash_get(value, :owner), token), key_ttl) end true end @@ -227,11 +227,11 @@ # # @param [Object] serializer_class # # @return [RedisToken] def use(serializer_class) - @serializer_class = serializer_class + @serializer = serializer_class.new self end private @@ -240,13 +240,11 @@ end def init_params(args) @default_ttl = args[:ttl] || DEFAULT_TTL @prefix = args[:prefix] || DEFAULT_PREFIX - - @serializer_class = args[:serializer_class] - @serializer_class = Serializers::Native unless @serializer_class + @serializer = (args[:serializer_class] || Serializers::Native).new end def token_to_key(token) "#{@prefix}.t.#{token}" end @@ -264,11 +262,11 @@ end def redis_get(key) value = @redis.get(key) return unless value - serializer.unpack(value) + @serializer.unpack(value) end def owned_tokens(owner = nil) iterator(owner) end @@ -297,13 +295,9 @@ def delete_tokens(enum) enum.reduce(0) do |deleted, token| del(token) deleted += 1 end - end - - def serializer - @serializer ||= @serializer_class.new end # Some serializers can't store symbols out of the box def hash_get(hash, sym) hash.fetch(sym, hash[sym.to_s])