
    'h2                         d dl Z d dlmZ d dlmZ d dlmZ  G d dej                        Z G d dej                        Z
y)	    N)List)flow)serializablec                   6    e Zd ZddZed        Zd Zd Zd Zy)
TCPMessageNc                 Z    || _         || _        |xs t        j                         | _        y N)from_clientcontenttime	timestamp)selfr
   r   r   s       e/var/www/html/scrapers/gsc/venv/lib/python3.12/site-packages/seleniumwire/thirdparty/mitmproxy/tcp.py__init__zTCPMessage.__init__
   s#    &"1diik    c                      | | S r	    )clsstates     r   
from_statezTCPMessage.from_state   s    E{r   c                 H    | j                   | j                  | j                  fS r	   r
   r   r   r   s    r   	get_statezTCPMessage.get_state   s    t~~==r   c                 .    |\  | _         | _        | _        y r	   r   )r   r   s     r   	set_statezTCPMessage.set_state   s    9>6$,r   c                 j    dj                  | j                  rdndt        | j                              S )Nz{direction} {content}z->z<-)	directionr   )formatr
   reprr   r   s    r   __repr__zTCPMessage.__repr__   s3    &--"..dD& . 
 	
r   r	   )	__name__
__module____qualname__r   classmethodr   r   r   r!   r   r   r   r   r      s*    2
  >?
r   r   c                        e Zd ZdZd fd	Zej                  j                  j                         Ze	e
   ed<   d Z xZS )TCPFlowzD
    A TCPFlow is a simplified representation of a TCP session.
    c                 8    t         |   d|||       g | _        y )Ntcp)superr   messages)r   client_connserver_connlive	__class__s       r   r   zTCPFlow.__init__&   s    [$?*,r   r+   c                 J    dj                  t        | j                              S )Nz<TCPFlow ({} messages)>)r   lenr+   r   s    r   r!   zTCPFlow.__repr__-   s    (//DMM0BCCr   r	   )r"   r#   r$   __doc__r   r   Flow_stateobject_attributescopyr   r   r!   __classcell__)r/   s   @r   r'   r'       s>    - #ii??DDF*.z*:J'Dr   r'   )r   typingr   !seleniumwire.thirdparty.mitmproxyr   +seleniumwire.thirdparty.mitmproxy.coretypesr   Serializabler   r3   r'   r   r   r   <module>r;      s5      2 D
** 
0Ddii Dr   