Format: application/x-python-code
⬇ Download File (4.8 KB)
   1  o
   2  
   3  7'h��@s�ddlmZddlZddlZddlZddlmZmZmZm	Z	m
   4  Z
   5  mZmZddl
   6  mZddlmZmZmZGdd	�d	e�ZGd
   7  d�de�ZdS)�)�annotationsN�)�ConnectError�ConnectTimeout�	ReadError�ReadTimeout�
   8  WriteError�WriteTimeout�map_exceptions)�is_socket_readable�)�
   9  SOCKET_OPTION�AsyncNetworkBackend�AsyncNetworkStreamc@sReZdZd dd�Zd!d"d
  10  d�Zd!d#dd�Zd$dd�Z		d%d&dd�Zd'dd�ZdS)(�AnyIOStream�stream�anyio.abc.ByteStream�return�NonecCs
  11  ||_dS�N)�_stream)�selfr�r�NC:\Users\shubh\Videos\agent\nova\Lib\site-packages\httpcore/_backends/anyio.py�__init__s
  12  zAnyIOStream.__init__N�	max_bytes�int�timeout�float | None�bytesc
  13  �s��tttjttjttjti}t|��Ht�|��2z|j	j
  14  |d�IdHWWd�Wd�StjyIYWd�Wd�dSw1sMwYWd�dS1s]wYdS)N)r�)�TimeoutErrorr�anyio�BrokenResourceErrorr�ClosedResourceError�EndOfStreamr
  15  �
  16  fail_afterrZreceive)rrr�exc_maprrr�reads&��
  17  �����"�zAnyIOStream.read�bufferc	�s��|sdStttjttjti}t|��0t�|��|jj	|d�IdHWd�n1s.wYWd�dSWd�dS1sFwYdS)N)�item)
  18  r!r	r"r#rr$r
  19  r&r�send)rr)rr'rrr�write's��
  20  ��"�zAnyIOStream.writec�s�|j��IdHdSr)r�aclose)rrrrr-4��zAnyIOStream.aclose�ssl_context�ssl.SSLContext�server_hostname�
  21  str | Nonerc�s��tttjttjttjti}t|��Iz(t�	|��tj
  22  jjj
  23  |j||ddd�IdH}Wd�n1s5wYWntyP}z	|��IdH|�d}~wwWd�t|�S1s^wYt|�S)NF)r/�hostnameZstandard_compatible�server_side)r!rr"r#rr%�ssl�SSLErrorr
  24  r&�streams�tlsZ	TLSStream�wrapr�	Exceptionr-r)rr/r1rr'Z
  25  ssl_stream�excrrr�	start_tls7s8��
  26  
  27  ������
  28  �
  29  �
  30  zAnyIOStream.start_tls�info�str�
  31  typing.AnycCs�|dkr|j�tjjjjd�S|dkr|j�tjjj	d�S|dkr+|j�tjjj
  32  d�S|dkr9|j�tjjjd�S|dkrK|j�tjjjd�}t|�SdS)N�
  33  ssl_object�client_addrZserver_addr�socketZis_readable)
  34  r�extrar"r7r8ZTLSAttributer@�abcZSocketAttribute�
  35  local_address�remote_addressZ
  36  raw_socketr)rr=�sockrrr�get_extra_infoRszAnyIOStream.get_extra_info)rrrrr)rrrrrr)r)rrrrr)rr�NN)r/r0r1r2rrrr)r=r>rr?)	�__name__�
  37  __module__�__qualname__rr(r,r-r<rHrrrrrs
  38  
  39  
  40  �rc@s8eZdZ			dddd�Z		dddd�Zddd�ZdS)�AnyIOBackendN�hostr>�portrrrrEr2�socket_options�%typing.Iterable[SOCKET_OPTION] | Nonerrc		�s��|durg}tttttjti}t|��@t�|��tj|||d�IdH}|D]}|j	j
  41  |�q(Wd�n1s;wYWd�t|�SWd�t|�S1sWwYt|�S)N)Zremote_hostZremote_portZ
  42  local_host)r!r�OSErrorrr"r#r
  43  r&�connect_tcp�_raw_socket�
  44  setsockoptr)	rrNrOrrErPr'r�optionrrrrSbs2��
  45  ���
  46  �
  47  �
  48  �
  49  �
  50  zAnyIOBackend.connect_tcp�pathc	�s��|durg}tttttjti}t|��=t�|��t�|�IdH}|D]}|j	j
  51  |�q%Wd�n1s8wYWd�t|�SWd�t|�S1sTwYt|�Sr)r!rrRrr"r#r
  52  r&Zconnect_unixrTrUr)rrWrrPr'rrVrrr�connect_unix_socket}s*��
  53  ��
  54  ��
  55  ��z AnyIOBackend.connect_unix_socket�seconds�floatrc�s�t�|�IdHdSr)r"�sleep)rrYrrrr[�r.zAnyIOBackend.sleep)NNN)rNr>rOrrrrEr2rPrQrrrI)rWr>rrrPrQrr)rYrZrr)rJrKrLrSrXr[rrrrrMas��rM)�
  56  __future__rr5�typingr"�_exceptionsrrrrrr	r
  57  �_utilsr�baser
  58  rrrrMrrrr�<module>s$	L