X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=sql-edition%2Fservers%2FIdler.py;h=89783e355b63e314dda2f6aeed9dfb8400c335ed;hb=a3ef3fce899e388108657fd72223ea8c6c6cbf53;hp=eedfe7335e2227982bc33276ff6ef03cd75e88b9;hpb=92192e8cce7e4aa9de005ef7e32b13eca1776a79;p=zanchey%2Fdispense2.git diff --git a/sql-edition/servers/Idler.py b/sql-edition/servers/Idler.py index eedfe73..89783e3 100755 --- a/sql-edition/servers/Idler.py +++ b/sql-edition/servers/Idler.py @@ -246,3 +246,29 @@ class FortuneIdler(StringIdler): def affinity(self): return 20 + +class PipeIdler(StringIdler): + 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+' '+args) + text = string.join(stdout.readlines()) + stdout.close() + stdin.close() + StringIdler.__init__(self, v, text,repeat=False) + + def affinity(self): + return 20 + +class FileIdler(StringIdler): + def __init__(self, v, thefile=None, repeat=False): + text = "I broke my wookie...." + + if file and os.access(thefile,os.F_OK|os.R_OK): + f = file(thefile,'r') + text = string.join(f.readlines()) + f.close() + StringIdler.__init__(self, v, text,repeat=repeat) + + def affinity(self): + return 8