‹“ReZã@s´dZddlZddlmZddlmZddlmZddl m Z ddl m Z e rˆddl mZdd lmZejeƒZGd d „d ejƒZdS) z#xmlrpclib.Transport implementation éN)Ú xmlrpc_client)Úparse)ÚNetworkConnectionError)Úraise_for_status)ÚMYPY_CHECK_RUNNING)ÚDict)Ú PipSessionc@s4eZdZdZddd„Zddd„ZdS)ÚPipXmlrpcTransportzRProvide a `xmlrpclib.Transport` implementation via a `PipSession` object. FcCs;tjj||ƒtj|ƒ}|j|_||_dS)N)rÚ TransportÚ__init__Ú urllib_parseÚurlparseÚschemeÚ_schemeÚ_session)ÚselfÚ index_urlÚsessionÚ use_datetimeZ index_parts©rú‹/builddir/build/BUILDROOT/alt-python35-pip-20.2.4-5.el8.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_internal/network/xmlrpc.pyr s zPipXmlrpcTransport.__init__c CsØ|j||dddf}tj|ƒ}yWddi}|jj|d|d|ddƒ}t|ƒ||_|j|jƒSWnPt k rÓ} z0| j s¥t ‚t j d| j j|ƒ‚WYdd} ~ XnXdS)Nz Content-Typeztext/xmlÚdataÚheadersÚstreamTzHTTP error %s while getting %s)rr Ú urlunparserÚpostrÚverboseÚparse_responseÚrawrÚresponseÚAssertionErrorÚloggerÚcriticalÚ status_code) rÚhostÚhandlerÚ request_bodyrÚpartsÚurlrrÚexcrrrÚrequest#s   zPipXmlrpcTransport.requestN)Ú__name__Ú __module__Ú __qualname__Ú__doc__r r*rrrrr s r )r.ÚloggingÚpip._vendor.six.movesrZpip._vendor.six.moves.urllibrr Úpip._internal.exceptionsrÚpip._internal.network.utilsrÚpip._internal.utils.typingrÚtypingrÚpip._internal.network.sessionrÚ getLoggerr+r!r r rrrrÚs