o
    ýew  ã                   @   s`   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 ddl	m
Z
 G dd	„ d	eƒZd
S )zA
This module provides a general response class for BCE services.
é    )Ú	iteritems)Ústr)Úbytes)Úutils)Úcompat)Úhttp_headersc                   @   s0   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
S )ÚBceResponsez

    c                 C   s   t  ¡ | _d S ©N)r   ZExpandoÚmetadata©Úself© r   úED:\Projects\ConvertPro\env\Lib\site-packages\baidubce/bce_response.pyÚ__init__   s   zBceResponse.__init__c                 C   s†   t |ƒD ]<\}}| t tj¡¡rd|tt tj¡ƒd…  }t | 	dd¡¡}| 
¡ t tj 
¡ ¡kr9| d¡}t| j||ƒ qdS )z3

        :param headers:
        :return:
        Zbce_Nú-Ú_ú")r   Ú
startswithr   Zconvert_to_stringr   Z
BCE_PREFIXÚlenr   Zpythonize_nameÚreplaceÚlowerZETAGÚstripÚsetattrr
   )r   ÚheadersÚkÚvr   r   r   Úset_metadata_from_headers   s   
úz%BceResponse.set_metadata_from_headersc                 C   s   |  d¡rt‚d S )NÚ__)r   ÚAttributeError)r   Úitemr   r   r   Ú__getattr__-   s   
zBceResponse.__getattr__c                 C   s
   t  | ¡S r	   )r   Zprint_objectr   r   r   r   Ú__repr__2   s   
zBceResponse.__repr__N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r    r!   r   r   r   r   r      s    r   N)r%   Zfuture.utilsr   Úbuiltinsr   r   Zbaidubcer   r   Zbaidubce.httpr   Úobjectr   r   r   r   r   Ú<module>   s   