o
    ¡D®f[  ã                   @   sP   d dl mZ g d¢ZdgZG dd„ deƒZdd„ Zdd	d
„ZG dd„ deƒZdS )é    )ÚQueue)ÚClientÚListenerÚPipeNc                   @   sB   e Zd Zddd„Zdd„ Zdd„ Zed	d
„ ƒZdd„ Zdd„ Z	dS )r   Né   c                 C   s   t |ƒ| _d S ©N)r   Ú_backlog_queue)ÚselfÚaddressÚfamilyÚbacklog© r   úR/home/ubuntu/webapp/venv/lib/python3.10/site-packages/billiard/dummy/connection.pyÚ__init__,   ó   zListener.__init__c                 C   s   t | j ¡ Ž S r   )Ú
Connectionr   Úget©r	   r   r   r   Úaccept/   r   zListener.acceptc                 C   s
   d | _ d S r   ©r   r   r   r   r   Úclose2   s   
zListener.closec                 C   s   | j S r   r   r   r   r   r   Ú<lambda>5   s    zListener.<lambda>c                 C   s   | S r   r   r   r   r   r   Ú	__enter__7   ó   zListener.__enter__c                 G   s   |   ¡  d S r   )r   )r	   Úexc_infor   r   r   Ú__exit__:   s   zListener.__exit__)NNr   )
Ú__name__Ú
__module__Ú__qualname__r   r   r   Úpropertyr
   r   r   r   r   r   r   r   *   s    
r   c                 C   s&   t ƒ t ƒ }}|  ||f¡ t||ƒS r   )r   Úputr   )r
   Ú_inÚ_outr   r   r   r   >   s   
r   Tc                 C   s"   t ƒ t ƒ }}t||ƒt||ƒfS r   )r   r   )ÚduplexÚaÚbr   r   r   r   D   s   r   c                   @   s&   e Zd Zdd„ Zd	dd„Zdd„ ZdS )
r   c                 C   s,   || _ || _|j | _| _|j | _| _d S r   )r"   r!   r    ÚsendÚ
send_bytesr   ÚrecvÚ
recv_bytes)r	   r!   r"   r   r   r   r   K   s   zConnection.__init__ç        c                 C   sR   | j  ¡ dkr	dS |dkrdS | j j ¡  | j j |¡ | j j ¡  | j  ¡ dkS )Nr   Tr*   F)r!   ÚqsizeÚ	not_emptyÚacquireÚwaitÚrelease)r	   Útimeoutr   r   r   ÚpollQ   s   zConnection.pollc                 C   s   d S r   r   r   r   r   r   r   [   r   zConnection.closeN)r*   )r   r   r   r   r1   r   r   r   r   r   r   I   s    

r   )T)	Úqueuer   Ú__all__ÚfamiliesÚobjectr   r   r   r   r   r   r   r   Ú<module>   s   "
