OXIESEC PANEL
- Current Dir:
/
/
usr
/
lib
/
ruby
/
2.5.0
/
rubygems
/
request
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/09/2024 07:14:11 AM
rwxr-xr-x
📄
connection_pools.rb
2.09 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
http_pool.rb
1 KB
02/01/2016 12:43:26 PM
rw-r--r--
📄
https_pool.rb
235 bytes
02/01/2016 12:43:26 PM
rw-r--r--
Editing: http_pool.rb
Close
# frozen_string_literal: true ## # A connection "pool" that only manages one connection for now. Provides # thread safe `checkout` and `checkin` methods. The pool consists of one # connection that corresponds to `http_args`. This class is private, do not # use it. class Gem::Request::HTTPPool # :nodoc: attr_reader :cert_files, :proxy_uri def initialize http_args, cert_files, proxy_uri @http_args = http_args @cert_files = cert_files @proxy_uri = proxy_uri @queue = SizedQueue.new 1 @queue << nil end def checkout @queue.pop || make_connection end def checkin connection @queue.push connection end def close_all until @queue.empty? if connection = @queue.pop(true) and connection.started? connection.finish end end @queue.push(nil) end private def make_connection setup_connection Gem::Request::ConnectionPools.client.new(*@http_args) end def setup_connection connection connection.start connection end end