o
    Df.                     @   s.   d Z ddlmZ ddlmZ G dd dZdS )z,Implementation for the app.events shortcuts.    )contextmanager)cached_propertyc                   @   s\   e Zd ZdZdZdZdZdddZedd	 Z	ed
d Z
edd Ze		dddZdS )EventszImplements app.events.z$celery.events.receiver:EventReceiverz(celery.events.dispatcher:EventDispatcherzcelery.events.state:StateNc                 C   s
   || _ d S N)app)selfr    r   J/home/ubuntu/webapp/venv/lib/python3.10/site-packages/celery/app/events.py__init__   s   
zEvents.__init__c                 C      | j j| jddS )Nzevents.Receiverreverse)r   subclass_with_selfreceiver_clsr   r   r   r	   Receiver      zEvents.Receiverc                 C   r   )Nzevents.Dispatcherr   )r   r   dispatcher_clsr   r   r   r	   
Dispatcher   r   zEvents.Dispatcherc                 C   r   )Nzevents.Stater   )r   r   	state_clsr   r   r   r	   State   r   zEvents.StateTFc              	   c   s    | j jjjdd/}| |j|||j|}|V  W d    n1 s$w   Y  W d    d S W d    d S 1 s<w   Y  d S )NT)block)r   amqpproducer_poolacquirer   
connectionchannel)r   hostnameenabledbuffer_while_offlineproddr   r   r	   default_dispatcher    s   "zEvents.default_dispatcherr   )NTF)__name__
__module____qualname____doc__r   r   r   r
   r   r   r   r   r   r"   r   r   r   r	   r      s     



r   N)r&   
contextlibr   kombu.utils.objectsr   r   r   r   r   r	   <module>   s    