HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/docker/transport/__pycache__/npipeconn.cpython-310.pyc
o

�2.a�@s�ddlZddlZddlmZddlmZddlmZddl	m
Zzddlm
mZWn
ey8ddlZYnwejjZGdd�dej�ZGd	d
�d
ejj�ZGdd�de�ZdS)
�N)�BaseHTTPAdapter�)�	constants�)�NpipeSocketcs&eZdZd�fdd�	Zdd�Z�ZS)�NpipeHTTPConnection�<cs t�jd|d�||_||_dS)N�	localhost)�timeout��super�__init__�
npipe_pathr
)�selfrr
��	__class__��</usr/lib/python3/dist-packages/docker/transport/npipeconn.pyr
s
�
zNpipeHTTPConnection.__init__cCs(t�}|�|j�|�|j�||_dS�N)r�
settimeoutr
�connectr�sock)rrrrrrs
zNpipeHTTPConnection.connect)r)�__name__�
__module__�__qualname__r
r�
__classcell__rrrrrsrcs.eZdZd	�fdd�	Zdd�Zdd�Z�ZS)
�NpipeHTTPConnectionPoolr�
cs"t�jd||d�||_||_dS)Nr	)r
�maxsizer)rrr
rrrrr
"s
�
z NpipeHTTPConnectionPool.__init__cCst|j|j�Sr)rrr
)rrrr�	_new_conn)s�z!NpipeHTTPConnectionPool._new_conncCsjd}z|jj|j|d�}Wn!tytj�|d��tjy.|jr,tj�	|d��Ynw|p4|�
�S)N)�blockr
zPool is closed.z>Pool reached maximum size and no more connections are allowed.)�pool�getr �AttributeError�urllib3�
exceptions�ClosedPoolError�queue�Empty�EmptyPoolErrorr)rr
�connrrr�	_get_conn1s��	z!NpipeHTTPConnectionPool._get_conn)rr)rrrr
rr+rrrrrr!srcsLeZdZejjjgd�Zdejej	f�fdd�	Z
d
dd�Zdd	�Z�Z
S)�NpipeHTTPAdapter)r�poolsr
�
max_pool_sizercs:|�dd�|_||_||_t|dd�d�|_t���dS)Nznpipe://�cSs|��Sr)�close)�prrr�<lambda>Ssz+NpipeHTTPAdapter.__init__.<locals>.<lambda>)�dispose_func)�replacerr
r.�RecentlyUsedContainerr-rr
)r�base_urlr
�pool_connectionsr.rrrr
Ls�zNpipeHTTPAdapter.__init__NcCsn|jj�)|j�|�}|r|Wd�St|j|j|jd�}||j|<Wd�|S1s0wY|S)N)r)r-�lockr"rrr
r.)r�url�proxiesr!rrr�get_connectionWs
��
��zNpipeHTTPAdapter.get_connectioncCs|jSr)�path_url)r�requestr:rrr�request_urleszNpipeHTTPAdapter.request_urlr)rrr�requests�adapters�HTTPAdapter�	__attrs__r�DEFAULT_NUM_POOLS�DEFAULT_MAX_POOL_SIZEr
r;r>rrrrrr,Es�
r,)r'�requests.adaptersr?� docker.transport.basehttpadapterrr/r�npipesocketr�http.client�client�httplib�requests.packages.urllib3�packagesr$�ImportError�_collectionsr5�HTTPConnectionr�connectionpool�HTTPConnectionPoolrr,rrrr�<module>s�$