Format: application/x-python-code
⬇ Download File (11.3 KB)
   1  o
   2  
   3  7'h86�@sddlmZddlZddlZddlZddlZddlZddlZddlZddl	m
   4  Z
   5  ddlmZm
   6  Z
   7  mZmZmZddlmZmZmZddlmZmZddlmZd	d
   8  lmZe�d�Zejejejej fZ!Gdd
   9  �d
  10  ej"�Z#Gdd�de�Z$Gdd�d�Z%Gdd�de
  11  �Z&dS)�)�annotationsN�)�AsyncNetworkStream)�ConnectionNotAvailable�LocalProtocolError�RemoteProtocolError�
  12  WriteError�map_exceptions)�Origin�Request�Response)�	AsyncLock�AsyncShieldCancellation)�Trace�)�AsyncConnectionInterfacezhttpcore.http11c@seZdZdZdZdZdZdS)�HTTPConnectionStaterrr�N)�__name__�
  13  __module__�__qualname__�NEW�ACTIVE�IDLE�CLOSED�rr�LC:\Users\shubh\Videos\agent\nova\Lib\site-packages\httpcore/_async/http11.pyr$s
  14  rc@s�eZdZdZdZ	dCdDdd
  15  �ZdEdd�ZdFdd�ZdFdd�ZdCdGdd�Z	dHdd�Z
  16  dId d!�Z	dCdJd#d$�ZdKd%d&�Z
  17  dKd'd(�ZdLd*d+�ZdMd,d-�ZdMd.d/�ZdMd0d1�ZdMd2d3�ZdNd5d6�ZdNd7d8�ZdOd9d:�Z			dPdQdAdB�ZdS)R�AsyncHTTP11Connectionii�N�originr
  18  �streamr�keepalive_expiry�float | None�return�NonecCsF||_||_||_d|_tj|_t�|_d|_	t
  19  jt
  20  j|j
  21  d�|_dS)Nr)Zour_roleZmax_incomplete_event_size)�_origin�_network_stream�_keepalive_expiry�
  22  _expire_atrr�_stater
  23  �_state_lock�_request_count�h11�
  24  ConnectionZCLIENT�MAX_INCOMPLETE_EVENT_SIZE�
  25  _h11_state)�selfrrr rrr�__init__/s�zAsyncHTTP11Connection.__init__�requestrrc
  26  �s��|�|jj�std|jj�d|j����|j4IdH�&|jtjtj	fvr5|j
  27  d7_
  28  tj|_d|_nt
  29  ��Wd�IdHn1IdHsHwYz�d|i}zZtdt||�4IdH�}|jdi|��IdHWd�IdHn1IdHszwYtdt||�4IdH�}|jdi|��IdHWd�IdHn1IdHs�wYWn	ty�Ynwtdt||�4IdH�"}|jdi|��IdH\}}}}}||||f|_Wd�IdHn1IdHs�wY|j}	|dk�s
  30  |jd	k�rd
  31  |k�rdk�rnnt|	|�}	t||t||�|||	d�d
  32  �WSt�yr}
  33  zGt��9tdt|�4IdH�}|��IdHWd�IdHn1IdH�sNwYWd�|
  34  �Wd�|
  35  �1�sgwY|
  36  �d}
  37  ~
  38  ww)NzAttempted to send request to z on connection to rr1Zsend_request_headersZsend_request_bodyZreceive_response_headers�esCONNECT��i,)�http_version�
  39  reason_phrase�network_stream)�status�headers�content�
  40  extensions�response_closedr)�can_handle_request�urlr�RuntimeErrorr$r)r(rrrr*rr'rr�logger�_send_request_headers�_send_request_bodyr�_receive_response_headers�return_valuer%�method�AsyncHTTP11UpgradeStreamr�HTTP11ConnectionByteStream�
  41  BaseExceptionr�_response_closed)r/r1�kwargs�tracer4r7r5r8�
  42  trailing_datar6�excrrr�handle_async_requestAs����(��(�(������(�
  43  (
  44  ��
  45  ,�
  46  ��
  47  ����z*AsyncHTTP11Connection.handle_async_requestc�sz�|j�di�}|�dd�}ttjti��tj|j|jj|j	d�}Wd�n1s,wY|j
  48  ||d�IdHdS)N�timeout�write)rD�targetr8�rN)r:�getr	r+rrrDr=rPr8�_send_event�r/r1�timeoutsrN�eventrrrr@�s���z+AsyncHTTP11Connection._send_request_headersc�s��|j�di�}|�dd�}t|jtj�sJ�|j2z3dHW}tj|d�}|j||d�IdHq6|jt�	�|d�IdHdS)NrNrO)�datarQ)
  49  r:rR�
  50  isinstancer�typing�
  51  AsyncIterabler+�DatarS�EndOfMessage)r/r1rUrN�chunkrVrrrrA�s��z(AsyncHTTP11Connection._send_request_bodyrV�	h11.EventrNc�s4�|j�|�}|dur|jj||d�IdHdSdS)NrQ)r.�sendr%rO)r/rVrNZ
  52  bytes_to_sendrrrrS�s
  53  ��z!AsyncHTTP11Connection._send_event�:tuple[bytes, int, bytes, list[tuple[bytes, bytes]], bytes]c	�s��|j�di�}|�dd�}	|j|d�IdH}t|tj�rn
  54  t|tj�r+|jdkr+nqd|j}|j	�
  55  �}|jj\}}||j|j
  56  ||fS)NrN�readTrQr2sHTTP/)r:rR�_receive_eventrXr+rZInformationalResponse�status_coder4r8�	raw_itemsr.rK�reason)	r/r1rUrNrVr4r8rK�_rrrrB�s �
  57  �
  58  �
  59  
  60  
  61  z/AsyncHTTP11Connection._receive_response_headers�typing.AsyncIterator[bytes]cCsb�|j�di�}|�dd�}	|j|d�IdH}t|tj�r%t|j�Vnt|tjtj	f�r0dSq)NrNraTrQ)
  62  r:rRrbrXr+r[�bytesrWr\ZPAUSEDrTrrr�_receive_response_body�s��z,AsyncHTTP11Connection._receive_response_body�h11.Event | type[h11.PAUSED]c�s��	ttjti��
  63  |j��}Wd�n1swY|tjurG|jj|j|d�IdH}|dkr@|jj	tj
  64  kr@d}t|��|j�|�n|Sq)NTrQ�z/Server disconnected without sending a response.)r	r+rr.Z
  65  next_eventZ	NEED_DATAr%ra�READ_NUM_BYTES�their_stateZ
  66  SEND_RESPONSEZreceive_data)r/rNrVrW�msgrrrrb�s��
  67  ��z$AsyncHTTP11Connection._receive_eventc	�s��|j4IdH�E|jjtjur0|jjtjur0tj|_|j�	�|j
  68  dur/t��}||j
  69  |_
  70  n|��IdHWd�IdHdSWd�IdHdS1IdHsSwYdS�N)r)r.Z	our_stater+ZDONErmrrr(Zstart_next_cycler&�time�	monotonicr'�aclose)r/�nowrrrrH�s�
  71  
  72  ���.z&AsyncHTTP11Connection._response_closedc�s�tj|_|j��IdHdSro)rrr(r%rr�r/rrrrr�s�zAsyncHTTP11Connection.aclose�boolcCs
  73  ||jkSro)r$�r/rrrrr<s
  74  z(AsyncHTTP11Connection.can_handle_requestcC�|jtjkSro�r(rrrtrrr�is_availablesz"AsyncHTTP11Connection.is_availablecCs<t��}|jduo
  75  ||jk}|jtjko|j�d�}|p|S)NZis_readable)rprqr'r(rrr%�get_extra_info)r/rsZkeepalive_expiredZserver_disconnectedrrr�has_expireds
  76  �z!AsyncHTTP11Connection.has_expiredcCrwrorxrtrrr�is_idle �zAsyncHTTP11Connection.is_idlecCrwro)r(rrrtrrr�	is_closed#r}zAsyncHTTP11Connection.is_closed�strcCs$t|j�}|�d|jj�d|j��S)Nz, HTTP/1.1, �, Request Count: )rr$r(�namer*rvrrr�info&s
  77  
  78  ��zAsyncHTTP11Connection.infoc	Cs6|jj}t|j�}d|�d|�d|jj�d|j�d�	S)N�<z [z, r�z]>)�	__class__rrr$r(r�r*)r/�
  79  class_namerrrr�__repr__-s
  80  ��zAsyncHTTP11Connection.__repr__c�s�|Srorrtrrr�
  81  __aenter__8s�z AsyncHTTP11Connection.__aenter__�exc_type�type[BaseException] | None�	exc_value�BaseException | None�	traceback�types.TracebackType | Nonec�s�|��IdHdSro)rr)r/r�r�r�rrr�	__aexit__;s�zAsyncHTTP11Connection.__aexit__ro)rr
  82  rrr r!r"r#)r1rr"r)r1rr"r#)rVr^rNr!r"r#)r1rr"r`)r1rr"rg)rNr!r"rj�r"r#)rr
  83  r"ru)r"ru)r"r)r"r)NNN)r�r�r�r�r�r�r"r#)rrrrlr-r0rMr@rArSrBrirbrHrrr<ryr{r|r~r�r�r�r�rrrrr+s6�
  84  
  85  K
  86  
  87  
  88  �
  89  
  90  
  91  
  92  
  93  
  94  
  95  
  96  
  97  
  98  
  99  �rc@s*eZdZddd�Zdd
 100  d�Zddd
 101  �ZdS)rF�
 102  connectionrr1rr"r#cCs||_||_d|_dS)NF)�_connection�_request�_closed)r/r�r1rrrr0Es
 103  z#HTTP11ConnectionByteStream.__init__rgcCs��d|ji}z;tdt|j|�4IdH�!|jjdi|��2z	3dHW}|Vq6Wd�IdHWdS1IdHs:wYWdStyj}zt��|��IdHWd�|�1s_wY|�d}~ww)Nr1Zreceive_response_bodyr)r�rr?r�rirGrrr)r/rIr]rLrrr�	__aiter__Js"�
 104  �2�
 105  ����z$HTTP11ConnectionByteStream.__aiter__c	�sj�|js3d|_tdt|j�4IdH�|j��IdHWd�IdHdS1IdHs,wYdSdS)NTr;)r�rr?r�r�rHrtrrrrrXs�.��z!HTTP11ConnectionByteStream.acloseN)r�rr1rr"r#)r"rgr�)rrrr0r�rrrrrrrFDs
 106  
 107  rFc@sReZdZd dd�Zd!d"dd�Zd!d#dd�Zd$dd�Z				d%d&dd�Zd'dd�Zd	S)(rErr�leading_datarhr"r#cCs||_||_dSro)�_stream�
 108  _leading_data)r/rr�rrrr0`s
 109  z!AsyncHTTP11UpgradeStream.__init__N�	max_bytes�intrNr!c�s>�|jr|jd|�}|j|d�|_|S|j�||�IdHSro)r�r�ra)r/r�rN�bufferrrrrads�zAsyncHTTP11UpgradeStream.readr�c�s�|j�||�IdHdSro)r�rO)r/r�rNrrrrOls�zAsyncHTTP11UpgradeStream.writec�s�|j��IdHdSro)r�rrrtrrrrros�zAsyncHTTP11UpgradeStream.aclose�ssl_context�ssl.SSLContext�server_hostname�
 110  str | Nonec�s�|j�|||�IdHSro)r��	start_tls)r/r�r�rNrrrr�rs�z"AsyncHTTP11UpgradeStream.start_tlsr�r�
 111  typing.AnycCs|j�|�Sro)r�rz)r/r�rrrrzzr}z'AsyncHTTP11UpgradeStream.get_extra_info)rrr�rhr"r#ro)r�r�rNr!r"rh)r�rhrNr!r"r#r�)NN)r�r�r�r�rNr!r"r)r�rr"r�)	rrrr0rarOrrr�rzrrrrrE_s
 112  
 113  �rE)'�
 114  __future__r�enum�logging�sslrp�typesrYr+Z_backends.baser�_exceptionsrrrrr	Z_modelsr
 115  rrZ_synchronizationr
 116  r�_tracerZ
 117  interfacesr�	getLoggerr?�Unionr[r\ZH11SendEvent�IntEnumrrrFrErrrr�<module>s6
 118  ��