
    i<                        d Z ddlmZ ddlZddlmZ ddlmZmZ ddl	m
Z ddlmZ dd	lmZ erdd
lmZ  ej$                  d      Z G d d      Z G d de      Zy)z.
Psycopg AsyncPipeline object implementation.
    )annotationsN)TracebackType)TYPE_CHECKINGAny   )errors)Self)BasePipeline)AsyncConnectionpsycopgc                  ,    e Zd ZddZ	 	 	 	 	 	 	 	 ddZy)
_DummyLockc                   K   y wN selfs    w/var/www/html/hwPaymentPortal-be-dev/hw-payment-portal-api/venv/lib/python3.12/site-packages/psycopg/_pipeline_async.py
__aenter__z_DummyLock.__aenter__   s	        c                   K   y wr   r   )r   exc_typeexc_valexc_tbs       r   	__aexit__z_DummyLock.__aexit__   s      	r   NreturnNoner   ztype[BaseException] | Noner   zBaseException | Noner   zTracebackType | Noner   r   )__name__
__module____qualname__r   r   r       r   r   r      s2    , & %	
 
r#   r   c                  ^     e Zd ZU dZdZded<   d	d
 fdZddZddZ	 	 	 	 	 	 	 	 ddZ xZ	S )AsyncPipelinez0Handler for (async) connection in pipeline mode.r   AsyncConnection[Any]_connc                j    t         |   |       |rt               | _        y |j                  | _        y r   )super__init__r   lock_lock)r   conn_no_lock	__class__s      r   r*   zAsyncPipeline.__init__*   s%    %-Z\
499
r#   c                H  K   	 | j                   4 d{    | j                  j                  | j                                d{    ddd      d{    y7 F7 7 	# 1 d{  7  sw Y   yxY w# t        j
                  $ r}|j                  d      d}~ww xY ww)zkSync the pipeline, send any pending command and receive and process
        all available results.
        N)r,   r'   wait	_sync_gene_NO_TRACEBACKwith_traceback)r   exs     r   synczAsyncPipeline.sync.   s     	*zz 8 8jjoodnn&67778 8 878 8 8 8 	*##D))	*s   B"A6 AA6 -A!AA!
A6 AA6 B"A6 A!A6 !A3'A*(A3/A6 2B"3A6 6B	BBB"c                   K   | j                   4 d {    | j                  j                  | j                                d {    d d d       d {    | S 7 G7 7 
# 1 d {  7  sw Y   | S xY wwr   )r,   r'   r1   
_enter_genr   s    r   r   zAsyncPipeline.__aenter__8   sg     :: 	5 	5**//$//"3444	5 	5	54	5 	5 	5 	5sV   A7AA7-A!AA!	A7AA7A!A7!A4'A*(A4/A7c                  K   	 | j                   4 d {    | j                  j                  | j                                d {    d d d       d {    | j                  |       y 7 W7 (7 # 1 d {  7  sw Y   *xY w# t        $ r5}|rt
        j                  d| |       n|j                  d       Y d }~fd }~ww xY w# | j                  |       w xY ww)Nz error ignored terminating %r: %s)	r,   r'   r1   	_exit_gen	Exceptionloggerwarningr5   _exit)r   r   r   r   exc2s        r   r   zAsyncPipeline.__aexit__=   s     
	 zz 8 8jjoodnn&67778 8 JJw878 8 8 8 	0A4N))$// O	0 JJws   CB A,B -A2A.A2
B A0B C,B .A20B 2B8A;9B B 	C+C ;C  CC CC)F)r-   r&   r.   boolr   r   r   )r   r	   r   )
r    r!   r"   __doc____annotations__r*   r7   r   r   __classcell__)r/   s   @r   r%   r%   $   sK    :J=*
 ,  &  %	 
 
 r#   r%   )rB   
__future__r   loggingtypesr   typingr   r    r   r3   _compatr	   _pipeline_baser
   connection_asyncr   	getLoggerr=   r   r%   r   r#   r   <module>rN      sO    #   %   (1			9	%
 
) L ) r#   