+
    i                     ~    R t ^ RIt^ RIt^ RIHt ^ RIHt ^ RIHt ^ RIHt Rt	 ! R R]P                  4      tR	 tR# )
z'Utilities for the gRPC Python Beta API.N)implementations)
interfaces)callable_util)futurez6Exception calling connectivity future "done" callback!c                   z   a  ] tR t^t o R tR tR tR tR tR t	R t
RR	 ltRR
 ltRR ltR tR tR tRtV tR# )_ChannelReadyFuturec                p    \         P                  ! 4       V n        Wn        R V n        R V n        . V n        R# )FN)	threading	Condition
_condition_channel_matured
_cancelled_done_callbacks)selfchannels   &&f/Users/igloo/.openclaw/workspace/scratch/fb_ad_env/lib/python3.14/site-packages/grpc/beta/utilities.py__init___ChannelReadyFuture.__init__   s-    #--/!    c                   Vf   R M\         P                   ! 4       V,           pV P                  ;_uu_ 4         V P                  '       d   \        P                  ! 4       hV P
                  '       d    R R R 4       R # Vf   V P                  P                  4        Ke  V\         P                   ! 4       ,
          pV^ 8  d   \        P                  ! 4       hV P                  P                  VR7       K    + '       g   i     R # ; i)N)timeout)timer   r   r   CancelledErrorr   waitTimeoutError)r   r   until	remainings   &&  r   _block_ChannelReadyFuture._block'   s    TYY[7-B___??? //11=== _ =OO((* %		 3I 1}$1133OO(((; __s   C3&C32C3=A6C33D	c                   V P                   ;_uu_ 4        V P                  '       g   V\        P                  P                  J dd   R V n        V P                  P                  V P                  4       V P                   P                  4        \        V P                  4      pRV n        M RRR4       R#  RRR4       X F  p\        P                  ! V\        V 4       K!  	  R#   + '       g   i     L7; i)TN)r   r   r   ChannelConnectivityREADYr   r   unsubscribe_update
notify_alltupler   r   call_logging_exceptions$_DONE_CALLBACK_EXCEPTION_LOG_MESSAGE)r   connectivitydone_callbacksdone_callbacks   &&  r   r$   _ChannelReadyFuture._update7   s    ___OOO J$B$B$H$HH $))$,,7**,!&t';';!<'+$ _ %  ,M11CT , _s   BC$$C4	c                   V P                   ;_uu_ 4        V P                  '       gd   R V n        V P                  P	                  V P
                  4       V P                   P                  4        \        V P                  4      pRV n        M RRR4       R#  RRR4       X F  p\        P                  ! V\        V 4       K!  	  R #   + '       g   i     L7; i)TNF)r   r   r   r   r#   r$   r%   r&   r   r   r'   r(   )r   r*   r+   s   &  r   cancel_ChannelReadyFuture.cancelJ   s    ___==="&))$,,7**,!&t';';!<'+$ _ %  ,M11CT ,
  _s   A7CC	c                    V P                   ;_uu_ 4        V P                  uuR R R 4       #   + '       g   i     R # ; iN)r   r   r   s   &r   	cancelled_ChannelReadyFuture.cancelled\   s    ___?? ___s   ,=	c                    V P                   ;_uu_ 4        V P                  '       * ;'       d    V P                  '       * uuR R R 4       #   + '       g   i     R # ; ir1   r   r   r   r2   s   &r   running_ChannelReadyFuture.running`   s0    ___&<<t}}+< ___s   *A

A	c                    V P                   ;_uu_ 4        V P                  ;'       g    V P                  uuR R R 4       #   + '       g   i     R # ; ir1   r6   r2   s   &r   done_ChannelReadyFuture.doned   s*    ___??33dmm ___s    A  A	Nc                (    V P                  V4       R # r1   r   r   r   s   &&r   result_ChannelReadyFuture.resulth       Gr   c                (    V P                  V4       R # r1   r=   r>   s   &&r   	exception_ChannelReadyFuture.exceptionk   rA   r   c                (    V P                  V4       R # r1   r=   r>   s   &&r   	traceback_ChannelReadyFuture.tracebackn   rA   r   c                
   V P                   ;_uu_ 4        V P                  '       g9   V P                  '       g'   V P                  P	                  V4        R R R 4       R # R R R 4       V! V 4       R #   + '       g   i     L; ir1   )r   r   r   r   append)r   fns   &&r   add_done_callback%_ChannelReadyFuture.add_done_callbackq   sM    ___???4===$$++B/ __
 	4 _s   $A2A22B	c                    V P                   ;_uu_ 4        V P                  P                  V P                  R R7       RRR4       R#   + '       g   i     R# ; i)T)try_to_connectN)r   r   	subscriber$   r2   s   &r   start_ChannelReadyFuture.starty   s2    ___MM##DLL#F ___s   (AA	c                    V P                   ;_uu_ 4        V P                  '       g8   V P                  '       g&   V P                  P	                  V P
                  4       R R R 4       R #   + '       g   i     R # ; ir1   )r   r   r   r   r#   r$   r2   s   &r   __del___ChannelReadyFuture.__del__}   s>    ___???4===))$,,7 ___s   $A)%A))A:	)r   r   r   r   r   r1   )__name__
__module____qualname____firstlineno__r   r   r$   r.   r3   r7   r:   r?   rC   rF   rK   rP   rS   __static_attributes____classdictcell__)__classdict__s   @r   r   r      sL     "< &$#=4G8 8r   r   c                <    \        V 4      pVP                  4        V# )a  Creates a future.Future tracking when an implementations.Channel is ready.

Cancelling the returned future.Future does not tell the given
implementations.Channel to abandon attempts it may have been making to
connect; cancelling merely deactivates the return future.Future's
subscription to the given implementations.Channel's connectivity.

Args:
  channel: An implementations.Channel.

Returns:
  A future.Future that matures when the given Channel has connectivity
    interfaces.ChannelConnectivity.READY.
)r   rP   )r   ready_futures   & r   channel_ready_futurer^      s      'w/Lr   )__doc__r	   r   	grpc.betar   r   grpc.framework.foundationr   r   r(   Futurer   r^    r   r   <module>rd      s@    .   &   3 , = %
b8&-- b8Jr   