U
    ^g%iH
  ã                   @   s4   d dl mZ ddlmZ ddlZG dd„ deƒZdS )é   )ÚResourceé   )ÚURLé    Nc                       sz   e Zd Zd‡ fdd„	Zi fdd„Zi f‡ fdd„	Zi f‡ fdd	„	Zi fd
d„Zi fdd„Zi fdd„Z	i fdd„Z
‡  ZS )ÚTransferNc                    s"   t t| ƒ |¡ tjtj | _d S )N)Úsuperr   Ú__init__r   ÚV1ZTRANSFER_URLÚbase_url)ÚselfÚclient©Ú	__class__© úZ/var/www/html/api-medvista/venv/lib/python3.8/site-packages/razorpay/resources/transfer.pyr      s    zTransfer.__init__c                 K   s   t  dt¡ | j|f|ŽS )Nz+Will be Deprecated in next release, use all)ÚwarningsÚwarnÚDeprecationWarningÚall)r   ÚdataÚkwargsr   r   r   Ú	fetch_all   s    ÿzTransfer.fetch_allc                    sF   d|kr2t jd |d ¡ }|d= | j||f|ŽS tt| ƒj|f|ŽS )zg
        Fetch all Transfer entities

        Returns:
            Dictionary of Transfer data
        Z
payment_idz/payments/{}/transfers)r   r	   ÚformatÚget_urlr   r   r   ©r   r   r   Úurlr   r   r   r      s
    zTransfer.allc                    s   t t| ƒj||f|ŽS )zÉ
        Fetch Transfer for given Id

        Args:
            transfer_id : Id for which transfer object has to be retrieved

        Returns:
            Transfer dict for given transfer Id
        )r   r   Úfetch)r   Útransfer_idr   r   r   r   r   r      s    
zTransfer.fetchc                 K   s   | j }| j||f|ŽS )z~
        Create Transfer from given dict

        Args:

        Returns:
            Transfer Dict which was created
        )r
   Úpost_urlr   r   r   r   Úcreate+   s    	zTransfer.createc                 K   s   d  | j|¡}| j||f|ŽS )zÁ
        Edit Transfer from given id

        Args:
            transfer_id : Id for which transfer object has to be edited

        Returns:
            Transfer Dict which was edited
        z{}/{})r   r
   Z	patch_url©r   r   r   r   r   r   r   r   Úedit7   s    
zTransfer.editc                 K   s   d  | j|¡}| j||f|ŽS )zÈ
        Reverse Transfer from given id

        Args:
            transfer_id : Id for which transfer object has to be reversed

        Returns:
            Transfer Dict which was reversed
        ú{}/{}/reversals)r   r
   r   r    r   r   r   ÚreverseD   s    
zTransfer.reversec                 K   s   d  | j|¡}| j||f|ŽS )zÖ
        Get all Reversal Transfer from given id

        Args:
            transfer_id :
                Id for which reversal transfer object has to be fetched

        Returns:
            Transfer Dict
        r"   )r   r
   r   r    r   r   r   Ú	reversalsQ   s    zTransfer.reversals)N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r!   r#   r$   Ú__classcell__r   r   r   r   r      s   r   )Úbaser   Zconstants.urlr   r   r   r   r   r   r   Ú<module>   s   