
    vKg                     r    S SK r S SKrS SKrS SKr\R                  " \5      r " S S\R                  5      rg)    Nc                   \   ^  \ rS rSrS
U 4S jjrS\4S jr\S 5       rS r	S r
S rS	rU =r$ )Reactor   c                    > [         TU ]  5         Xl        [        R                  " 5       U l        [        R                  " 5       U l        [        R                  " 5       U l
        SU l        0 U l        g )NT)super__init__driverasyncionew_event_looploop	threadingLocklockEventeventdaemonhandlers)selfr	   	__class__s     _/var/www/highfloat_scraper/venv/lib/python3.13/site-packages/undetected_chromedriver/reactor.pyr   Reactor.__init__   sM    **,	NN$	__&
    callbackc                     U R                      X R                  UR                  5       '   SSS5        g! , (       d  f       g= f)z

Parameters
----------
event_name: str
    example "Network.responseReceived"

callback: callable
    callable which accepts 1 parameter: the message object dictionary

Returns
-------

N)r   r   lower)r   method_namer   s      r   add_event_handlerReactor.add_event_handler   s*     YY19MM+++-. YYs	   3
Ac                 @    U R                   R                  5       (       + $ )N)r   is_setr   s    r   runningReactor.running+   s    ::$$&&&r   c                      [         R                  " U R                  5        U R                  R                  U R	                  5       5        g ! [
         a   n[        R                  SU5         S nAg S nAff = f)NzReactor.run() => %s)r
   set_event_loopr   run_until_completelisten	Exceptionloggerwarning)r   es     r   runReactor.run/   sS    	5""499-II((7 	5NN0!44	5s   A	A 
A6A11A6c                   #     U R                      [        U R                  SS 5      (       a  [        U R                  R                  SS 5      (       ao  U R                  R                  R                  R                  5       (       a<  [        R                  " U R                  R                  =(       d    S5      I S h  vN   O
 S S S 5        g  S S S 5        M   N! , (       d  f       N= f7f)Nserviceprocessg      ?)	r   getattrr	   r/   r0   pollr
   sleep_delayr!   s    r   _wait_service_startedReactor._wait_service_started6   s     DKKD99 3 3YEE++3388::!--(:(:(BdCCC  D   D s5   C*B,C<C=C	C*
C*C
C'#C*c                   #    U R                   (       Gas  U R                  5       I S h  vN   [        R                  " S5      I S h  vN    U R                     U R
                  R                  S5      nS S S 5        W H  n UR                  S5      n[        R                  " U5      nUR                  S5      nUR                  S5      nSU R                  ;   a4  U R                  R                  S U R                  S   U5      I S h  vN   M  UR                  5       U R                  ;   aB  U R                  R                  S U R                  UR                  5          U5      I S h  vN   M  M     U R                   (       a  GMr  g g  GNa GNF! , (       d  f       GN"= f N N:! [         a  nUS eS nAff = f! [         a5  nS[        U5      ;   a   S nANe[         R"                  " SU5         S nANS nAff = f7f)N   performancemessagemethod*zinvalid session idzexception ignored :)r"   r5   r
   r3   r   r	   get_loggetjsonloadsr   r   run_in_executorr   r(   strloggingdebug)r   log_entriesentryobj_serializedobjr:   r;   r+   s           r   r'   Reactor.listenB   s    lll,,...--"""<YY"&++"5"5m"DK  )E*.3ii	.B"jj8"%'')"4!(X!6$--/"&))";"; $dmmC&8'#   $\\^t}}<"&))";"; $dmmFLLN&CW#   = ) lll." Y
 % *T)*  <'3q61MM"7;;	<s   &G<F	G<FG<F: F4F: BF%F!	F%F: AF%(F#)F%-F: 3G<G<G<
FF: !F%#F%%
F7/F22F77F: :
G9G4G<G4/G<4G99G<)r   r	   r   r   r   r   )r	   Chrome)__name__
__module____qualname____firstlineno__r   callabler   propertyr"   r,   r5   r'   __static_attributes____classcell__)r   s   @r   r   r      s<    	:x :$ ' '5
!< !<r   r   )	r
   r?   rC   r   	getLoggerrK   r)   Threadr    r   r   <module>rV      s9        
		8	$V<i V<r   