o
    .j                     @  s   d dl mZ d dlmZmZ ddlmZ G dd dZeG dd deZeG d	d
 d
eZ	eG dd deZ
eG dd de
ZeG dd deZeG dd deZeG dd de
ZeG dd de
ZeG dd de
ZdS )    )annotations)	dataclassfield   )HeadersTypec                   @     e Zd ZU dZded< dS )Eventzi
    Base class for HTTP events.

    This is an abstract base class that should not be initialized.
    int_idN__name__
__module____qualname____doc____annotations__ r   r   Y/home/thesage/.local/lib/python3.10/site-packages/urllib3/contrib/hface/events/_events.pyr      s   
 r   c                   @  s<   e Zd ZU dZdZded< edddZded	< dddZdS )ConnectionTerminatedzB
    Connection was terminated.

    Extends :class:`.Event`.
    r   r	   
error_codeNF)defaultcompare
str | Nonemessagereturnstrc                 C  $   t | j}| d| jd| jdS )Nz(error_code=z
, message=))typer   r   r   selfclsr   r   r   __repr__5      
zConnectionTerminated.__repr__r   r   )	r   r   r   r   r   r   r   r   r!   r   r   r   r   r   '   s
   
 r   c                   @  s0   e Zd ZU dZded< dZded< ddd	Zd
S )GoawayReceivedzA
    GOAWAY frame was received

    Extends :class:`.Event`.
    r	   last_stream_idr   r   r   r   c                 C  r   )Nz(last_stream_id=, error_code=r   )r   r   r%   r   r   r   r   r   r!   H   s
   
zGoawayReceived.__repr__Nr#   )r   r   r   r   r   r   r!   r   r   r   r   r$   :   
   
 r$   c                   @  r   )StreamEventz
    Event on one HTTP stream.

    This is an abstract base class that should not be used directly.

    Extends :class:`.Event`.
    r	   	stream_idNr   r   r   r   r   r(   U   s   
 	r(   c                   @  s4   e Zd ZU dZdZded< dZded< dd
dZdS )StreamResetat  
    One stream of an HTTP connection was reset.

    When a stream is reset, it must no longer be used, but the parent
    connection and other streams are unaffected.

    This is an abstract base class that should not be used directly.
    More specific subclasses (StreamResetSent or StreamResetReceived)
    should be emitted.

    Extends :class:`.StreamEvent`.
    r   r	   r   Tbool
end_streamr   r   c                 C  r   )N(stream_id=r&   r   )r   r   r)   r   r   r   r   r   r!   v   r"   zStreamReset.__repr__Nr#   )r   r   r   r   r   r   r,   r!   r   r   r   r   r*   c   s
   
 r*   c                   @  s   e Zd ZdZdS )StreamResetReceivedz
    One stream of an HTTP connection was reset by the peer.

    This probably means that we did something that the peer does not like.

    Extends :class:`.StreamReset`.
    N)r   r   r   r   r   r   r   r   r.   {   s    r.   c                   @  s    e Zd ZU ded< dddZdS )	HandshakeCompletedr   alpn_protocolr   r   c                 C  s   t | j}| d| j dS )Nz(alpn=r   )r   r   r0   r   r   r   r   r!      s   
zHandshakeCompleted.__repr__Nr#   )r   r   r   r   r!   r   r   r   r   r/      s   
 r/   c                   @  0   e Zd ZU dZded< dZded< dd	d
ZdS )HeadersReceivedzU
    A frame with HTTP headers was received.

    Extends :class:`.StreamEvent`.
    r   headersFr+   r,   r   r   c                 C  0   t | j}| d| jdt| j d| jdS )Nr-   , len(headers)=, end_stream=r   )r   r   r)   lenr3   r,   r   r   r   r   r!         
zHeadersReceived.__repr__Nr#   r   r   r   r   r   r,   r!   r   r   r   r   r2      r'   r2   c                   @  r1   )DataReceivedzR
    A frame with HTTP data was received.

    Extends :class:`.StreamEvent`.
    bytesdataFr+   r,   r   r   c                 C  r4   )Nr-   z, len(data)=r6   r   )r   r   r)   r7   r<   r,   r   r   r   r   r!      r8   zDataReceived.__repr__Nr#   r9   r   r   r   r   r:      r'   r:   c                   @  s,   e Zd ZU ded< dZded< ddd	Zd
S )EarlyHeadersReceivedr   r3   Fr+   r,   r   r   c                 C  s(   t | j}| d| jdt| j dS )Nr-   r5   z, end_stream=False))r   r   r)   r7   r3   r   r   r   r   r!      s
   
zEarlyHeadersReceived.__repr__Nr#   )r   r   r   r   r,   r!   r   r   r   r   r=      s   
 r=   N)
__future__r   dataclassesr   r   _typingr   r   r   r$   r(   r*   r.   r/   r2   r:   r=   r   r   r   r   <module>   s,   
