Class: RubyRateLimiter::Storage::RedisStorage

Inherits:
AbstractStorage show all
Defined in:
lib/ruby_rate_limiter/storage/redis_storage.rb

Instance Method Summary collapse

Constructor Details

#initialize(redis_client = Redis.new) ⇒ RedisStorage

Returns a new instance of RedisStorage.



7
8
9
# File 'lib/ruby_rate_limiter/storage/redis_storage.rb', line 7

def initialize(redis_client = Redis.new)
  @redis = redis_client
end

Instance Method Details

#get(key) ⇒ Object



11
12
13
# File 'lib/ruby_rate_limiter/storage/redis_storage.rb', line 11

def get(key)
  @redis.get(key)
end

#multi(&block) ⇒ Object



23
24
25
# File 'lib/ruby_rate_limiter/storage/redis_storage.rb', line 23

def multi(&block)
  @redis.multi(&block)
end

#set(key, value) ⇒ Object



15
16
17
# File 'lib/ruby_rate_limiter/storage/redis_storage.rb', line 15

def set(key, value)
  @redis.setnx(key, value)
end

#watch(key, &block) ⇒ Object



19
20
21
# File 'lib/ruby_rate_limiter/storage/redis_storage.rb', line 19

def watch(key, &block)
  @redis.watch(key, &block)
end