HEX
Server: nginx/1.30.4
System: Linux d-twindigital-web-1.host-ed.eu 4.18.0-553.141.2.el8_10.x86_64 #1 SMP Wed Jul 8 10:28:18 EDT 2026 x86_64
User: u_twindigital_html (1009)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: //usr/lib/python3.6/site-packages/S3/__pycache__/HashCache.cpython-36.pyc
3

@tJ[��@sVddlmZyddlZWnek
r4ddlZYnXddlmZGdd�de�ZdS)�)�absolute_importN�)�deunicodisec@sLeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dS)�	HashCachecCst�|_dS)N)�dict�inodes)�self�r	�/usr/lib/python3.6/HashCache.py�__init__
szHashCache.__init__cCsf|dks|dkrdS||jkr*t�|j|<||j|krHt�|j||<t||d�|j|||<dS)Nr)�md5�size)rr)r�dev�inode�mtimer
rr	r	r
�adds
z
HashCache.addc	Cs:y&|j|||}|d|kr$dSWn
dS|dS)Nr
r)r)rrrrr
�dr	r	r
rsz
HashCache.md5cCsbx\|jj�D]N}xH|j|j�D]6}x0|j||j�D]}d|j|||d<q8Wq WqWdS)NT�purge)r�keys)rr�i�cr	r	r
�mark_all_for_purge!szHashCache.mark_all_for_purgecCsXy|j|||}Wntk
r*dSX|d|krTd|krT|j|||d=dS)Nr
r)r�KeyError)rrrrr
rr	r	r
�unmark_for_purge'szHashCache.unmark_for_purgecCspxj|jj�D]\}xV|j|j�D]D}x>|j||j�D](}d|j|||kr8|j||=Pq8Wq WqWdS)Nr)rr)rrr�mr	r	r
r/szHashCache.purgec
Cs8t|jdd�}tt|�d��}tj||�WdQRXdS)Nr)r�version�wb)rr�openr�pickle�dump)r�fr�fpr	r	r
�save7szHashCache.savec	CsHtt|�d��}tj|�}WdQRX|jd�dkrDd|krD|d|_dS)N�rbrrr)rrr�load�getr)rr r!rr	r	r
r$<szHashCache.loadN)�__name__�
__module__�__qualname__rrrrrrr"r$r	r	r	r
rs	r)	Z
__future__r�cPickler�ImportErrorZUtilsr�objectrr	r	r	r
�<module>s