
Ѯh-                 @   s   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 Gd	 d
   d
 e j j  Z d S)z"xmlrpclib.Transport implementation    N)TYPE_CHECKINGTuple)NetworkConnectionError)
PipSession)raise_for_status)	_HostType_Marshallable)SizedBufferc            	       sk   e  Z d  Z d Z d e e e d d   f d d   Z d d e d e e d	 d
 f d d d   Z	   S)PipXmlrpcTransportzRProvide a `xmlrpclib.Transport` implementation via a `PipSession`
    object.
    FN)	index_urlsessionuse_datetimereturnc                s;   t    j |  t j j |  } | j |  _ | |  _ d  S)N)super__init__urllibparseurlparsescheme_scheme_session)selfr   r   r   index_parts)	__class__ n/home/www/academy-backend.kofcorporation.com/venv/lib/python3.12/site-packages/pip/_internal/network/xmlrpc.pyr      s    zPipXmlrpcTransport.__init__r   r	   r   .)hosthandlerrequest_bodyverboser   c       
      C   s   t  | t  s t  |  j | | d  d  d  f } t j j |  } yW d d i } |  j j | d | d | d d } t	 |  | |  _
 |  j | j  SWnP t k
 r }	 z0 |	 j s t  t j d |	 j j |    WYd  d  }	 ~	 Xn Xd  S)NzContent-Typeztext/xmldataheadersstreamTzHTTP error %s while getting %s)
isinstancestrAssertionErrorr   r   r   
urlunparser   postr   r   parse_responserawr   responseloggercriticalstatus_code)
r   r   r   r   r   partsurlr!   r*   excr   r   r   request!   s(    		
		zPipXmlrpcTransport.request)
__name__
__module____qualname____doc__r$   r   boolr   r   r1   r   r   )r   r   r
      s
   r
   )r5   loggingurllib.parser   xmlrpc.clientxmlrpctypingr   r   pip._internal.exceptionsr   pip._internal.network.sessionr   pip._internal.network.utilsr   r   r   	_typeshedr	   	getLoggerr2   r+   client	Transportr
   r   r   r   r   <module>   s   