
    `f                         d Z ddlmZmZ ddlmZ ddlmZ ddlm	Z	 dZ
 ee          Zej        Z G d d	ej                  Zd
S )zWorker Task Consumer Bootstep.    )QoSignore_errors)	bootsteps)
get_logger   )Mingle)Tasksc                   @     e Zd ZdZefZ fdZd Zd Zd Z	d Z
 xZS )r	   z,Bootstep starting the task message consumer.c                 X    d x|_         |_         t                      j        |fi | d S )N)task_consumerqossuper__init__)selfckwargs	__class__s      N/var/www/html/env/lib/python3.11/site-packages/celery/worker/consumer/tasks.pyr   zTasks.__init__   s6    "&&!%%%f%%%%%    c                 8                                     j        j         j        j                            dj                   j        j                            j        j	                  _
        fd}t          |j                  _        dS )zStart task consumer.r   )on_decode_errorc                 <    j                             |           S )N)prefetch_countapply_global)r   r   )r   r   
qos_globals    r   set_prefetch_countz'Tasks.start.<locals>.set_prefetch_count*   s(    ?&&-' '   r   N)update_strategies
connectionqos_semantics_matches_specdefault_channel	basic_qosinitial_prefetch_countappamqpTaskConsumerr   r   r   r   )r   r   r   r   s    ` @r   startzTasks.start   s    	
 @@
 	
$..q'	
 	
 	
 %*11L!*; 2 
 
	 	 	 	 	 	
 &(@AAr   c                 j    |j         r+t          d           t          ||j         j                   dS dS )zStop task consumer.zCanceling task consumer...N)r   debugr   cancelr   r   s     r   stopz
Tasks.stop1   s@    ? 	5.///!Q_344444	5 	5r   c                     |j         rG|                     |           t          d           t          ||j         j                   d|_         dS dS )zShutdown task consumer.zClosing consumer channel...N)r   r+   r(   r   closer*   s     r   shutdownzTasks.shutdown7   sT    ? 	#IIaLLL/000!Q_2333"AOOO		# 	#r   c                 0    d|j         r|j         j        ndiS )zReturn task consumer info.r   zN/A)r   valuer*   s     r   infoz
Tasks.info?   s     "A!%++EBBr   )__name__
__module____qualname____doc__r   requiresr   r&   r+   r.   r1   __classcell__)r   s   @r   r	   r	      s        66yH& & & & &B B B25 5 5# # #C C C C C C Cr   r	   N)r5   kombu.commonr   r   celeryr   celery.utils.logr   mingler   __all__r2   loggerr(   StartStopStepr	    r   r   <module>r@      s    $ $ + + + + + + + +       ' ' ' ' ' '      
	H		2C 2C 2C 2C 2CI# 2C 2C 2C 2C 2Cr   