o
    rMf…	  ã                   @   s    d dl mZ G dd„ deƒZdS )é    )Úsixc                   @   sb   e Zd ZdZddd„Zedd„ ƒZdd„ Zd	d
„ Zdd„ Z	dd„ Z
dd„ Zdd„ Zedd„ ƒZdS )ÚBlobzBlob objectNc                 C   s   || _ || _|| _d S ©N)Ú_fileÚidÚvalue)Úselfr   Úfiler   © r
   úR/var/www/html/analyze/labelStudio/lib/python3.10/site-packages/boto/sdb/db/blob.pyÚ__init__   s   
zBlob.__init__c                 C   s*   ddl m } | jr| j}|S || jƒ}|S )Nr   )ÚStringIO)r   r   r   )r   r   Úfr
   r
   r   r	       s   
ÿz	Blob.filec                 C   s   t  | ¡ d¡S )Núutf-8)r   Ú	text_typeÚencode©r   r
   r
   r   Ú__str__)   s   zBlob.__str__c                 C   s<   t | jdƒr| j ¡ }n| j ¡ }t|tjƒr|S | d¡S )NÚget_contents_as_stringr   )Úhasattrr	   r   ÚgetvalueÚ
isinstancer   r   Údecode)r   r   r
   r
   r   Ú__unicode__,   s   

zBlob.__unicode__c                 C   s    t | jdƒr| j ¡ S | j ¡ S )Nr   )r   r	   r   Úreadr   r
   r
   r   r   6   s   

z	Blob.readc                 C   s
   | j  ¡ S r   )r	   Úreadliner   r
   r
   r   r   <   ó   
zBlob.readlinec                 C   ó
   t | jƒS r   )Únextr	   r   r
   r
   r   r   ?   r   z	Blob.nextc                 C   r   r   )Úiterr	   r   r
   r
   r   Ú__iter__B   r   zBlob.__iter__c                 C   s"   | j r| j jS | jrt| jƒS dS )Nr   )r   Úsizer   Úlenr   r
   r
   r   r!   E   s
   
z	Blob.size)NNN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Úpropertyr	   r   r   r   r   r   r    r!   r
   r
   r
   r   r      s    


r   N)Úboto.compatr   Úobjectr   r
   r
   r
   r   Ú<module>   s   