o
    ¨D®f|  ã                   @  sd   d Z ddlmZ ddlZddlmZ ddlmZ G dd„ deƒZG dd	„ d	eƒZ	G d
d„ deƒZ
dS )z"Amazon SQS message implementation.é    )ÚannotationsN)ÚMessage)Ústr_to_bytesc                   @  ó   e Zd ZdZdS )ÚBaseAsyncMessagez1Base class for messages received on async client.N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__© r   r   ú[/home/ubuntu/webapp/venv/lib/python3.10/site-packages/kombu/asynchronous/aws/sqs/message.pyr      ó    r   c                   @  r   )ÚAsyncRawMessagezRaw Message.Nr   r   r   r   r   r      r   r   c                   @  s    e Zd ZdZdd„ Zdd„ ZdS )ÚAsyncMessagezSerialized message.c                 C  s   t  t|ƒ¡ ¡ S )z.Encode/decode the value using Base64 encoding.)Úbase64Ú	b64encoder   Údecode)ÚselfÚvaluer   r   r   Úencode   s   zAsyncMessage.encodec                 C  s4   |dkr| j S |dkr|  ¡ S |dkr| jS t|ƒ‚)z(Support Boto3-style access on a message.ÚReceiptHandleÚBodyÚqueue)Úreceipt_handleÚget_bodyr   ÚKeyError)r   Úitemr   r   r   Ú__getitem__   s   zAsyncMessage.__getitem__N)r   r	   r
   r   r   r   r   r   r   r   r      s    r   )r   Ú
__future__r   r   Úkombu.messager   Úkombu.utils.encodingr   r   r   r   r   r   r   r   Ú<module>   s    