File: //opt/alt/python35/lib/python3.5/site-packages/lockfile/__pycache__/symlinklockfile.cpython-35.pyc
��UV8
� @ sj d d l m Z d d l Z d d l Z d d l m Z m Z m Z m Z m Z Gd d � d e � Z
d S)� )�absolute_importN� )�LockBase� NotLocked� NotMyLock�LockTimeout�
AlreadyLockedc @ sg e Z d Z d Z d d d d � Z d d d � Z d d � Z d
d � Z d d
� Z d d � Z d S)�SymlinkLockFilez'Lock access to a file using symlink(2).TNc C s6 t j | | | | � t j j | j � d | _ d S)Nr )r �__init__�os�path�split�unique_name)�selfr Zthreaded�timeout� r �/symlinklockfile.pyr
s zSymlinkLockFile.__init__c C s
| d k r | n | j } t j � } | d k rI | d k rI | | 7} x� y t j | j | j � Wn� t k
r | j � r� d S| d k r� t j � | k r� | d k r� t d | j � � n t
d | j � � t j | d k r� | d n d � YqL Xd SqL Wd S)Nr z&Timeout waiting to acquire lock for %sz%s is already locked�
g�������?)r �timer �symlinkr � lock_file�OSError�i_am_lockingr r r �sleep)r r �end_timer r r �acquire s$
(zSymlinkLockFile.acquirec C sU | j � s"