Ñò ].äOc@sKddkZddkZddkZddkiiZeeieiei ei fƒZ eei ei eifƒZeei fƒZeei ei eifƒZeeieifƒZhed6e d6e d6Zhed6ed6ed6Zheid6eid6Zeeieieieieieieieieif ƒZ dei!fd„ƒYZ"de"fd„ƒYZ#d e"fd „ƒYZ$d e"fd „ƒYZ%d e"fd„ƒYZ&de"fd„ƒYZ'de"fd„ƒYZ(de"fd„ƒYZ)de"fd„ƒYZ*de"fd„ƒYZ+de"fd„ƒYZ,dS(iÿÿÿÿNtfilethttpthttpstTransportExceptioncBseZdZd„ZRS(sNBase class for various exceptions thrown by code in transport package.cCsd|_t|_t|_dS(Ni(tcounttFalset decayablet retryable(tself((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyt__init__Js  (t__name__t __module__t__doc__R (((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyRFstTransportOperationErrorcBs eZdZd„Zd„ZRS(s>Used when transport operations fail for miscellaneous reasons.cCsti|ƒ||_dS(N(RR tdata(RR((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR Ss cCs t|iƒS(N(tstrR(R((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyt__str__Ws(R R R R R(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR Ps tTransportFailurescBs;eZdZd„Zd„Zd„Zd„Zd„ZRS(s:This exception encapsulates multiple transport exceptions.cCsti|ƒg|_dS(N(RR t exceptions(R((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR cs cCs€t}t|tƒpt‚xA|iD]6}t||ƒdjo|id7_t}Pq'q'W|p|ii|ƒndS(Nii( Rt isinstanceRtAssertionErrorRtcmpRtTruetappend(Rtexctfoundtx((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyRgs  cCs"x|D]}|i|ƒqWdS(N(R(Rtexc_listR((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pytextendtscCsÀt|iƒdjodSd}xˆt|iƒD]w\}}t|iƒdjo|d|d7}n|t|ƒ7}|idjo|d|i7}n|d7}q1W||iƒ7}|S(Nis[no errors accumulated]tis%d: s (happened %d times)s (tlenRt enumerateRRt _str_autofix(RtstiR((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyRxs cCs t|iƒS(N(RR(R((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyt__len__‡s(R R R R RRRR#(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR[s    tTransportProtoErrorc BsAeZdZddddddddd„Zd„Zd„ZRS(s3Raised when errors occur in the transport protocol.c Cs”ti|ƒ||_||_||_||_||_||_|it|ij|_ |it |ij|_ ||_ ||_ | |_dS(N(RR tprototcodeturlturlstemtreasontrequesttdecayable_proto_errorsRtretryable_proto_errorsRtuuidtdetailstproxy( RR%R&R'R)trepourlR*R-R.R/((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR Žs         cCsËd|i}|io|d|i7}n|io|d|i7}n|io|d|i7}n |io|d|i7}n|io|d|i7}n|io|d|i7}n|S(Ns%s protocol errors : code: %ds reason: %ss URL: '%s's Repository URL: '%s'.s Proxy: '%s's Additional Details: %s(R%R&R)R'R(R/R.(RR!((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyRs       cCsÄt|tƒpdSt|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒS(Niÿÿÿÿi(RR$RR%R&R'R.R)(Rtothertr((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyt__cmp__±s    N(R R R tNoneR RR3(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR$‹s   tTransportFrameworkErrorcBs8eZdZdddddd„Zd„Zd„ZRS(s4Raised when errors occur in the transport framework.cCskti|ƒ||_||_||_||_|itj|_|itj|_ ||_ ||_ dS(N( RR R&R'R(R)tdecayable_pycurl_errorsRtretryable_pycurl_errorsRR-R/(RR&R'R)R0R-R/((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR Æs      cCs~d|i}|io|d|i7}n|io|d|i7}n|io|d|i7}n||iƒ7}|S(NsFramework error: code: %ds reason: %ss URL: '%s's Proxy: '%s'(R&R)R'R/R (RR!((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyRÒs    cCst|tƒpdSt|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒS(Niÿÿÿÿi(RR5RR&R'R/R)(RR1R2((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR3Ýs   N(R R R R4R RR3(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR5Ãs   tTransportStallErrorcBs5eZdZddddd„Zd„Zd„ZRS(s4Raised when stalls occur in the transport framework.cCs>ti|ƒ||_||_t|_||_||_dS(N(RR R'R(RRR-R/(RR'R0R-R/((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR ïs      cCsjd}|ip |io|d7}n|io|d|i7}n|io|d|i7}n|S(NsFramework stallt:s URL: '%s's Proxy: '%s'(R'R/(RR!((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR÷s  cCsOt|tƒpdSt|i|iƒ}|djo|St|i|iƒS(Niÿÿÿÿi(RR8RR'R/(RR1R2((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR3s  N(R R R R4R RR3(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR8ìs tTransferContentExceptioncBs/eZdZddd„Zd„Zd„ZRS(sARaised when there are problems downloading the requested content.cCs5ti|ƒ||_||_t|_||_dS(N(RR R'R)RRR/(RR'R)R/((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR s     cCs^|iod|i|if}nd|i}|io|d|i7}n|d7}|S(Ns(Transfer from '%s' via proxy '%s' failedsTransfer from '%s' faileds: %st.(R/R'R)(RR!((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyRs    cCsvt|tƒpdSt|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒS(Niÿÿÿÿi(RR:RR'R/R)(RR1R2((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR3s  N(R R R R4R RR3(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR: s tInvalidContentExceptioncBs8eZdZdddddd„Zd„Zd„ZRS(spRaised when the content's hash/chash doesn't verify, or the content is received in an unreadable format.icCsGti|ƒ||_||_||_t|_||_||_dS(N( RR tpathR)tsizeRRR'R/(RR=R)R>R'R/((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR /s      cCs†d}|io|d|i7}n|io|d|i7}n|io|d|i7}n|io|d|i7}n|S(NsInvalid contentspath %ss: %s.s URL: %ss Proxy: %s(R=R)R'R/(RR!((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR8s    cCst|tƒpdSt|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒS(Niÿÿÿÿi(RR<RR=R)R/R'(RR1R2((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR3Ds   N(R R R R4R RR3(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR<+s t PkgProtoErrorcBs5eZdZddddd„Zd„Zd„ZRS(s§Raised when the pkg protocol doesn't behave according to specification. This is different than TransportProtoError, which deals with the L7 protocols that we can use to perform a pkg(5) transport operation. Although it doesn't exist, this is essentially a L8 error, since our pkg protocol is built on top of application level protocols. The Framework errors deal with L3-6 errors.cCs>ti|ƒ||_||_||_||_||_dS(N(RR R'R)t operationtversionR/(RR'R@RAR)R/((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR [s      cCs˜|iod|i|if}nd|i}|io|d|i7}n|idj o|d|i7}n|io|d|i7}n|S(Ns*Invalid pkg(5) response from %s (proxy %s)sInvalid pkg(5) response from %ss: Attempting operation '%s's version %ss: %s(R/R'R@RAR4R)(RR!((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyRds    cCsÄt|tƒpdSt|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒS(Niÿÿÿÿi(RR?RR'R@RAR/R)(RR1R2((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR3rs    N(R R R R4R RR3(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR?Ss    tExcessiveTransientFailurecBs,eZdZdd„Zd„Zd„ZRS(s\Raised when the transport encounters too many retryable errors at a single endpoint.cCsGti|ƒ||_||_t|_d|_d|_||_ dS(N( RR R'RRRR4tfailurestsuccessR/(RR'RR/((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR ˆs      cCsgd}|io|d|i7}n|io|d|i7}n|io|d|i7}n|S(Ns7Too many retryable errors encountered during transfer. sURL: %s s Proxy: %ss Count: %s (R'R/R(RR!((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR‘s   cCsvt|tƒpdSt|i|iƒ}|djo|St|i|iƒ}|djo|St|i|iƒS(Niÿÿÿÿi(RRBRR'R/R(RR1R2((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR3›s  N(R R R R4R RR3(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyRB„s t mDNSExceptioncBs eZdZd„Zd„ZRS(sUsed when mDNS operations fail.cCsti|ƒ||_dS(N(RR terr(Rterrstr((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR ©s cCs|iS(N(RF(R((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyR­s(R R R R R(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pyRE¦s (-terrnothttplibtpycurltpkg.client.api_errorstclientt api_errorstsettREQUEST_TIMEOUTt BAD_GATEWAYtGATEWAY_TIMEOUTt NOT_FOUNDtretryable_http_errorstE_FILE_COULDNT_READ_FILEtEAGAINtENOENTtretryable_file_errorstdecayable_http_errorstdecayable_file_errorstE_OPERATION_TIMEOUTEDtE_COULDNT_CONNECTR6R,R+t responsestproto_code_maptE_PARTIAL_FILEt E_GOT_NOTHINGt E_SEND_ERRORt E_RECV_ERRORtE_COULDNT_RESOLVE_HOSTtE_TOO_MANY_REDIRECTStE_BAD_CONTENT_ENCODINGR7tTransportErrorRR RR$R5R8R:R<R?RBRE(((sD/usr/lib/python2.6/vendor-packages/pkg/client/transport/exception.pytsL           08)!(1"