Changeset - 758f601316d4
[Not reviewed]
0 1 0
Joar Wandborg - 10 years ago 2013-12-09 18:10:57
joar@wandborg.se
timout => timeout
1 file changed with 1 insertions and 1 deletions:
0 comments (0 inline, 0 general)
accounting/__init__.py
Show inline comments
...
 
@@ -6,49 +6,49 @@ from datetime import datetime
 
from xml.etree import ElementTree
 
from contextlib import contextmanager
 

	
 
_log = logging.getLogger(__name__)
 

	
 
class Ledger:
 
    def __init__(self, ledger_file=None, ledger_bin=None):
 
        if ledger_file is None:
 
            raise ValueError('ledger_file cannot be None')
 

	
 
        self.ledger_bin = ledger_bin or 'ledger'
 
        self.ledger_file = ledger_file
 
        _log.info('ledger file: %s', ledger_file)
 

	
 
        self.locked = False
 
        self.ledger_process = None
 

	
 
    @contextmanager
 
    def locked_process(self):
 
        if self.locked:
 
            raise RuntimeError('The process has already been locked,'
 
                               ' something\'s out of order.')
 

	
 
            # XXX: This code has no purpose in a single-threaded process
 
            timout = 5  # Seconds
 
            timeout = 5  # Seconds
 

	
 
            for i in range(1, timeout + 2):
 
                if i > timeout:
 
                    raise RuntimeError('Ledger process is already locked')
 

	
 
                if not self.locked:
 
                    break
 
                else:
 
                    _log.info('Waiting for one second... %d/%d', i, timeout)
 
                    time.sleep(1)
 

	
 

	
 
        process = self.get_process()
 

	
 
        self.locked = True
 
        _log.debug('lock enabled')
 

	
 
        yield process
 

	
 
        self.locked = False
 
        _log.debug('lock disabled')
 

	
 
    def assemble_arguments(self):
 
        return [
0 comments (0 inline, 0 general)