
     @g9                     z    d dl Z d dlZd dlmZ d dlmZ ddlmZmZ  ej	        e
          Z G d de          ZdS )    N)Iterator)QueueClient   )QueueClientBaseQueueItemBasec            	       X    e Zd ZddedededdfdZdefd	Zd
efdZ	de
e         fdZdS )AzureStorageQueueClient      ?connection_strnamedequeue_intervalreturnNc                     t                               d           t          j        ||          | _        i | _        || _        d S )Nz!! AzureStorageQueueClient is an experimental implementation. This client causes performance issues especially when putting chunks in stream mode !!)loggerwarningr   from_connection_stringqueue_client	itemtypesr   )selfr   r   r   s       L/var/www/piapp/venv/lib/python3.11/site-packages/aiproxy/azurequeueclient.py__init__z AzureStorageQueueClient.__init__   sK      n  	o  	o  	o'>~tTT 0    
item_typesc                 l    |D ]0}| j                             |j                  s|| j         |j        <   1d S N)r   get__name__)r   r   ts      r   add_item_typesz&AzureStorageQueueClient.add_item_types   sD     	/ 	/A>%%aj11 /-.qz*	/ 	/r   itemc                 ^    | j                             |                                           d S r   )r   send_messageto_json)r   r    s     r   putzAzureStorageQueueClient.put   s'    &&t||~~66666r   c              #   b  K   | j                                         D ]}t          j        |j                  }| j                            |d                   }|r2|                    |          V  | j                             |           ot          
                    d|d                     d S )NtypezUnknown queue item type: )r   receive_messagesjsonloadscontentr   r   	from_dictdelete_messager   r   )r   mdclss       r   r   zAzureStorageQueueClient.get   s      "3355 	H 	HA
19%%A.$$QvY//C HmmA&&&&&!003333F1V9FFGGGG	H 	Hr   )r
   )r   
__module____qualname__strfloatr   listr   r   r$   r   r    r   r   r	   r	      s        1 1s 1# 1 1Y] 1 1 1 1/ / / / /
7 7 7 7 7HXm, H H H H H Hr   r	   )r(   loggingtypingr   azure.storage.queuer   queueclientr   r   	getLoggerr   r   r	   r5   r   r   <module>r;      s            + + + + + + 7 7 7 7 7 7 7 7 
	8	$	$H H H H Ho H H H H Hr   