class Wayfarer::HTTPAdapters::AdapterPool
A connection pool that hands out HTTP adapters. @private
Public Class Methods
new(job)
click to toggle source
# File lib/wayfarer/http_adapters/adapter_pool.rb, line 13 def initialize(job) @job = job @config = job.config size = @config.connection_count timeout = @config.connection_timeout @pool = ConnectionPool.new( size: size, timeout: timeout, &method(:instantiate_adapter) ) end
Public Instance Methods
free()
click to toggle source
Shuts down all HTTP adapters
# File lib/wayfarer/http_adapters/adapter_pool.rb, line 28 def free @pool.shutdown(&:free) end
Private Instance Methods
instantiate_adapter()
click to toggle source
# File lib/wayfarer/http_adapters/adapter_pool.rb, line 34 def instantiate_adapter adapter = if @config.http_adapter == :selenium HTTPAdapters::SeleniumAdapter.new(@config) else HTTPAdapters::NetHTTPAdapter.instance(@config) end @job.run_hook( :setup_adapter, adapter, adapter.try(:driver), adapter.try(:browser) ) adapter end
method_missing(method, *argv, &proc)
click to toggle source
Calls superclass method
# File lib/wayfarer/http_adapters/adapter_pool.rb, line 51 def method_missing(method, *argv, &proc) super if method == :shutdown @pool.public_send(method, *argv, &proc) end
respond_to_missing?(method, private = false)
click to toggle source
Calls superclass method
# File lib/wayfarer/http_adapters/adapter_pool.rb, line 56 def respond_to_missing?(method, private = false) return false if method == :shutdown @pool.respond_to?(method) || super end