Sha256: 58ba869b37d5f7f26e11d49f7d3ece4a9965aefc77f6091e03cecafdfb5efb1e
Contents?: true
Size: 945 Bytes
Versions: 7
Compression:
Stored size: 945 Bytes
Contents
class ConnectionPool class Wrapper < ::BasicObject METHODS = [:with, :pool_shutdown, :wrapped_pool] def initialize(options = {}, &block) @pool = options.fetch(:pool) { ::ConnectionPool.new(options, &block) } end def wrapped_pool @pool end def with(&block) @pool.with(&block) end def pool_shutdown(&block) @pool.shutdown(&block) end def pool_size @pool.size end def pool_available @pool.available end def respond_to?(id, *args) METHODS.include?(id) || with { |c| c.respond_to?(id, *args) } end # rubocop:disable Style/MethodMissingSuper # rubocop:disable Style/MissingRespondToMissing def method_missing(name, *args, &block) with do |connection| connection.send(name, *args, &block) end end # rubocop:enable Style/MethodMissingSuper # rubocop:enable Style/MissingRespondToMissing end end
Version data entries
7 entries across 7 versions & 3 rubygems