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/pip/_internal/network/__pycache__/xmlrpc.cpython-310.pyc
o

@%Ne��@s�dZddlZddlZddlZddlmZmZddl	m
Z
ddlmZddl
mZer2ddlmZmZe�e�ZGdd	�d	ejj�ZdS)
z#xmlrpclib.Transport implementation
�N)�
TYPE_CHECKING�Tuple)�NetworkConnectionError)�
PipSession)�raise_for_status)�	_HostType�
_Marshallablecs\eZdZdZ	ddedededdf�fdd	�
Z	dd
dded
edede	df
dd�Z
�ZS)�PipXmlrpcTransportzRProvide a `xmlrpclib.Transport` implementation via a `PipSession`
    object.
    F�	index_url�session�use_datetime�returnNcs*t��|�tj�|�}|j|_||_dS)N)�super�__init__�urllib�parse�urlparse�scheme�_scheme�_session)�selfr
rr�index_parts��	__class__��>/usr/lib/python3/dist-packages/pip/_internal/network/xmlrpc.pyrs
zPipXmlrpcTransport.__init__�hostr�handler�request_body�verbose)r.c

Cs�t|t�sJ�|j||dddf}tj�|�}zddi}|jj|||dd�}t|�||_	|�
|j�WStyM}	z|	j
s?J�t�d|	j
j|��d}	~	ww)NzContent-Typeztext/xmlT)�data�headers�streamzHTTP error %s while getting %s)�
isinstance�strrrr�
urlunparser�postrr�parse_response�rawr�response�logger�critical�status_code)
rrrrr�parts�urlr!r)�excrrr�request s0�
���zPipXmlrpcTransport.request)F)�__name__�
__module__�__qualname__�__doc__r$r�boolr�bytesrr0�
__classcell__rrrrr	s0�����
������r	)r4�logging�urllib.parser�
xmlrpc.client�xmlrpc�typingrr�pip._internal.exceptionsr�pip._internal.network.sessionr�pip._internal.network.utilsrrr�	getLoggerr1r*�client�	Transportr	rrrr�<module>s