3 Bu_Z@sdZddlZddlmZddlmZddlmZddl m Z ddl m Z e rdddl mZdd lmZejeZGd d d ejZdS) z#xmlrpclib.Transport implementation N) xmlrpc_client)parse)NetworkConnectionError)raise_for_status)MYPY_CHECK_RUNNING)Dict) PipSessionc@s$eZdZdZdddZd ddZdS) PipXmlrpcTransportzRProvide a `xmlrpclib.Transport` implementation via a `PipSession` object. FcCs*tjj||tj|}|j|_||_dS)N)r Transport__init__ urllib_parseurlparsescheme_scheme_session)self index_urlsession use_datetimeZ index_partsr/builddir/build/BUILDROOT/alt-python36-pip-20.2.4-1.el7.x86_64/opt/alt/python36/lib/python3.6/site-packages/pip/_internal/network/xmlrpc.pyr s zPipXmlrpcTransport.__init__c Cs|j||dddf}tj|}y6ddi}|jj|||dd}t|||_|j|jSt k r} z$| j snt t j d| j j|WYdd} ~ XnXdS)Nz Content-Typeztext/xmlT)dataheadersstreamzHTTP error %s while getting %s)rr urlunparserpostrverboseparse_responserawrresponseAssertionErrorloggercritical status_code) rhosthandler request_bodyrpartsurlrrexcrrrrequest#s      zPipXmlrpcTransport.requestN)F)F)__name__ __module__ __qualname____doc__r r*rrrrr s r )r.loggingpip._vendor.six.movesrZpip._vendor.six.moves.urllibrr pip._internal.exceptionsrpip._internal.network.utilsrpip._internal.utils.typingrtypingrpip._internal.network.sessionr getLoggerr+r!r r rrrrs