HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.29
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //opt/alt/python38/lib/python3.8/site-packages/lockfile/__pycache__/sqlitelockfile.cpython-38.pyc
U

��UV��@srddlmZmZddlZddlZzeWnek
r@eZYnXddlm	Z	m
Z
mZmZm
Z
Gdd�de	�ZdS)�)�absolute_import�divisionN�)�LockBase�	NotLocked�	NotMyLock�LockTimeout�
AlreadyLockedc@sPeZdZdZdZddd�Zddd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�ZdS)�SQLiteLockFilezDemonstrate SQL-based locking.NTc
Cs�t�||||�t|j�|_t|j�|_tjdkrdddl}|��\}}t	�
|�t	�|�~~|t_ddl}|�
tj�|_|j��}z|�d�Wn|jk
r�Yn$X|j��ddl}	|	�t	jtj�dS)zu
        >>> lock = SQLiteLockFile('somefile')
        >>> lock = SQLiteLockFile('somefile', threaded=False)
        NrzGcreate table locks(   lock_file varchar(32),   unique_name varchar(32)))r�__init__�unicode�	lock_file�unique_namer
�testdb�tempfile�mkstemp�os�close�unlink�sqlite3�connect�
connection�cursor�executeZOperationalError�commit�atexit�register)
�self�pathZthreaded�timeoutrZ_fdrr�cr�r!�H/opt/alt/python38/lib/python3.8/site-packages/lockfile/sqlitelockfile.pyrs(




zSQLiteLockFile.__init__cCsD|dk	r|n|j}t��}|dk	r2|dkr2||7}|dkr@d}n|dkrNd}n|d}|j��}|��s�|�d|j|jf�|j��|�d|jf�|�	�}t
|�dkr�|�d|jf�|j��q�dSn(|�d|jf�|�	�}t
|�dkr�dS|dk	�r4t��|k�r4|dk�r&td|j��nt
d	|j��t�|�q`dS)
Nrg�������?�
z;insert into locks  (lock_file, unique_name)  values  (?, ?)z*select * from locks  where unique_name = ?r�(delete from locks  where unique_name = ?z&Timeout waiting to acquire lock for %sz%s is already locked)r�timerr�	is_lockedrr
rr�fetchall�lenrrr	�sleep)rr�end_time�waitr�rowsr!r!r"�acquire5sL

�
���
�zSQLiteLockFile.acquirecCs\|��std|j��|��s4td|j|��f��|j��}|�	d|jf�|j�
�dS)Nz%s is not lockedz#%s is locked, but not by me (by %s)r$)r&rr�i_am_lockingrr�_who_is_lockingrrrr�rrr!r!r"�releasets�
�zSQLiteLockFile.releasecCs&|j��}|�d|jf�|��dS)Nz2select unique_name from locks  where lock_file = ?r)rrrr
Zfetchoner0r!r!r"r/�s

�zSQLiteLockFile._who_is_lockingcCs*|j��}|�d|jf�|��}|S)Nz(select * from locks  where lock_file = ?)rrrr
r')rrr,r!r!r"r&�s
�zSQLiteLockFile.is_lockedcCs*|j��}|�d|j|jf�|��S)Nz?select * from locks  where lock_file = ?    and unique_name = ?)rrrr
rr'r0r!r!r"r.�s


�zSQLiteLockFile.i_am_lockingcCs(|j��}|�d|jf�|j��dS)Nz&delete from locks  where lock_file = ?)rrrr
rr0r!r!r"�
break_lock�s

�zSQLiteLockFile.break_lock)TN)N)�__name__�
__module__�__qualname__�__doc__rrr-r1r/r&r.r2r!r!r!r"r
s
"
?r
)�
__future__rrr%rr�	NameError�str�rrrrr	r
r!r!r!r"�<module>s