o
    wvXjp  ã                   @   s@   d Z ddlmZmZ ddlmZ ddlmZ G dd„ deƒZ	dS )z,Implementation for the app.events shortcuts.é    )Úabsolute_importÚunicode_literals)Ú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
   úN/var/www/html/myproject/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(   Ú
__future__r   r   Ú
contextlibr   Úkombu.utils.objectsr   Úobjectr   r
   r
   r
   r   Ú<module>   s
    