HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/S3/__pycache__/HashCache.cpython-310.pyc
o

�Qa��@sTddlmZzddlZWn
eyddlZYnwddlmZGdd�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/dist-packages/S3/HashCache.py�__init__
szHashCache.__init__cCsf|dks|dkr
dS||jvrt�|j|<||j|vr$t�|j||<t||d�|j|||<dS)Nr)�md5�size)rr)r�dev�inode�mtimer
rr	r	r
�adds
z
HashCache.addcCsDz|j|||}|d|krWdSW|dSty!YdSw)Nr
r)r�	Exception�rrrrr
�dr	r	r
rs���z
HashCache.md5cCsVt|j�D]#}t|j|�D]}t|j||�D]
}d|j|||d<qqqdS)NT�purge��tupler)rr�i�cr	r	r
�mark_all_for_purge!s���zHashCache.mark_all_for_purgecCs`z|j|||}Wn
tyYdSw|d|kr,d|vr.|j|||d=dSdSdS)Nr
r)r�KeyErrorrr	r	r
�unmark_for_purge's��zHashCache.unmark_for_purgecCsft|j�D]+}t|j|�D]!}t|j||�D]}d|j|||vr.|j||=nqqqdS)Nrr)rrr�mr	r	r
r/s����zHashCache.purgecCsNt|jdd�}tt|�d��}t�||�Wd�dS1s wYdS)Nr)r�version�wb)rr�openr�pickle�dump)r�fr�fpr	r	r
�save7s"�zHashCache.savecCsdtt|�d��
}t�|�}Wd�n1swY|�d�dkr.d|vr0|d|_dSdSdS)N�rbrrr)r rr!�load�getr)rr#r$rr	r	r
r'<s��zHashCache.loadN)�__name__�
__module__�__qualname__rrrrrrr%r'r	r	r	r
rs	r)	�
__future__r�cPickler!�ImportError�Utilsr�objectrr	r	r	r
�<module>s�