Ë
    šQj`  ã                  óú   — d 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
mZ erddlmZ d	Zej                  Zdd„Z G d„ dej$                  «      Z G d„ dej(                  «      Z G d„ dej(                  «      Zy
)zYCarrot compatibility interface.

See https://pypi.org/project/carrot/ for documentation.
é    )Úannotations)Úcount)ÚTYPE_CHECKINGé   )Ú	messaging)ÚExchangeÚQueue)ÚTracebackType)Ú	PublisherÚConsumerNc              #  ó†   K  — |j                  |¬«       t        d«      D ]  }|r||k\  r y | j                  «       –— Œ y ­w)N)Úno_ackr   )Úconsumer   Údrain_events)Ú
connectionÚconsumerr   ÚlimitÚ	iterations        úH/var/www/html/truck-me/venv/lib/python3.12/site-packages/kombu/compat.pyÚ_iterconsumer      sF   è ø€ Ø×Ñ˜FÐÔ#Ü˜1“Xò (ˆ	Ù�Y %Ò'ÙØ×%Ñ%Ó'Ó'ñ(ùs   ‚?Ac                  ó€   ‡ — e Zd ZdZdZdZdZdZdZdZ		 	 	 dˆ fd„	Z
d„ Zˆ fd„Zd	„ Z	 	 	 	 	 	 	 	 dd
„Zed„ «       Zˆ xZS )r   zCarrot compatible producer.Ú ÚdirectTFc                ó¨  •— |r|}|xs | j                   | _         |xs | j                  | _        |xs | j                  | _        |�|| _        |�|| _        t        | j                   t        «      sGt        | j                   | j                  | j                  | j                  | j                  ¬«      | _         t        ‰	| �   || j                   fi |¤Ž y )N)ÚnameÚtypeÚrouting_keyÚauto_deleteÚdurable)	ÚexchangeÚexchange_typer   r   r   Ú
isinstancer   ÚsuperÚ__init__)
Úselfr   r    r   r!   r   r   ÚchannelÚkwargsÚ	__class__s
            €r   r$   zPublisher.__init__)   sº   ø€ ñ Ø ˆJà Ò1 D§M¡MˆŒØ*Ò@¨d×.@Ñ.@ˆÔØ&Ò:¨$×*:Ñ*:ˆÔàÐ"Ø*ˆDÔØÐØ"ˆDŒLä˜$Ÿ-™-¬Ô2Ü$¨$¯-©-Ø*.×*<Ñ*<Ø15×1AÑ1AØ15×1AÑ1AØ-1¯\©\ô	;ˆDŒMô
 	‰Ñ˜ T§]¡]Ñ=°fÓ=ó    c                ó&   —  | j                   |i |¤ŽS ©N)Úpublish)r%   Úargsr'   s      r   ÚsendzPublisher.send@   s   € Øˆt�|‰|˜TÐ, VÑ,Ð,r)   c                ó0   •— t         ‰| �  «        d| _        y ©NT)r#   ÚcloseÚ_closed)r%   r(   s    €r   r1   zPublisher.closeC   s   ø€ Ü‰‰ŒØˆ�r)   c                ó   — | S r+   © ©r%   s    r   Ú	__enter__zPublisher.__enter__G   ó   € Øˆr)   c                ó$   — | j                  «        y r+   ©r1   ©r%   Úexc_typeÚexc_valÚexc_tbs       r   Ú__exit__zPublisher.__exit__J   ó   € ð 	�
‰
�r)   c                ó   — | j                   S r+   )r&   r5   s    r   ÚbackendzPublisher.backendR   s   € à�|‰|Ðr)   )NNNNNN©r;   ztype[BaseException] | Noner<   zBaseException | Noner=   zTracebackType | NoneÚreturnÚNone)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r    r!   r   r   r   r2   r$   r.   r1   r6   r>   ÚpropertyrA   Ú__classcell__©r(   s   @r   r   r      s€   ø„ Ù%à€HØ€MØ€KØ€GØ€KØ€Gà>BØ?CØõ>ò.-ôòðà,ðð &ðð %ð	ð
 
óð ñó ôr)   r   c                  ó¬   ‡ — e Zd ZdZdZdZdZdZdZdZ	dZ
dZ	 	 	 dˆ fd„	Zˆ fd„Zd„ Zd	„ Z	 	 	 	 	 	 	 	 dd
„Zd„ Zdd„Zd„ Zdd„Zdd„Zdd„Zdd„Zˆ xZS )r   zCarrot compatible consumer.r   r   TFc	                óN  •— |j                  «       | _        |�|| _        |�|| _        |�|| _        |xs | j
                  | _        |xs | j                  | _        |xs | j                  | _        |xs | j                  | _        t        | j                  | j                  | j                  | j                  | j                  ¬«      }t        | j
                  || j                  | j                  | j                  | j                  ¬«      }t        ‰
| �0  | j                  |fi |	¤Ž y )N)r   r   r   r   )r    r   r   Ú	exclusiver   )r&   rA   r   rN   r   Úqueuer    r!   r   r   r	   r#   r$   )r%   r   rO   r    r   r!   r   rN   r   r'   r(   s             €r   r$   zConsumer.__init__c   s  ø€ ð "×)Ñ)Ó+ˆŒàÐØ"ˆDŒLØÐ Ø&ˆDŒNØÐ"Ø*ˆDÔàÒ(˜dŸj™jˆŒ
Ø Ò1 D§M¡MˆŒØ*Ò@¨d×.@Ñ.@ˆÔØ&Ò:¨$×*:Ñ*:ˆÔä˜DŸM™MØ!%×!3Ñ!3Ø(,×(8Ñ(8Ø(,×(8Ñ(8Ø$(§L¡Lô	2ˆô
 �d—j‘jØ'Ø"&×"2Ñ"2Ø"Ÿl™lØ $§¡Ø"&×"2Ñ"2ô4ˆô 	‰Ñ˜Ÿ™ uÑ7°Ó7r)   c                ó2   •— || _         t        ‰| �	  |«       y r+   ©rA   r#   Úrevive©r%   r&   r(   s     €r   rR   zConsumer.revive�   ó   ø€ ØˆŒÜ‰‰�wÕr)   c                óf   — | j                  «        | j                  j                  «        d| _        y r0   )ÚcancelrA   r1   r2   r5   s    r   r1   zConsumer.close…   s"   € Ø�‰ŒØ�‰×ÑÔØˆ�r)   c                ó   — | S r+   r4   r5   s    r   r6   zConsumer.__enter__Š   r7   r)   c                ó$   — | j                  «        y r+   r9   r:   s       r   r>   zConsumer.__exit__�   r?   r)   c                ó&   — | j                  d¬«      S )NT)Úinfinite)Ú	iterqueuer5   s    r   Ú__iter__zConsumer.__iter__•   s   € Ø�~‰~ tˆ~Ó,Ð,r)   c                óž   — |€| j                   }| j                  d   j                  |«      }|r|r| j                  |j                  |«       |S )Nr   )r   ÚqueuesÚgetÚreceiveÚpayload)r%   r   Úenable_callbacksÚmessages       r   ÚfetchzConsumer.fetch˜   sE   € Øˆ>Ø—[‘[ˆFØ—+‘+˜a‘.×$Ñ$ VÓ,ˆÙÙØ—‘˜WŸ_™_¨gÔ6Øˆr)   c                ó   — t        d«      ‚)Nz Use fetch(enable_callbacks=True))ÚNotImplementedErrorr5   s    r   Úprocess_nextzConsumer.process_next¡   s   € Ü!Ð"DÓEÐEr)   c                ó<   — |�t        d«      ‚| j                  «       S )Nz&discard_all does not implement filters)rf   Úpurge)r%   Ú
filterfuncs     r   Údiscard_allzConsumer.discard_all¤   s$   € ØÐ!Ü%Ø8ó:ð :à�z‰z‹|Ðr)   c                ó2   — t        | j                  | ||«      S r+   ©r   r   ©r%   r   r   s      r   ÚiterconsumezConsumer.iterconsumeª   ó   € Ü˜DŸO™O¨T°6¸5ÓAÐAr)   c                ó:   — | j                  |«      }t        |«      S r+   )ro   Úlist)r%   r   Úits      r   ÚwaitzConsumer.wait­   s   € Ø×Ñ˜eÓ$ˆÜ�B‹xˆr)   c              #  ól   K  — t        «       D ]#  }| j                  «       }|s|�|r||k\  r y |–— Œ% y ­wr+   )r   rd   )r%   r   rZ   Úitems_since_startÚitems        r   r[   zConsumer.iterqueue±   s=   è ø€ Ü!&£ò 	ÐØ—:‘:“<ˆDÙ  ÙÐ0°EÒ9ÙØ‹Jñ	ùs   ‚24)NNNNNNNrB   ©NFr+   )NN)rE   rF   rG   rH   rO   r    r   r!   r   rN   r   r2   r$   rR   r1   r6   r>   r\   rd   rg   rk   ro   rt   r[   rJ   rK   s   @r   r   r   W   s›   ø„ Ù%à€EØ€HØ€KØ€MØ€GØ€IØ€KØ€Gà8<Ø?CØ-1õ8ô< òò
ðà,ðð &ðð %ð	ð
 
óò-óòFóóBó÷r)   r   c                  óN   ‡ — e Zd Z	 	 dˆ fd„	Zd	d„Zd„ Zd„ Zd„ Zˆ fd„Zd„ Z	ˆ xZ
S )
ÚConsumerSetc                ó`  •— |rd| _         || _        nd| _         |j                  «       | _        g }|r"|D ]  }|j                  |j                  «       Œ |r=|j                  «       D ]*  \  }}	|j                  t        j                  |fi |	¤Ž«       Œ, t        ‰
| �(  | j                  |fi |¤Ž y )NTF)Ú_provided_channelrA   r&   Úextendr^   ÚitemsÚappendr	   Ú	from_dictr#   r$   )r%   r   r€   Ú	consumersr&   r'   r^   r   Ú
queue_nameÚqueue_optionsr(   s             €r   r$   zConsumerSet.__init__¼   s¨   ø€ áØ%)ˆDÔ"Ø"ˆD�Là%*ˆDÔ"Ø%×-Ñ-Ó/ˆDŒLàˆÙØ%ò /�Ø—‘˜hŸo™oÕ.ð/áØ-6¯_©_Ó->ò LÑ)�
˜MØ—‘œeŸo™o¨jÑJ¸MÑJÕKðLô 	‰Ñ˜Ÿ™ vÑ8°Ó8r)   c                ó2   — t        | j                  | ||«      S r+   rm   rn   s      r   ro   zConsumerSet.iterconsumeÏ   rp   r)   c                ó"   — | j                  «       S r+   )ri   r5   s    r   rk   zConsumerSet.discard_allÒ   s   € Ø�z‰z‹|Ðr)   c                óL   — | j                  t        j                  |fi |¤Ž«      S r+   )Ú	add_queuer	   r€   )r%   rO   Úoptionss      r   Úadd_consumer_from_dictz"ConsumerSet.add_consumer_from_dictÕ   s   € Ø�~‰~œeŸo™o¨eÑ?°wÑ?Ó@Ð@r)   c                óH   — |j                   D ]  }| j                  |«       Œ y r+   )r^   r‡   )r%   r   rO   s      r   Úadd_consumerzConsumerSet.add_consumerØ   s!   € Ø—_‘_ò 	"ˆEØ�N‰N˜5Õ!ñ	"r)   c                ó2   •— || _         t        ‰| �	  |«       y r+   rQ   rS   s     €r   rR   zConsumerSet.reviveÜ   rT   r)   c                ór   — | j                  «        | j                  s| j                  j                  «        y y r+   )rV   r|   r&   r1   r5   s    r   r1   zConsumerSet.closeà   s)   € Ø�‰ŒØ×%Ò%Ø�L‰L×ÑÕ ð &r)   )NNNrx   )rE   rF   rG   r$   ro   rk   r‰   r‹   rR   r1   rJ   rK   s   @r   rz   rz   º   s.   ø„ à=AØõ9ó&BòòAò"ô ö!r)   rz   )FN)rH   Ú
__future__r   Ú	itertoolsr   Útypingr   r   r   Úentityr   r	   Útypesr
   Ú__all__r€   Úentry_to_queuer   ÚProducerr   r   rz   r4   r)   r   ú<module>r–      sp   ðñõ
 #å Ý  å ß #áÝ#à
#€ð —‘€ó(ô5�	×"Ñ"ô 5ôp`ˆy×!Ñ!ô `ôF)!�)×$Ñ$õ )!r)   