o
    Ž¨Êh  ã                   @   s8   d dl Z ddlmZ G dd„ deƒZG dd„ deƒZdS )é    Né   )ÚSparkPostAPIExceptionc                   @   s   e Zd Zdd„ Zdd„ ZdS )ÚRequestsTransportc                 C   s   dd l }| ¡ | _d S )Nr   )ÚrequestsÚSessionÚsess)Úselfr   © r	   ú@/var/www/html/env/lib/python3.10/site-packages/sparkpost/base.pyÚ__init__   s   zRequestsTransport.__init__c                 K   sV   | j j||fd|i|¤Ž}|jdkrdS |jst|ƒ‚d| ¡ v r'| ¡ d S | ¡ S )NÚheaderséÌ   TÚresults)r   ÚrequestÚstatus_codeÚokr   Újson)r   ÚmethodÚurir   ÚkwargsÚresponser	   r	   r
   r      s   
zRequestsTransport.requestN)Ú__name__Ú
__module__Ú__qualname__r   r   r	   r	   r	   r
   r      s    r   c                   @   sX   e Zd ZdZef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dS )ÚResourceÚ c                 C   s   || _ || _|ƒ | _d S ©N)Úbase_uriÚapi_keyÚ	transport)r   r   r   Útransport_classr	   r	   r
   r      s   zResource.__init__c                 C   s   d| j | jf S )Nz%s/%s)r   Úkey©r   r	   r	   r
   r      s   zResource.uric                 K   s2   dt j d| jdœ}| jj||fd|i|¤Ž}|S )Nzpython-sparkpost/zapplication/json)z
User-AgentzContent-TypeÚAuthorizationr   )Ú	sparkpostÚ__version__r   r   r   )r   r   r   r   r   r   r	   r	   r
   r   "   s   ýÿzResource.requestc                 C   ó   t ‚r   ©ÚNotImplementedErrorr"   r	   r	   r
   Úget,   ó   zResource.getc                 C   r&   r   r'   r"   r	   r	   r
   Úlist/   r*   zResource.listc                 C   r&   r   r'   r"   r	   r	   r
   Úcreate2   r*   zResource.createc                 C   r&   r   r'   r"   r	   r	   r
   Úupdate5   r*   zResource.updatec                 C   r&   r   r'   r"   r	   r	   r
   Údelete8   r*   zResource.deleteN)r   r   r   r!   r   r   Úpropertyr   r   r)   r+   r,   r-   r.   r	   r	   r	   r
   r      s    

r   )r$   Ú
exceptionsr   Úobjectr   r   r	   r	   r	   r
   Ú<module>   s    