Ë
    RPfò  ã                  óä  — d Z ddlmZ ddlZddlZej
                  rddlmZmZ  G d„ de	«      Z
 G d„ d	e
«      Z G d
„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d „ d!e«      Z G d"„ d#e«      Z G d$„ d%e«      Z G d&„ d'e«      Z G d(„ d)e«      Z G d*„ d+e«      Z G d,„ d-e«      Z G d.„ d/e
«      Z G d0„ d1e	«      Z G d2„ d3e	«      Z  G d4„ d5e!«      Z" G d6„ d7e"«      Z# G d8„ d9e"«      Z$ G d:„ d;e"«      Z% G d<„ d=e"«      Z&ejN                  	 d?	 	 	 d@d>„«       Z(y)Aul  
Our exception hierarchy:

* HTTPError
  x RequestError
    + TransportError
      - TimeoutException
        Â· ConnectTimeout
        Â· ReadTimeout
        Â· WriteTimeout
        Â· PoolTimeout
      - NetworkError
        Â· ConnectError
        Â· ReadError
        Â· WriteError
        Â· CloseError
      - ProtocolError
        Â· LocalProtocolError
        Â· RemoteProtocolError
      - ProxyError
      - UnsupportedProtocol
    + DecodingError
    + TooManyRedirects
  x HTTPStatusError
* InvalidURL
* CookieConflict
* StreamError
  x StreamConsumed
  x StreamClosed
  x ResponseNotRead
  x RequestNotRead
é    )ÚannotationsNé   )ÚRequestÚResponsec                  ó\   ‡ — e Zd ZdZdˆ fd„Zedd„«       Zej                  dd„«       Zˆ xZS )Ú	HTTPErrora’  
    Base class for `RequestError` and `HTTPStatusError`.

    Useful for `try...except` blocks when issuing a request,
    and then calling `.raise_for_status()`.

    For example:

    ```
    try:
        response = httpx.get("https://www.example.com")
        response.raise_for_status()
    except httpx.HTTPError as exc:
        print(f"HTTP Exception for {exc.request.url} - {exc}")
    ```
    c                ó2   •— t         ‰| �  |«       d | _        y ©N©ÚsuperÚ__init__Ú_request©ÚselfÚmessageÚ	__class__s     €úK/var/www/fastapitest/venv/lib/python3.12/site-packages/httpx/_exceptions.pyr   zHTTPError.__init__<   s   ø€ Ü‰Ñ˜Ô!Ø(,ˆ�ó    c                óH   — | j                   €t        d«      ‚| j                   S )Nz'The .request property has not been set.)r   ÚRuntimeError)r   s    r   ÚrequestzHTTPError.request@   s"   € à�=‰=Ð ÜÐHÓIÐIØ�}‰}Ðr   c                ó   — || _         y r
   )r   )r   r   s     r   r   zHTTPError.requestF   s	   € àˆ�r   ©r   ÚstrÚreturnÚNone)r   r   )r   r   r   r   )	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Úpropertyr   ÚsetterÚ__classcell__©r   s   @r   r   r   *   s9   ø„ ñõ"-ð òó ðð
 ‡^�^ò ó ô r   r   c                  ó*   ‡ — e Zd ZdZddœdˆ fd„Zˆ xZS )ÚRequestErrorzS
    Base class for all exceptions that may occur when issuing a `.request()`.
    N)r   c               ó2   •— t         ‰| �  |«       || _        y r
   r   )r   r   r   r   s      €r   r   zRequestError.__init__P   s   ø€ Ü‰Ñ˜Ô!ð  ˆ�r   )r   r   r   úRequest | Noner   r   ©r   r   r   r    r   r#   r$   s   @r   r&   r&   K   s   ø„ ñð CG÷  ó  r   r&   c                  ó   — e Zd ZdZy)ÚTransportErrorzU
    Base class for all exceptions that occur at the level of the Transport API.
    N©r   r   r   r    © r   r   r+   r+   [   ó   „ òr   r+   c                  ó   — e Zd ZdZy)ÚTimeoutExceptionzM
    The base class for timeout errors.

    An operation has timed out.
    Nr,   r-   r   r   r0   r0   d   ó   „ òr   r0   c                  ó   — e Zd ZdZy)ÚConnectTimeoutz1
    Timed out while connecting to the host.
    Nr,   r-   r   r   r3   r3   l   r.   r   r3   c                  ó   — e Zd ZdZy)ÚReadTimeoutz7
    Timed out while receiving data from the host.
    Nr,   r-   r   r   r5   r5   r   r.   r   r5   c                  ó   — e Zd ZdZy)ÚWriteTimeoutz3
    Timed out while sending data to the host.
    Nr,   r-   r   r   r7   r7   x   r.   r   r7   c                  ó   — e Zd ZdZy)ÚPoolTimeoutzB
    Timed out waiting to acquire a connection from the pool.
    Nr,   r-   r   r   r9   r9   ~   r.   r   r9   c                  ó   — e Zd ZdZy)ÚNetworkErrorzo
    The base class for network-related errors.

    An error occurred while interacting with the network.
    Nr,   r-   r   r   r;   r;   ‡   r1   r   r;   c                  ó   — e Zd ZdZy)Ú	ReadErrorz2
    Failed to receive data from the network.
    Nr,   r-   r   r   r=   r=   �   r.   r   r=   c                  ó   — e Zd ZdZy)Ú
WriteErrorz2
    Failed to send data through the network.
    Nr,   r-   r   r   r?   r?   •   r.   r   r?   c                  ó   — e Zd ZdZy)ÚConnectErrorz+
    Failed to establish a connection.
    Nr,   r-   r   r   rA   rA   ›   r.   r   rA   c                  ó   — e Zd ZdZy)Ú
CloseErrorz'
    Failed to close a connection.
    Nr,   r-   r   r   rC   rC   ¡   r.   r   rC   c                  ó   — e Zd ZdZy)Ú
ProxyErrorzB
    An error occurred while establishing a proxy connection.
    Nr,   r-   r   r   rE   rE   ª   r.   r   rE   c                  ó   — e Zd ZdZy)ÚUnsupportedProtocolz€
    Attempted to make a request to an unsupported protocol.

    For example issuing a request to `ftp://www.example.com`.
    Nr,   r-   r   r   rG   rG   °   r1   r   rG   c                  ó   — e Zd ZdZy)ÚProtocolErrorz$
    The protocol was violated.
    Nr,   r-   r   r   rI   rI   ¸   r.   r   rI   c                  ó   — e Zd ZdZy)ÚLocalProtocolErrorzæ
    A protocol was violated by the client.

    For example if the user instantiated a `Request` instance explicitly,
    failed to include the mandatory `Host:` header, and then issued it directly
    using `client.send()`.
    Nr,   r-   r   r   rK   rK   ¾   s   „ òr   rK   c                  ó   — e Zd ZdZy)ÚRemoteProtocolErrorz^
    The protocol was violated by the server.

    For example, returning malformed HTTP.
    Nr,   r-   r   r   rM   rM   È   r1   r   rM   c                  ó   — e Zd ZdZy)ÚDecodingErrorzG
    Decoding of the response failed, due to a malformed encoding.
    Nr,   r-   r   r   rO   rO   Ó   r.   r   rO   c                  ó   — e Zd ZdZy)ÚTooManyRedirectsz
    Too many redirects.
    Nr,   r-   r   r   rQ   rQ   Ù   r.   r   rQ   c                  ó$   ‡ — e Zd ZdZdˆ fd„Zˆ xZS )ÚHTTPStatusErrorz|
    The response had an error HTTP status of 4xx or 5xx.

    May be raised when calling `response.raise_for_status()`
    c               ó@   •— t         ‰| �  |«       || _        || _        y r
   )r   r   r   Úresponse)r   r   r   rU   r   s       €r   r   zHTTPStatusError.__init__é   s   ø€ Ü‰Ñ˜Ô!ØˆŒØ ˆ�r   )r   r   r   r   rU   r   r   r   r)   r$   s   @r   rS   rS   â   s   ø„ ñ÷!ñ !r   rS   c                  ó$   ‡ — e Zd ZdZdˆ fd„Zˆ xZS )Ú
InvalidURLz7
    URL is improperly formed or cannot be parsed.
    c                ó$   •— t         ‰| �  |«       y r
   ©r   r   r   s     €r   r   zInvalidURL.__init__ô   ó   ø€ Ü‰Ñ˜Õ!r   r   r)   r$   s   @r   rW   rW   ï   s   ø„ ñ÷"ñ "r   rW   c                  ó$   ‡ — e Zd ZdZdˆ fd„Zˆ xZS )ÚCookieConflictz†
    Attempted to lookup a cookie by name, but multiple cookies existed.

    Can occur when calling `response.cookies.get(...)`.
    c                ó$   •— t         ‰| �  |«       y r
   rY   r   s     €r   r   zCookieConflict.__init__ÿ   rZ   r   r   r)   r$   s   @r   r\   r\   ø   s   ø„ ñ÷"ñ "r   r\   c                  ó$   ‡ — e Zd ZdZdˆ fd„Zˆ xZS )ÚStreamErrorz‡
    The base class for stream exceptions.

    The developer made an error in accessing the request stream in
    an invalid way.
    c                ó$   •— t         ‰| �  |«       y r
   rY   r   s     €r   r   zStreamError.__init__  rZ   r   r   r)   r$   s   @r   r_   r_   	  s   ø„ ñ÷"ñ "r   r_   c                  ó$   ‡ — e Zd ZdZdˆ fd„Zˆ xZS )ÚStreamConsumedz]
    Attempted to read or stream content, but the content has already
    been streamed.
    c                ó(   •— d}t         ‰| �  |«       y )Na]  Attempted to read or stream some content, but the content has already been streamed. For requests, this could be due to passing a generator as request content, and then receiving a redirect response or a secondary request as part of an authentication flow.For responses, this could be due to attempting to stream the response content more than once.rY   r   s     €r   r   zStreamConsumed.__init__  s   ø€ ð&ð 	ô 	‰Ñ˜Õ!r   ©r   r   r)   r$   s   @r   rb   rb     s   ø„ ñ÷
	"ñ 	"r   rb   c                  ó$   ‡ — e Zd ZdZdˆ fd„Zˆ xZS )ÚStreamClosedz\
    Attempted to read or stream response content, but the request has been
    closed.
    c                ó(   •— d}t         ‰| �  |«       y )NzDAttempted to read or stream content, but the stream has been closed.rY   r   s     €r   r   zStreamClosed.__init__-  s   ø€ àUð 	ô 	‰Ñ˜Õ!r   rd   r)   r$   s   @r   rf   rf   '  s   ø„ ñ÷
"ñ "r   rf   c                  ó$   ‡ — e Zd ZdZdˆ fd„Zˆ xZS )ÚResponseNotReadzY
    Attempted to access streaming response content, without having called `read()`.
    c                ó(   •— d}t         ‰| �  |«       y )NzOAttempted to access streaming response content, without having called `read()`.rY   r   s     €r   r   zResponseNotRead.__init__9  ó   ø€ ð/ð 	ô 	‰Ñ˜Õ!r   rd   r)   r$   s   @r   ri   ri   4  ó   ø„ ñ÷"ñ "r   ri   c                  ó$   ‡ — e Zd ZdZdˆ fd„Zˆ xZS )ÚRequestNotReadzX
    Attempted to access streaming request content, without having called `read()`.
    c                ó(   •— d}t         ‰| �  |«       y )NzNAttempted to access streaming request content, without having called `read()`.rY   r   s     €r   r   zRequestNotRead.__init__F  rk   r   rd   r)   r$   s   @r   rn   rn   A  rl   r   rn   c              #  óN   K  — 	 d–— y# t         $ r}| �| |_        |‚d}~ww xY w­w)z—
    A context manager that can be used to attach the given request context
    to any `RequestError` exceptions that are raised within the block.
    N)r&   r   )r   Úexcs     r   Úrequest_contextrr   N  s/   è ø€ ðÜøÜò ØÐØ!ˆCŒKØˆ	ûðüs   ‚%„	 ˆ%‰	"’�"¢%r
   )r   r(   r   ztyping.Iterator[None]))r    Ú
__future__r   Ú
contextlibÚtypingÚTYPE_CHECKINGÚ_modelsr   r   Ú	Exceptionr   r&   r+   r0   r3   r5   r7   r9   r;   r=   r?   rA   rC   rE   rG   rI   rK   rM   rO   rQ   rS   rW   r\   r   r_   rb   rf   ri   rn   Úcontextmanagerrr   r-   r   r   ú<module>rz      s¤  ðñõ@ #ã Û à	×Òß*ô �	ô  ôB �9ô  ô �\ô ô�~ô ôÐ%ô ôÐ"ô ôÐ#ô ôÐ"ô ô�>ô ô�ô ô�ô ô�<ô ô�ô ô�ô ô˜.ô ô�Nô ô˜ô ô˜-ô ô�Lô ô�|ô ô
!�iô 
!ô"�ô "ô"�Yô "ô"	"�,ô 	"ô"�[ô "ô$
"�;ô 
"ô
"�kô 
"ô
"�[ô 
"ð ×Ñà"ðØðàòó ñr   