+
    D#j                    r    ^ RI Ht ^ RIt^ RIt^ RIt^ RIHtHt R R ltR R lt	R R	 lt
 ! R
 R4      tR# )    )annotationsN)AnyCallablec                   V ^8  d   QhRR/# )   returnz
Any | None )formats   "Z/home/user/overdeck-private-tests/subrouter-s5-systray-latest/modules/systray/scheduler.py__annotate__r   	   s      :     c                      ^ RI p \        P                  ! RR\        R7       V P	                  RR4       ^ RIHp V#   \         d     R# i ; i)r   NignorezMGLib.unix_signal_add_full is deprecated; use GLibUnix.signal_add_full instead)messagecategoryGLibz2.0)r   )giwarningsfilterwarningsDeprecationWarningrequire_versiongi.repositoryr   	Exception)r   r   s     r   _load_glib_moduler   	   sM    c'	

 	65)& s   := AAc               $    V ^8  d   QhRRRRRR/# )r   callbackzCallable[..., Any]argsr   r   r	   )r
   s   "r   r   r      s"     * *1 *# *# *r   c                R    \        4       pVf   V ! V!  # VP                  ! V .VO5!  # N)r   idle_add)r   r   glibs   &* r   default_idle_addr"      s-    D|==)D))r   c                    V ^8  d   QhRRRR/# )r   targetCallable[[], None]r   zthreading.Threadr	   )r
   s   "r   r   r   !   s      $6 ;K r   c                V    \         P                  ! V R R7      pVP                  4        V# )T)r$   daemon)	threadingThreadstart)r$   threads   & r   start_background_threadr,   !   s"    VD9F
LLNMr   c                  |    ] tR t^'tRRRRRR/R R llt]R R l4       tR	 R
 ltR R ltRR R llt	R R lt
RtR# )RefreshSchedulerr    Nthread_runnertime_fnc               (    V ^8  d   QhRRRRRRRR/# )	r   r    zCallable[..., Any] | Noner/   z*Callable[[Callable[[], None]], Any] | Noner0   zCallable[[], float] | Noner   Noner	   )r
   s   "r   r   RefreshScheduler.__annotate__(   s5     5 5 ,5 B	5
 ,5 
5r   c               	    T;'       g    \         V n        T;'       g    \        V n        T;'       g    \        P                  V n        ^ V n        / V n        R# )r   N)r"   	_idle_addr,   _thread_runnertime_time_refresh_generation_pending_refreshes)selfr    r/   r0   s   &$$$r   __init__RefreshScheduler.__init__(   sH     "55%5+FF/F))		
#$ 24r   c                    V ^8  d   QhRRRR/# )r   accountr   r   strr	   )r
   s   "r   r   r3   6   s      c c r   c                	,   \        V R R4      p\        V\        4      '       d   V'       d   V# \        V RR4      p\        V RR4      p\        V\        4      '       d.   V'       d&   \        V\        4      '       d   V'       d   V RV 2# \        V 4      # )tray_keyNtoolslug:)getattr
isinstancer@   repr)r?   rB   rC   rD   s   &   r   _account_keyRefreshScheduler._account_key5   sx    7J5h$$Ow-w-dC  Tjs.C.CV1TF##G}r   c               4    V ^8  d   QhRRRRRRRRR	R
RRRR/# )r   accountsz	list[Any]last_fetched_forzCallable[[Any], float | None]interval_secondsintforceboolschedule_refresh_accountz Callable[[Any, int | None], Any]on_emptyr%   r   
int | Noner	   )r
   s   "r   r   r3   @   sQ       8 	
  #C % 
r   c                	   . p\        4       pV P                  4       p	V Fa  p
V! V
4      pV'       g   Ve   W,
          V8  g   K&  V P                  V
4      pW9   d   K?  VP                  V4       VP	                  V
4       Kc  	  V'       g
   V! 4        R # V ;P
                  ^,          un        V P
                  p\        V4      V P                  V&   V F  p
V! W4       K  	  V# r   )setr8   rI   addappendr9   lenr:   )r;   rL   rM   rN   rP   rR   rS   accounts_to_refreshscheduled_keysnowr?   last_fetchedaccount_key
generations   &&&&&&&       r   refresh_allRefreshScheduler.refresh_all@   s     *,#&5jjlG+G4L,0BEU0U"//80"";/#**73   #J  A% --
.12E.F
+*G$W9 +r   c               (    V ^8  d   QhRRRRRRRR/# )r   r?   r   r_   rT   run_refresh_accountz!Callable[[Any, int | None], None]r   r	   )r
   s   "r   r   r3   `   s2     
 

 
 ?	

 

r   c                	4   a V P                  W3V3R  ll4      # )c                   < S! V V4      # r   r	   )r?   r_   rc   s   &&r   <lambda>;RefreshScheduler.schedule_refresh_account.<locals>.<lambda>g   s    ;N<r   )r6   )r;   r?   r_   rc   s   &&&fr   rR   )RefreshScheduler.schedule_refresh_account`   s      """ 
 	
r   c               0    V ^8  d   QhRRRRRRRRR	R
RR/# )r   r?   r   r_   rT   fetch_snapshotzCallable[[Any], Any]apply_snapshotz%Callable[[Any, Any, int | None], Any]on_errorz2Callable[[Any, int | None, Exception], Any] | Noner   r	   )r
   s   "r   r   r3   m   sG     3 33 3 -	3
 >3 E3 
3r   c                	   aaaaa  V! S4      oR TTTTT3R llpT P                  T4      #   \          d)   pSe   T P                  SSST4      u R p?#  R p?R # R p?ii ; i)Nc                   V ^8  d   QhRR/# )r   r   r2   r	   )r
   s   "r   r   :RefreshScheduler.run_refresh_account.<locals>.__annotate__|   s     	7 	7T 	7r   c                 x   <  S! SSS4       R #   \          d    p Se   S! SST 4        R p ? R #  R p ? R # R p ? ii ; ir   )r   )excr?   rk   r_   rl   snapshots    r   _apply_on_main_loopARefreshScheduler.run_refresh_account.<locals>._apply_on_main_loop|   s>    7w*= 7'Wj#66 (7s   
 949)r   r5   )	r;   r?   r_   rj   rk   rl   rq   rs   rr   s	   &ff&ff  @r   rc   $RefreshScheduler.run_refresh_accountm   s^    	%g.H	7 	7 ~~122  	#~~hSII	s   - A AA A c               $    V ^8  d   QhRRRRRR/# )r   r_   rO   on_completer%   r   r2   r	   )r
   s   "r   r   r3      s#     	 	 	;M 	RV 	r   c                	    V P                   P                  V4      pVf   R # V^,          pV^ 8  d   W0P                   V&   R # V P                   V V! 4        R # r   )r:   get)r;   r_   rw   pendings   &&& r   finish_refreshRefreshScheduler.finish_refresh   sT    ))--j9?1Q;29##J/##J/r   )r5   r:   r9   r6   r8   r   )__name__
__module____qualname____firstlineno__r<   staticmethodrI   r`   rR   rc   r{   __static_attributes__r	   r   r   r.   r.   '   sU    5 /35 EI	5
 /35  @
30	 	r   r.   )
__future__r   r(   r7   r   typingr   r   r   r"   r,   r.   r	   r   r   <module>r      s/    "     "*g gr   