From d224effe3597c35f4c8cd54f13ada6970ed9d5f7 Mon Sep 17 00:00:00 2001 From: Romain Bignon Date: Thu, 11 Nov 2010 01:56:03 +0100 Subject: [PATCH] fixes --- weboob/applications/havesex/havesex.py | 15 ++++++++++----- weboob/tools/application/repl.py | 2 +- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/weboob/applications/havesex/havesex.py b/weboob/applications/havesex/havesex.py index aea6f464..b1b00ce8 100644 --- a/weboob/applications/havesex/havesex.py +++ b/weboob/applications/havesex/havesex.py @@ -129,7 +129,7 @@ class HaveSex(ReplApplication): backends_optims[backend.name] = optim for backend_name, optim in backends_optims.iteritems(): if len(optim.CONFIG) == 0: - print 'Nothing to do for %s.%s' % (backend_name, optim_name) + print '%s.%s does not require configuration.' % (backend_name, optim_name) continue was_running = optim.is_running() @@ -228,7 +228,7 @@ class HaveSex(ReplApplication): * edit configure an optimization service for a backend * stop stop optimization services on a backend """ - cmd, backend_name, optims = self.parseargs(line, 3, 1) + cmd, backend_name, optims_names = self.parseargs(line, 3, 1) if backend_name == '*': backend_name = None @@ -237,16 +237,21 @@ class HaveSex(ReplApplication): return 1 if cmd == 'start': - return self.optims('start', backend_name, optims) + return self.optims('start', backend_name, optims_names) if cmd == 'stop': - return self.optims('stop', backend_name, optims) + return self.optims('stop', backend_name, optims_names) if cmd == 'edit': - self.edit_optims(backend_name, optims, stop=True) + self.edit_optims(backend_name, optims_names, stop=True) return if cmd == 'list': + if optims_names is not None: + optims_names = optims_names.split() + optims = {} backends = set() for backend, (name, optim) in self.do('iter_optimizations', backends=backend_name): + if optims_names is not None and not name in optims_names: + continue if optim.is_running(): status = 'RUNNING' else: diff --git a/weboob/tools/application/repl.py b/weboob/tools/application/repl.py index 81ceee06..cd5fe699 100644 --- a/weboob/tools/application/repl.py +++ b/weboob/tools/application/repl.py @@ -335,7 +335,7 @@ class ReplApplication(Cmd, BaseApplication): def parseargs(self, line, nb, req_n=None): args = line.strip().split(' ', nb - 1) - if req_n is not None and len(args) < req_n: + if req_n is not None and (len(args) < req_n or req_n < 2 and line == ''): raise NotEnoughArguments('Command needs %d arguments' % req_n) if len(args) < nb: