Module: Legion::Cache::Pool
Instance Method Summary collapse
- #available ⇒ Object
- #close ⇒ Object
- #connected? ⇒ Boolean
- #pool_size ⇒ Object
- #restart(**opts) ⇒ Object
- #size ⇒ Object
- #timeout ⇒ Object
Instance Method Details
#available ⇒ Object
22 23 24 |
# File 'lib/legion/cache/pool.rb', line 22 def available client.available end |
#close ⇒ Object
26 27 28 29 30 |
# File 'lib/legion/cache/pool.rb', line 26 def close client.shutdown(&:close) @client = nil @connected = false end |
#connected? ⇒ Boolean
6 7 8 |
# File 'lib/legion/cache/pool.rb', line 6 def connected? @connected ||= false end |
#pool_size ⇒ Object
18 19 20 |
# File 'lib/legion/cache/pool.rb', line 18 def pool_size @pool_size ||= Legion::Settings[:cache][:pool_size] || 10 end |
#restart(**opts) ⇒ Object
32 33 34 35 36 37 38 39 40 |
# File 'lib/legion/cache/pool.rb', line 32 def restart(**opts) close @client = nil client_hash = opts client_hash[:pool_size] = opts[:pool_size] if opts.key? :pool_size client_hash[:timeout] = opts[:timeout] if opts.key? :timeout client(**client_hash) @connected = true end |
#size ⇒ Object
10 11 12 |
# File 'lib/legion/cache/pool.rb', line 10 def size client.size end |
#timeout ⇒ Object
14 15 16 |
# File 'lib/legion/cache/pool.rb', line 14 def timeout @timeout ||= Legion::Settings[:cache][:timeout] || 5 end |