Esempio n. 1
0
 def __init__(self, path, transport):
     self.lock_file = None
     self.path = path
     self.lock_path = path + '.write-lock'
     self.transport = transport
     try:
         # RBC 20060103 FIXME should we be using private methods here ?
         abspath = transport._remote_path(self.lock_path)
         self.lock_file = transport._sftp_open_exclusive(abspath)
     except FileExists:
         raise LockError('File %r already locked' % (self.path, ))
Esempio n. 2
0
 def _assert_not_locked(self):
     if self._lock_mode:
         raise LockError("%s is already locked in mode %r" %
                         (self, self._lock_mode))
Esempio n. 3
0
 def __init__(self, path, transport):
     self.path = path
     self.transport = transport
     if self.path in self.transport._locks:
         raise LockError('File %r already locked' % (self.path, ))
     self.transport._locks[self.path] = self
Esempio n. 4
0
 def _assert_locked(self):
     if not self._lock_mode:
         raise LockError("%s is not locked" % (self, ))