
    h
                     2    d dl mZ ddlmZ  G d de      Zy)   )Resource   )URLc                   f     e Zd Zd	 fd	Zi fdZi fdZi fdZi fdZi fdZi fdZ	i fdZ
 xZS )
Tokenc                 x    t         t        |   |       t        j                  t        j
                  z   | _        y N)superr   __init__r   V1CUSTOMER_URLbase_url)selfclient	__class__s     V/var/www/html/eduruby.in/venv/lib/python3.12/site-packages/razorpay/resources/token.pyr   zToken.__init__   s(    eT#F+!1!11    c                     dj                  t        j                  t        j                        } | j                  ||fi |S )zi
        Create token from given dict

        Returns:
            token Dict which was created
        z{}{}formatr   r   TOKENpost_urlr   datakwargsurls       r   createzToken.create
   s4     mmCFFCII.t}}S$1&11r   c                 d    dj                  | j                  ||      } | j                  ||fi |S )a  
        Fetch Token for given Id and given customer Id

        Args:
            customer_id : Customer Id for which tokens have to be fetched
            token_id    : Id for which TOken object has to be fetched

        Returns:
            Token dict for given token Id
        {}/{}/tokens/{}r   r   get_urlr   customer_idtoken_idr   r   r   s         r   fetchzToken.fetch   s4      &&t}}k8Lt||C000r   c                 b    dj                  | j                  |      } | j                  ||fi |S )z
        Get all tokens for given customer Id

        Args:
            customer_id : Customer Id for which tokens have to be fetched

        Returns:
            Token dicts for given cutomer Id
        z{}/{}/tokensr    )r   r#   r   r   r   s        r   allz	Token.all#   s2     ##DMM;?t||C000r   c                 d    dj                  | j                  ||      } | j                  ||fi |S )a  
        Delete Given Token For a Customer

        Args:
            customer_id : Customer Id for which tokens have to be deleted
            token_id    : Id for which TOken object has to be deleted
        Returns:
            Dict for deleted token
        r   )r   r   
delete_urlr"   s         r   deletezToken.delete0   s4      &&t}}k8LtsD3F33r   c                     dj                  t        j                  t        j                  d      } | j                  ||fi |S )ze
        fetch Given Token For a Customer

        Returns:
            Dict for fetch token
        {}{}/{}r%   r   r   s       r   
fetchTokenzToken.fetchToken=   s8     svvsyy':t}}S$1&11r   c                     dj                  t        j                  t        j                  d      } | j                  ||fi |S )zY
        Delete Given Token

        Returns:
            Dict for deleted token
        r,   r*   r   r   s       r   deleteTokenzToken.deleteTokenG   s8     svvsyy(;t}}S$1&11r   c                     dj                  t        j                  t        j                  d      } | j                  ||fi |S )zr
        Process a Payment on another PA/PG with Token Created on Razorpay

        Returns:
            
        r,   z0service_provider_tokens/token_transactional_datar   r   s       r   processPaymentOnAlternatePAorPGz%Token.processPaymentOnAlternatePAorPGQ   s9     svvsyy2det}}S$1&11r   r	   )__name__
__module____qualname__r   r   r%   r'   r*   r-   r/   r1   __classcell__)r   s   @r   r   r      sN    2  	2 13 1 %' 1 24 4 ! 2  " 2 46 2r   r   N)baser   constants.urlr   r    r   r   <module>r9      s     T2H T2r   