Your IP : 216.73.216.52


Current Path : /opt/alt/python35/lib/python3.5/site-packages/lockfile/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib/python3.5/site-packages/lockfile/__pycache__/mkdirlockfile.cpython-35.pyc



��UV�@s�ddlmZmZddlZddlZddlZddlZddlmZm	Z	m
Z
mZmZm
Z
Gdd�de�ZdS)�)�absolute_import�divisionN�)�LockBase�
LockFailed�	NotLocked�	NotMyLock�LockTimeout�
AlreadyLockedc@sgeZdZdZdddd�Zddd�Zdd	�Zd
d�Zdd
�Zdd�Z	dS)�
MkdirLockFilez"Lock file by creating a directory.TNcCsKtj||||�tjj|jd|j|j|jf�|_	dS)zs
        >>> lock = MkdirLockFile('somefile')
        >>> lock = MkdirLockFile('somefile', threaded=False)
        z%s.%s%sN)
r�__init__�os�path�join�	lock_file�hostnameZtname�pid�unique_name)�selfrZthreaded�timeout�r�G/opt/alt/python35/lib/python3.5/site-packages/lockfile/mkdirlockfile.pyrs
	zMkdirLockFile.__init__cCsp|dk	r|n|j}tj�}|dk	rI|dkrI||7}|dkr^d}ntd|d�}x�ytj|j�Wn�tk
rMtj�d}|j	t	j
kr6tjj|j
�r�dS|dk	r&tj�|kr&|dkrtd|j��ntd|j��tj|�ntd|j��YqtXt|j
d�j�dSqtWdS)	Nrg�������?�
rz&Timeout waiting to acquire lock for %sz%s is already lockedzfailed to create %s�wb)r�time�maxr
�mkdirr�OSError�sys�exc_info�errno�EEXISTr�existsrr	r
�sleepr�open�close)rrZend_time�wait�errrrr�acquires2
	

zMkdirLockFile.acquirecCsn|j�s"td|j��n(tjj|j�sJtd|j��tj|j�tj|j	�dS)Nz%s is not lockedz%s is locked, but not by me)
�	is_lockedrrr
r"rr�unlink�rmdirr)rrrr�releaseAszMkdirLockFile.releasecCstjj|j�S)N)r
rr"r)rrrrr)IszMkdirLockFile.is_lockedcCs|j�otjj|j�S)N)r)r
rr"r)rrrr�i_am_lockingLszMkdirLockFile.i_am_lockingcCsetjj|j�rax9tj|j�D]%}tjtjj|j|��q(Wtj|j�dS)N)r
rr"r�listdirr*rr+)r�namerrr�
break_lockPs#zMkdirLockFile.break_lock)
�__name__�
__module__�__qualname__�__doc__rr(r,r)r-r0rrrrrs
&r)�
__future__rrrr
rr �rrrrr	r
rrrrr�<module>s.