Class: RedisMemo::ConnectionPool

Inherits:
Object
  • Object
show all
Defined in:
lib/redis_memo/connection_pool.rb

Instance Method Summary collapse

Constructor Details

#initialize(**options) ⇒ ConnectionPool

Returns a new instance of ConnectionPool.



6
7
8
9
10
11
# File 'lib/redis_memo/connection_pool.rb', line 6

def initialize(**options)
  @connection_pool = ::ConnectionPool.new(**options) do
    # Construct a new client every time the block gets called
    RedisMemo::Redis.new(RedisMemo::DefaultOptions.redis_config)
  end
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method_name, *args, &blk) ⇒ Object



22
23
24
25
26
# File 'lib/redis_memo/connection_pool.rb', line 22

def method_missing(method_name, *args, &blk)
  @connection_pool.with do |redis|
    redis.send(method_name, *args, &blk)
  end
end