Ë
    ¦#ij¥  ã                   ór   — d dl mZ d dlmZmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ ddlmZ  G d	„ d
e«      Zy)é    )Údeepcopy)Ú
TaskResultÚTaskResultStatus)ÚTaskResultDoesNotExist)Útask_enqueued)Útimezone)Úget_random_stringé   )ÚBaseTaskBackendc                   óH   ‡ — e Zd ZdZdZdZˆ fd„Zd„ Zd„ Zd„ Z	d„ Z
d„ Zˆ xZS )ÚDummyBackendTc                 ó4   •— t         ‰| �  ||«       g | _        y ©N)ÚsuperÚ__init__Úresults)ÚselfÚaliasÚparamsÚ	__class__s      €úU/var/www/html/office/venv/lib/python3.12/site-packages/django/tasks/backends/dummy.pyr   zDummyBackend.__init__   s   ø€ Ü‰Ñ˜ Ô'Øˆ�ó    c                 óÌ   — t         j                  |dt        j                  «       «       | j                  j                  |«       t        j                  t        | «      |¬«       y )NÚenqueued_at)Útask_result)	ÚobjectÚ__setattr__r   Únowr   Úappendr   ÚsendÚtype)r   Úresults     r   Ú_store_resultzDummyBackend._store_result   s@   € Ü×Ñ˜6 =´(·,±,³.ÔAØ�‰×Ñ˜FÔ#Ü×Ñœ4 ›:°6Ö:r   c                 óÌ   — | j                  |«       t        |t        d«      t        j                  d d d d ||| j
                  g g ¬«      }| j                  |«       t        |«      S )Né    )ÚtaskÚidÚstatusr   Ú
started_atÚlast_attempted_atÚfinished_atÚargsÚkwargsÚbackendÚerrorsÚ
worker_ids)Úvalidate_taskr   r	   r   ÚREADYr   r#   r   )r   r&   r,   r-   r"   s        r   ÚenqueuezDummyBackend.enqueue   sj   € Ø×Ñ˜4Ô äØÜ  Ó$Ü#×)Ñ)ØØØ"ØØØØ—J‘JØØô
ˆð 	×Ñ˜6Ô"ô ˜ÓÐr   c                 ót   ‡— 	 t        ˆfd„| j                  D «       «      S # t        $ r t        ‰«      d ‚w xY w)Nc              3   óB   •K  — | ]  }|j                   ‰k(  sŒ|–— Œ y ­wr   ©r'   ©Ú.0r"   Ú	result_ids     €r   ú	<genexpr>z*DummyBackend.get_result.<locals>.<genexpr>5   ó   øè ø€ ÒT 6¸V¿Y¹YÈ)Ó=SœÑTùó   ƒ˜©Únextr   ÚStopIterationr   ©r   r9   s    `r   Ú
get_resultzDummyBackend.get_result1   s9   ø€ ð	>ÜÓT¨T¯\©\ÔTÓTÐTøÜò 	>Ü(¨Ó3¸Ð=ð	>ús   ƒ! ¡7c              ƒ   ó|   ‡K  — 	 t        ˆfd„| j                  D «       «      S # t        $ r t        ‰«      d ‚w xY w­w)Nc              3   óB   •K  — | ]  }|j                   ‰k(  sŒ|–— Œ y ­wr   r6   r7   s     €r   r:   z+DummyBackend.aget_result.<locals>.<genexpr>;   r;   r<   r=   r@   s    `r   Úaget_resultzDummyBackend.aget_result9   s<   øè ø€ ð	>ÜÓT¨T¯\©\ÔTÓTÐTøÜò 	>Ü(¨Ó3¸Ð=ð	>üs   ƒ<…# ¢<£9¹<c                 ó8   — | j                   j                  «        y r   )r   Úclear)r   s    r   rF   zDummyBackend.clear?   s   € Ø�‰×ÑÕr   )Ú__name__Ú
__module__Ú__qualname__Úsupports_deferÚsupports_async_taskÚsupports_priorityr   r#   r3   rA   rD   rF   Ú__classcell__)r   s   @r   r   r      s2   ø„ Ø€NØÐØÐôò;ò
 ò.>ò>ör   r   N)Úcopyr   Údjango.tasks.baser   r   Údjango.tasks.exceptionsr   Údjango.tasks.signalsr   Údjango.utilsr   Údjango.utils.cryptor	   Úbaser   r   © r   r   ú<module>rV      s&   ðÝ ç :Ý :Ý .Ý !Ý 1å !ô4�?õ 4r   