
    ph+                         S SK Jr  S SKJrJr  S SKJrJr  S SKJ	r	  S SK
Jr  S SKJrJr  S SKJr   " S S	\5      r\	\\\4      r " S
 S\\5      rg)    )abstractmethod)OptionalUnion)RedisRedisCluster)WeightedList)CircuitBreaker)AbstractDatabaseBaseDatabase)Numberc                       \ rS rSrSr\\S\\\	4   4S j5       5       r
\
R                  \S\\\	4   4S j5       5       r
\\S\4S j5       5       r\R                  \S\4S	 j5       5       rS
rg)AsyncDatabase   z6Database with an underlying asynchronous redis client.returnc                     g)zThe underlying redis client.N selfs    X/home/james-whalen/.local/lib/python3.13/site-packages/redis/asyncio/multidb/database.pyclientAsyncDatabase.client        	    r   c                     g)z Set the underlying redis client.Nr   r   r   s     r   r   r      r   r   c                     g)z)Circuit breaker for the current database.Nr   r   s    r   circuitAsyncDatabase.circuit   r   r   r   c                     g)z1Set the circuit breaker for the current database.Nr   r   r   s     r   r   r       r   r   r   N)__name__
__module____qualname____firstlineno____doc__propertyr   r   r   r   r   setterr	   r   __static_attributes__r   r   r   r   r      s    @e\12    ]]U5,#67        ^^~   r   r   c            
          ^  \ rS rSr SS\\\4   S\S\S\	\
   4U 4S jjjr\S\\\4   4S j5       r\R                  S\\\4   4S	 j5       r\S\4S
 j5       r\R                  S\4S j5       rSrU =r$ )Database*   r   r   weighthealth_check_urlc                 \   > Xl         X l        X R                  l        [        TU ]  X45        g N)_client_cbdatabasesuper__init__)r   r   r   r,   r-   	__class__s        r   r4   Database.__init__+   s&      2r   r   c                     U R                   $ r/   r0   r   s    r   r   Database.client7   s    ||r   c                     Xl         g r/   r8   r   s     r   r   r9   ;   s    r   c                     U R                   $ r/   r1   r   s    r   r   Database.circuit?   s    xxr   c                     Xl         g r/   r<   r    s     r   r   r=   C   s    r   )r1   r0   r/   )r!   r"   r#   r$   r   r   r   r	   floatr   strr4   r&   r   r'   r   r(   __classcell__)r5   s   @r   r*   r*   *   s     +/
3e\)*
3  
3 	
3
 #3-
3 
3 e\12   ]]U5,#67      ^^~  r   r*   N)abcr   typingr   r   redis.asyncior   r   redis.data_structurer   redis.multidb.circuitr	   redis.multidb.databaser
   r   redis.typingr   r   tuple	Databasesr*   r   r   r   <module>rK      sK     " - - 0 A $ 8 }f456	|] r   