U '7` @sdZddlmZmZddlmZdZGdddeZGdd d eZ Gd d d e Z Gd d d e Z Gddde Z Gddde Z Gddde ZGddde ZGddde ZGddde ZGddde ZdS)z"Low-level http related exceptions.)OptionalUnion) _CIMultiDict)HttpProcessingErrorc@s^eZdZdZdZdZdZddddeee ee ddddZ e d d d Z e d d d Z dS)rzHTTP error. Shortcut for raising HTTP errors with custom code, message and headers. code: HTTP Error code. message: (optional) Error message. headers: (optional) Headers to be sent in response, a list of pairs rN)codemessageheaders)rr r returncCs|dk r||_||_||_dS)N)rr r )selfrr r r J/opt/alt/python38/lib64/python3.8/site-packages/aiohttp/http_exceptions.py__init__szHttpProcessingError.__init__)r cCs|jd|jS)Nz , message=)rr r r r r__str__%szHttpProcessingError.__str__cCsd|jjd|dS)N) __class____name__rr r r__repr__(szHttpProcessingError.__repr__)r __module__ __qualname____doc__rr r rintstrrrrrr r r rr s  rcs8eZdZdZdZddeeeddfddZZ S)BadHttpMessage Bad RequestN)r )r r r cstj||d|f|_dS)N)r r superrargs)r r r rr rr1szBadHttpMessage.__init__) rrrrr rrrr __classcell__r r r"rr,src@seZdZdZdZdS)HttpBadRequestrrN)rrrrr r r r rr$6sr$c@seZdZdZdS)PayloadEncodingErrorzBase class for payload errorsNrrrrr r r rr%<sr%c@seZdZdZdS)ContentEncodingErrorzContent encoding error.Nr&r r r rr'@sr'c@seZdZdZdS)TransferEncodingErrorztransfer encoding error.Nr&r r r rr(Dsr(c@seZdZdZdS)ContentLengthErrorz2Not enough data for satisfy content length header.Nr&r r r rr)Hsr)cs*eZdZdeeeddfdd ZZS) LineTooLongUnknownN)linelimit actual_sizer c s0td|d|d|d|||f|_dS)NzGot more than z bytes (z) when reading .r)r r,r-r.r"r rrMszLineTooLong.__init__)r+r+rrrrrr#r r r"rr*Lsr*cs,eZdZeeefddfdd ZZS) InvalidHeaderN)hdrr cs:t|tr|dd}td|||_|f|_dS)Nzutf-8surrogateescapezInvalid HTTP Header: ) isinstancebytesdecoder rr2r!)r r2r"r rrWs   zInvalidHeader.__init__)rrrrr5rrr#r r r"rr1Vsr1cs&eZdZdeddfdd ZZS) BadStatusLinerN)r,r cs6t|tst|}td||f|_||_dS)NzBad status line )r4rreprr rr!r,)r r,r"r rr`s  zBadStatusLine.__init__)rr0r r r"rr7_sr7c@s eZdZdS)InvalidURLErrorN)rrrr r r rr9hsr9N)rtypingrrZtypedefsr__all__ Exceptionrrr$r%r'r(r)r*r1r7r9r r r rs !