예제 #1
0
 def get_ledger(self, name, is_full=False):
     cmd = ['ledger', str(name)]
     if is_full:
         cmd.append('full')
     response = self._command(*cmd)
     result = response.get('ledger')
     if result:
         return result
     error = response['error']
     etext = _ERROR_TEXT.get(error)
     if etext:
         error = '%s (%s)' % (etext, error)
     Log.fatal(_ERROR_TEXT.get(error, error))
예제 #2
0
 def get_ledger(self, name, is_full=False):
     cmd = ['ledger', str(name)]
     if is_full:
         cmd.append('full')
     response = self._command(*cmd)
     result = response.get('ledger')
     if result:
         return result
     error = response['error']
     etext = _ERROR_TEXT.get(error)
     if etext:
         error = '%s (%s)' % (etext, error)
     Log.fatal(_ERROR_TEXT.get(error, error))
예제 #3
0
def search(server):
    """Yields a stream of ledger numbers that match the given condition."""
    condition = lambda number: ARGS.condition(server, number)
    ledgers = server.ledgers
    if ARGS.binary:
        try:
            position = Search.FIRST if ARGS.position == 'first' else Search.LAST
            yield Search.binary_search(ledgers[0], ledgers[-1], condition,
                                       position)
        except:
            Log.fatal('No ledgers matching condition "%s".' % condition,
                      file=sys.stderr)
    else:
        for x in Search.linear_search(ledgers, condition):
            yield x
예제 #4
0
def search(server):
    """Yields a stream of ledger numbers that match the given condition."""
    condition = lambda number: ARGS.condition(server, number)
    ledgers = server.ledgers
    if ARGS.binary:
        try:
            position = Search.FIRST if ARGS.position == 'first' else Search.LAST
            yield Search.binary_search(
                ledgers[0], ledgers[-1], condition, position)
        except:
            Log.fatal('No ledgers matching condition "%s".' % condition,
                      file=sys.stderr)
    else:
        for x in Search.linear_search(ledgers, condition):
            yield x