document idlers and slow them down!
[uccvend-vendserver.git] / sql-edition / servers / Idler.py
index 2670b51..e56f8d7 100755 (executable)
@@ -6,20 +6,26 @@ from MessageKeeper import MessageKeeper
 
 orderings = None
 
+IDLER_TEXT_SPEED=1.8
+
 class Idler:
        def __init__(self, v):
                self.v = v
 
        def next(self):
+               """Displays next stage of the idler"""
                pass
 
        def reset(self):
+               """Resets the idler to a known intial state"""
                pass
        
        def finished(self):
+               """Returns True if the idler is considered finished"""
                return False
 
        def affinity(self):
+               """How much we want this idler to be the next one chosen"""
                return 1
 
 class TrainIdler(Idler):
@@ -194,7 +200,7 @@ class StringIdler(Idler):
                self.mk = MessageKeeper(v)
                self.text = self.clean_text(text) + "          "
                
-               msg = [("",False, None),(self.text, repeat, 0.8)]
+               msg = [("",False, None),(self.text, repeat, IDLER_TEXT_SPEED)]
                self.mk.set_messages(msg)
 
        def clean_text(self, text):
@@ -248,10 +254,10 @@ class FortuneIdler(StringIdler):
                return 20
 
 class PipeIdler(StringIdler):
-       def __init__(self, v, command):
+       def __init__(self, v, command, args):
                text = "I ate my cookie...."
                if os.access(command,os.F_OK|os.X_OK):
-                       (stdout, stdin) = popen2.popen2(command)
+                       (stdout, stdin) = popen2.popen2(command+' '+args)
                        text = string.join(stdout.readlines())
                        stdout.close()
                        stdin.close()

UCC git Repository :: git.ucc.asn.au