a
    ù!fý  ã                   @   s8   d dl mZ d dlmZ d dlmZ G dd„ deƒZdS )é    )Údivision)Údatetime)Ú	BaseCachec                   @   s>   e Zd Zdd„ Zdd„ Zddd„Zdd	„ Zd
d„ Zdd„ ZdS )Ú
RedisCachec                 C   s
   || _ d S ©N)Úconn)Úselfr   © r	   ú`/var/www/html/python-backend/venv/lib/python3.9/site-packages/cachecontrol/caches/redis_cache.pyÚ__init__   s    zRedisCache.__init__c                 C   s   | j  |¡S r   )r   Úget©r   Úkeyr	   r	   r
   r      s    zRedisCache.getNc                 C   sX   |s| j  ||¡ n@t|tƒrD|t ¡  }| j  |t| ¡ ƒ|¡ n| j  |||¡ d S r   )r   ÚsetÚ
isinstancer   ÚutcnowÚsetexÚintÚtotal_seconds)r   r   ÚvalueÚexpiresr	   r	   r
   r      s    
zRedisCache.setc                 C   s   | j  |¡ d S r   )r   Údeleter   r	   r	   r
   r      s    zRedisCache.deletec                 C   s    | j  ¡ D ]}| j  |¡ q
dS )zIHelper for clearing all the keys in a database. Use with
        caution!N)r   Úkeysr   r   r	   r	   r
   Úclear   s    zRedisCache.clearc                 C   s   dS )z?Redis uses connection pooling, no need to close the connection.Nr	   )r   r	   r	   r
   Úclose%   s    zRedisCache.close)N)	Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r	   r	   r	   r
   r      s   
	r   N)Ú
__future__r   r   Zcachecontrol.cacher   r   r	   r	   r	   r
   Ú<module>   s   