+ysUddlZddlZddlZddlmZmZmZmZmZm Z m Z m Z m Z ddl mZddlmZmZmZmZddlmZdZe dZGd d eZGd d eeZGd dZGddZGddeZGddeZeZeee d<GddeeZ!Gdde!eZ"dS)N) AwaitableCallableDequeFinalGenericListOptionalTupleTypeVar) BaseProtocol)BaseTimerContext TimerNoop set_exception set_result)internal_logger) EMPTY_PAYLOAD EofStream StreamReader DataQueueFlowControlDataQueue_TceZdZdZdS)rzeof stream indication.N)__name__ __module__ __qualname____doc__/srv/buildsys-work-dir/castor/build_node/builder-2/WGSG1/unpkd_srcs/cloudlinux-venv-1.0.6/venv/lib/python3.11/site-packages/aiohttp/streams.pyrrs    rrcNeZdZdegeefddfdZddZdefdZdS) AsyncStreamIterator read_funcreturnNc||_dSN)r#)selfr#s r __init__zAsyncStreamIterator.__init__$s "rAsyncStreamIterator[_T]c|Sr&rr's r __aiter__zAsyncStreamIterator.__aiter__' rcK |d{V}n#t$rtwxYw|dkrt|SNr)r#rStopAsyncIterationr'rvs r __anext__zAsyncStreamIterator.__anext__*sc %~~''''''''BB % % %$ $ % 99$ $ s1)r$r)) rrrrrrr(r,r3rrr r"r"#ss#(2y}+<"=#$####rr"c:eZdZddZd dZdeeeffdZdS) ChunkTupleAsyncStreamIteratorstreamrr$Nc||_dSr&)_stream)r'r6s r r(z&ChunkTupleAsyncStreamIterator.__init__5s  rc|Sr&rr+s r r,z'ChunkTupleAsyncStreamIterator.__aiter__8r-rcbK|jd{V}|dkrt|S)NrF)r8 readchunkr0r1s r r3z'ChunkTupleAsyncStreamIterator.__anext__;sA<))++ + + + + + +   $ $ r)r6rr$N)r$r5) rrrr(r,r bytesboolr3rrr r5r54s`ud{!3rr5cfeZdZdeefdZdedeefdZdeefdZde fdZ dS)AsyncStreamReaderMixinr$c*t|jSr&)r"readliner+s r r,z AsyncStreamReaderMixin.__aiter__Cs"4=111rnc,tfdS)z>Returns an asynchronous iterator that yields chunks of size n.c.Sr&)read)rCr'sr z5AsyncStreamReaderMixin.iter_chunked..Hs499Q<<r)r"r'rCs``r iter_chunkedz#AsyncStreamReaderMixin.iter_chunkedFs"#7#7#7#7#7888rc*t|jS)z3Yield all available data as soon as it is received.)r"readanyr+s r iter_anyzAsyncStreamReaderMixin.iter_anyJs"4<000rc t|S)zYield chunks of data as they are received by the server. The yielded objects are tuples of (bytes, bool) as returned by the StreamReader.readchunk method. )r5r+s r iter_chunksz"AsyncStreamReaderMixin.iter_chunksNs -T222rN) rrrr"r=r,intrIrLr5rNrrr r@r@Bs2.u522229c9&9%&@99991-e411113:333333rr@c eZdZdZdZddddededeedee j d df d Z d e fd Z d eeeffd Zd eefd Zded dfdZdegdfd dfdZd+dZd efdZd efdZd+dZded dfdZd,deded dfdZd+dZd+dZde d dfdZd efdZ d-d ed efd!Z!d.d#ed efd$Z"d efd%Z#d eeeffd&Z$d#ed efd'Z%d.d#ed efd(Z&d#ed efd)Z'd#ed efd*Z(dS)/ra*An enhancement of asyncio.StreamReader. Supports asynchronous iteration by line, chunk or as available:: async for line in reader: ... async for chunk in reader.iter_chunked(1024): ... async for slice in reader.iter_any(): ... rN)timerloopprotocollimitrQrRr$cJ||_||_|dz|_|tj}||_d|_d|_d|_tj |_ d|_ d|_ d|_d|_d|_|t#n||_g|_dS)NrF) _protocol _low_water _high_waterasyncioget_event_loop_loop_size_cursor_http_chunk_splits collectionsdeque_buffer_buffer_offset_eof_waiter _eof_waiter _exceptionr_timer_eof_callbacks)r'rSrTrQrRs r r(zStreamReader.__init__gs" 19 <)++D   7;%0%6%8%8  7; ;?37%*]ikkk 8:rc|jjg}|jr|d|jz|jr|d|jdkr$|d|j|jfz|jr|d|jz|jr|d|jzdd |zS) Nz%d byteseofizlow=%d high=%dzw=%rze=%r<%s> ) __class__rr]appendrdrXrYrergjoin)r'infos r __repr__zStreamReader.__repr__s'( : 1 KK TZ/ 0 0 0 9  KK    ?e # # KK(DOT=M+NN O O O < / KK- . . . ? 2 KK0 1 1 1&&rc|j|jfSr&)rXrYr+s r get_read_buffer_limitsz#StreamReader.get_read_buffer_limitss!122rc|jSr&rgr+s r exceptionzStreamReader.exception rexcc||_|j|j}|d|_t |||j}|d|_t ||dSdSr&)rgriclearrerrfr'rywaiters r rzStreamReader.set_exceptionsv !!###  DL &# & & &!  #D  &# & & & & &  rcallbackc|jr2 |dS#t$rtjdYdSwxYw|j|dSNException in eof callback)rd Exceptionrrwriror'r~s r on_eofzStreamReader.on_eofsz 9 1 G  G G G)*EFFFFFF G   & &x 0 0 0 0 0s 77c8d|_|j}|d|_t|d|j}|d|_t|d|jD]1} |#t $rt jdY.wxYw|jdS)NTr) rdrerrfrirrrwr{)r'r}cbs r feed_eofzStreamReader.feed_eofs   DL vt $ $ $!  #D  vt $ $ $% G GB G G G G)*EFFFFF G !!#####s AA>=A>c|jS)z&Return True if 'feed_eof' was called.rdr+s r is_eofzStreamReader.is_eofs yrc |jo|j S)z=Return True if the buffer is empty and 'feed_eof' was called.rdrbr+s r at_eofzStreamReader.at_eofsy---rcK|jrdS|jJ|j|_ |jd{Vd|_dS#d|_wxYwr&)rdrfr\ create_futurer+s r wait_eofzStreamReader.wait_eofs| 9  F''':3355 $" " " " " " " "#D   tD  # # # #s A Adatac\tjdtd|sdS|jr)|jd|jd|jd<d|_|xjt |z c_|xjt |zc_|j|d|_ dS)zDrollback reading some data from stream, inserting it to buffer head.zJunread_data() is deprecated and will be removed in future releases (#3260)rV) stacklevelNr) warningswarnDeprecationWarningrcrbr]lenr^ appendleft _eof_counter)r'rs r unread_datazStreamReader.unread_datas  =        F   $"l1od.A.C.CDDLO"#D  c$ii  D !  %%%rsizec|jr Jd|sdS|xjt|z c_|j||xjt|z c_|j}|d|_t|d|j|jkr'|j j s|j dSdSdS)Nzfeed_data after feed_eof) rdr]rrbro total_bytesrerrYrW_reading_paused pause_readingr'rrr}s r feed_datazStreamReader.feed_datas988888}  F c$ii  D!!! CII%  DL vt $ $ $ :( ( (1O ( N ( ( * * * * * ) ( ( (rcR|j|jrtdg|_dSdS)Nz?Called begin_http_chunk_receiving whensome data was already fed)r_r RuntimeErrorr+s r begin_http_chunk_receivingz'StreamReader.begin_http_chunk_receivingsC  " * "X')D # # # + *rc|jtd|jr |jdnd}|j|krdS|j|j|j}|d|_t |ddSdS)NzFCalled end_chunk_receiving without calling begin_chunk_receiving firstr)r_rrrorer)r'posr}s r end_http_chunk_receivingz%StreamReader.end_http_chunk_receivings  " *. .2-DKd%b))!  s " " F &&t'7888  DL vt $ $ $ $ $  r func_namecK|jtd|z|jx}|_ |j5|d{Vdddn #1swxYwYd|_dS#d|_wxYw)NzH%s() called while another coroutine is already waiting for incoming data)rerr\rrh)r'rr}s r _waitzStreamReader._wait s < #46?@  !% 8 8 : ::                    DLLL4DL    s/A- A A-AA- A!A-- A6c:K|d{VSr&) readuntilr+s r rBzStreamReader.readline2s(^^%%%%%%%%%r separatorcKt|}|dkrtd|j|jd}d}d}|r|jr|r|j}|jd||dz}||r ||z |zdz nd}||z }|t|z }|rd}||jkrtd|jr||jrn|r| d d{V||S) Nrz,Separator should be at least one-byte stringrTr rFz Chunk too bigr) r ValueErrorrgrbrcfind_read_nowait_chunkrYrdr) r'rseplenchunk chunk_size not_enoughoffseticharrs r rzStreamReader.readuntil5s\Y Q;;KLL L ? &/ !   ., 6: 6, Q,,Y??!C..38@EFNV+a//b c$ii' '!&J 000$_555, 6: 6y  .jj---------) ., rrrCcK|j|j |jrA|js:t|dddz|_|jdkrt jdd|sdS|dkrKg} |d{V}|sn||3d |S|js0|js)| d d{V|js|j)| |S) NTrrr zEMultiple access to StreamReader in eof state, might be infinite loop.) stack_inforrF) rgrdrbgetattrrrwarningrKrorpr _read_nowait)r'rCblocksblocks r rFzStreamReader.readYsT ? &/ !  y  $+D.!$D$Dq$H!$q((#+2#'  3 q55 F %"llnn,,,,,, e$$$  % 88F## # , %ty %**V$$ $ $ $ $ $ $ $, %ty %  ###rcK|j|j|js0|js)|dd{V|js|j)|dS)NrKr)rgrbrdrrr+s r rKzStreamReader.readanysz ? &/ ! , (ty (**Y'' ' ' ' ' ' ' ', (ty (  $$$rcK |j|j|jrl|jd}||jkrdS||jkr|||jz dfSt jd|jl|jr|ddfS|j rdS| d d{V) aReturns a tuple of (data, end_of_http_chunk). When chunked transfer encoding is used, end_of_http_chunk is a boolean indicating if the end of the data corresponds to the end of a HTTP chunk , otherwise it is always False. TNrrTzESkipping HTTP chunk end due to data consumption beyond chunk boundaryrFr;r<) rgr_popr^rrrrbrrdr)r'rs r r<zStreamReader.readchunks **o%) -11!44$,&&&;%% --cDL.@AA4HH'8 ) | <//33U;;y $$|**[)) ) ) ) ) ) ) )1 *rcdK|j|jg}|dkr||d{V}|s:d|}tj|t ||z|||t |z}|dkd|S)Nrr)rgrFrprZIncompleteReadErrorrro)r'rCrrpartials r readexactlyzStreamReader.readexactlys ? &/ ! !ee))A,,&&&&&&E M((6**1'3w<rrrr=rrrrrrBrrFrKr<rrrrrrr rrWsd  K-148 ;;;;; () ; w01 ; ;;;;4 '# ' ' ' '3c3h33338M2 ' '4 ' ' ' '1xD11d1111$$$$*..... $ $ $ $$(++e+3+t++++$))))%%%%< S T    $&&&&&"""5""""H($($C($($($($($T %u % % % % *ud{!3 * * * *D  3  5      $ $S $% $ $ $ $CE6 3c 3e 3 3 3 3 3 3rrceZdZddZdefdZdeefdZdeddfdZ de gdfddfd Z dd Z de fd Zde fd Zdd ZddededdfdZdefdZddedefdZdefdZdeee ffdZdedefdZddedefdZdS)EmptyStreamReaderr$Ncd|_dS)NF_read_eof_chunkr+s r r(zEmptyStreamReader.__init__s$rc d|jjzS)Nrl)rnrr+s r rrzEmptyStreamReader.__repr__s///rcdSr&rr+s r rwzEmptyStreamReader.exceptiontrrycdSr&r)r'rys r rzEmptyStreamReader.set_exception rr~cf |dS#t$rtjdYdSwxYwr)rrrwrs r rzEmptyStreamReader.on_eofsQ C HJJJJJ C C C  %&A B B B B B B Cs 00cdSr&rr+s r rzEmptyStreamReader.feed_eof rrcdSNTrr+s r rzEmptyStreamReader.is_eofrrcdSrrr+s r rzEmptyStreamReader.at_eofrrc KdSr&rr+s r rzEmptyStreamReader.wait_eofs rrrrCcdSr&r)r'rrCs r rzEmptyStreamReader.feed_datarrc KdSr/rr+s r rBzEmptyStreamReader.readline srrc KdSr/rrHs r rFzEmptyStreamReader.readrrc KdSr/rr+s r rKzEmptyStreamReader.readany$rrc*K|js d|_dSdS)NTr;rrr+s r r<zEmptyStreamReader.readchunk's## #'D <{rc0Ktjd|r/)rZrrHs r rzEmptyStreamReader.readexactly.s)#q111rcdSr/rrHs r rzEmptyStreamReader.read_nowait1ssrrrr)rrrr(rrrr rrwrrrrr>rrrr=rOrrBrFrKr r<rrrrr rrs %%%%0#00008M2  4    CxD1CdCCCC       e  D    C uud{!323252222S%rrrceZdZdZdejddfdZdefdZde fdZ de fdZ de e fd Zd e ddfd Zdd ededdfdZddZdefdZdeefdZdS)rz>DataQueue is a general-purpose blocking queue with one reader.rRr$Nc|||_d|_d|_d|_d|_t j|_dS)NFr)r\rdrergr]r`rarb)r'rRs r r(zDataQueue.__init__;s9  7; 37 .9.?.A.A rc*t|jSr&)rrbr+s r __len__zDataQueue.__len__Cs4<   rc|jSr&rr+s r rzDataQueue.is_eofFs yrc |jo|j Sr&rr+s r rzDataQueue.at_eofIsy---rc|jSr&rvr+s r rwzDataQueue.exceptionLrxrrycfd|_||_|j}|d|_t||dSdSr)rdrgrerr|s r rzDataQueue.set_exceptionOsB   DL &# & & & & &  rrrrc|xj|z c_|j||f|j}|d|_t |ddSdSr&)r]rbrorerrs r rzDataQueue.feed_dataXs^ d  T4L)))  DL vt $ $ $ $ $  rcXd|_|j}|d|_t|ddSdSr)rdrer)r'r}s r rzDataQueue.feed_eofas;   DL vt $ $ $ $ $  rcpK|jsd|js]|jrJ|j|_ |jd{Vn'#t jt jf$r d|_wxYw|jr.|j\}}|xj |zc_ |S|j |j tr&) rbrdrer\rrZCancelledError TimeoutErrorrr]rgr)r'rrs r rFzDataQueue.readis| DI | # ##:3355DL l""""""""*G,@A   #   < --//JD$ JJ$ JJK*o%s A$A+c*t|jSr&)r"rFr+s r r,zDataQueue.__aiter__}s"49---rrr)rrrrrZrr(rOrr>rrr rrwrrrrrFr"r,rrr rr8sVHHBW6B4BBBB!!!!!.....8M2''4''''%%b%%D%%%%%%%% B    (..r2......rrcheZdZdZdededejddffd Zd d e d eddffd Z de ffd Z xZ S)rzlFlowControlDataQueue resumes and pauses an underlying stream. It is a destination for parsed data. rSrTrRr$Ncnt|||_|dz|_dS)N)rRrV)superr(rW_limit)r'rSrTrRrns r r(zFlowControlDataQueue.__init__s6 d###!ai rrrrct|||j|jkr'|jjs|jdSdSdSr&)rrr]rrWrr)r'rrrns r rzFlowControlDataQueue.feed_datas^ $%%% : # #DN,J # N ( ( * * * * * $ # # #rc>K td{V |j|jkr&|jjr|jSSS#|j|jkr&|jjr|jwwwxYwr&)rrFr]rrWrr)r'rns r rFzFlowControlDataQueue.reads 0'''''' 'zDK''DN,J'--////('tzDK''DN,J'--////('s %A##9Br) rrrrr rOrZrr(rrrF __classcell__)rns@r rrs  $ -0 ;B;T       ++b++D++++++ 0B0000000000rr)#rZr`rtypingrrrrrrr r r base_protocolr helpersrrrrlogr__all__rrrr"r5r@rrr__annotations__rrrrr rs                      ('''''KKKKKKKKKKKK   WT]]!!!!! !!!'"+"        33333333*`3`3`3`3`3)`3`3`3F 88888 888v&7%6%8%8 u\"888F.F.F.F.F. F.F.F.R000009R=00000r