
    eg.                         d Z ddlZddlZddlZddlmZmZ ddl	m
Z
 ddlmZ ddlmZ erddlmZmZ ddlmZ  ej&                  e      Z G d	 d
ej,                  j.                        Zy)z#xmlrpclib.Transport implementation
    N)TYPE_CHECKINGTuple)NetworkConnectionError)
PipSession)raise_for_status)	_HostType_Marshallable)SizedBufferc                   ^     e Zd ZdZ	 ddedededdf fdZ	 ddd	d
edddeded   f
dZ	 xZ
S )PipXmlrpcTransportzRProvide a `xmlrpclib.Transport` implementation via a `PipSession`
    object.
    	index_urlsessionuse_datetimereturnNc                     t         |   |       t        j                  j	                  |      }|j
                  | _        || _        y )N)super__init__urllibparseurlparsescheme_scheme_session)selfr   r   r   index_parts	__class__s        y/var/www/html/FastMealFinder_FlaskServer-InitialRelease/venv/lib/python3.12/site-packages/pip/_internal/network/xmlrpc.pyr   zPipXmlrpcTransport.__init__   s:     	&ll++I6"))    hostr   handlerrequest_bodyr
   verbose)r	   .c                    t        |t              sJ | j                  ||d d d f}t        j                  j                  |      }	 ddi}| j                  j                  |||d      }t        |       || _	        | j                  |j                        S # t        $ r?}	|	j                  sJ t        j                  d|	j                  j                   |        d }	~	ww xY w)NzContent-Typeztext/xmlT)dataheadersstreamzHTTP error %s while getting %s)
isinstancestrr   r   r   
urlunparser   postr   r"   parse_responserawr   responseloggercriticalstatus_code)
r   r   r    r!   r"   partsurlr%   r-   excs
             r   requestzPipXmlrpcTransport.request"   s     $$$$tWdD$?ll%%e,	%z2G}}))!	 * H X&"DL&&x||44% 	<<<OO0((
 	s   AB 	C:CC)F)__name__
__module____qualname____doc__r(   r   boolr   r   r4   __classcell__)r   s   @r   r   r      st    
 IN  '1 AE 	    $	
  
#	$r   r   )r8   loggingurllib.parser   xmlrpc.clientxmlrpctypingr   r   pip._internal.exceptionsr   pip._internal.network.sessionr   pip._internal.network.utilsr   r   r	   	_typeshedr
   	getLoggerr5   r.   client	Transportr    r   r   <module>rH      sR       ' ; 4 86%			8	$)00 )r   