class RedisDedupe::Set

Constants

SEVEN_DAYS

Attributes

expires_in[R]
key[R]

Public Class Methods

new(redis, key, expires_in = SEVEN_DAYS) click to toggle source
# File lib/redis_dedupe.rb, line 13
def initialize(redis, key, expires_in = SEVEN_DAYS)
  @redis      = redis
  @key        = key
  @expires_in = expires_in
end

Public Instance Methods

check(member) { || ... } click to toggle source
# File lib/redis_dedupe.rb, line 19
def check(member)
  results = redis.pipelined do
    redis.sadd(key, member)
    redis.expire(key, expires_in)
  end

  if results[0]
    yield
  end
end
finish() click to toggle source
# File lib/redis_dedupe.rb, line 30
def finish
  redis.del(key)
end

Private Instance Methods

redis() click to toggle source
# File lib/redis_dedupe.rb, line 36
def redis
  @redis
end