File: //usr/local/lib/python3.9/site-packages/kombu/__pycache__/pidbox.cpython-39.pyc
a
X>h�9 � @ s" d Z ddlmZ ddlZddlZddlmZmZ ddlm Z ddl
m
Z
ddlmZ ddl
m
Z
d d
lmZmZmZmZ d dlmZ d dlmZmZ d d
lmZ d dlmZ d dlmZ d dlmZm Z d dl!m"Z" d dl#m$Z$ dZ%dZ&dZ'ee(�Z)e)j*e)j+ Z*Z+G dd� d�Z,G dd� 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� e Zd ZdZdZdZdZdZdZddd�Z ddd�Z
dd � Zd
d� Zddd
�Z
ddd�Zddd�Zdd� Zdd� Zddd�ZeZdd� ZdS ) r z
Mailbox node.Nc C s: || _ || _|| _|| _| jjj| _|d u r0i }|| _d S �N)�channel�mailbox�hostname�state�clock�adjust�adjust_clock�handlers)�selfr r r r# r � r% �6/usr/local/lib/python3.9/site-packages/kombu/pidbox.py�__init__8 s z
Node.__init__Tc sP � j �� j�}� fdd�}||_t|p*� j|gf||d u rB� j jn|d�|��S )Nc s |rt �tj� d�� d S )N)�node)�warnings�warn�W_PIDBOX_IN_USE�format)�name�messagesZ consumers�r$ r% r&