2007-11-12 11:17:25 +01:00
|
|
|
import threading
|
|
|
|
import Event
|
2007-11-13 11:44:47 +01:00
|
|
|
import Queue
|
|
|
|
from logger import Logger
|
2007-11-12 11:17:25 +01:00
|
|
|
|
|
|
|
class DynHandler(threading.Thread):
|
2007-11-13 11:44:47 +01:00
|
|
|
def __init__(self, eventq):
|
2007-11-12 11:17:25 +01:00
|
|
|
threading.Thread.__init__(self)
|
2007-11-13 11:44:47 +01:00
|
|
|
self.eventq = eventq
|
2007-11-12 11:17:25 +01:00
|
|
|
self.setDaemon(True)
|
|
|
|
|
|
|
|
def run(self):
|
|
|
|
while True:
|
2007-11-13 11:44:47 +01:00
|
|
|
event = self.eventq.get()
|
2007-11-12 11:17:25 +01:00
|
|
|
try:
|
|
|
|
event.prepare()
|
2007-11-13 11:44:47 +01:00
|
|
|
Logger.log("Processing event %s" % str(event))
|
2007-11-12 11:17:25 +01:00
|
|
|
event.process()
|
|
|
|
except Event.IllegalEventException, e:
|
2007-11-13 11:44:47 +01:00
|
|
|
Logger.log("Some failure: %s" % e.msg)
|