From 31433c161090d1c4168524c038300c53a3cd34be Mon Sep 17 00:00:00 2001 From: Romain Bignon Date: Mon, 26 Apr 2010 18:12:53 +0200 Subject: [PATCH] inherit the Scheduler class' threads based event loop --- weboob/tools/application/prompt.py | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/weboob/tools/application/prompt.py b/weboob/tools/application/prompt.py index db8096a4..8bf3ee8b 100644 --- a/weboob/tools/application/prompt.py +++ b/weboob/tools/application/prompt.py @@ -18,9 +18,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. """ -import sched -import time -import select import sys from weboob import Weboob @@ -34,18 +31,18 @@ __all__ = ['PromptApplication'] class PromptScheduler(Scheduler): def __init__(self, prompt_cb, read_cb): - self.scheduler = sched.scheduler(time.time, self.sleep) + Scheduler.__init__(self) self.read_cb = read_cb self.prompt_cb = prompt_cb - def sleep(self, d): - self.prompt_cb() + def run(self): try: - read, write, excepts = select.select([sys.stdin], [], [], d or None) - if read: + while not self.stop_event.isSet(): + self.prompt_cb() line = sys.stdin.readline() if not line: self.want_stop() + sys.stdout.write('\n') else: self.read_cb(line.strip()) except KeyboardInterrupt: