## common/thread.py ## ## Gajim Team: ## - Yann Le Boulanger ## - Vincent Hanquez ## ## Copyright (C) 2003-2005 Gajim Team ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published ## by the Free Software Foundation; version 2 only. ## ## This program is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. ## import threading import socket import time import sys from common import i18n _ = i18n._ class GajimThread(threading.Thread): def __init__(self, name = None, queueIn = None, queueOut = None): self.queueIn = queueIn self.queueOut = queueOut threading.Thread.__init__(self, target = self.run, name = name) # END __init__ def run(self): mod = compile('import plugins.%s' % self.getName(), self.getName(), 'exec') res = eval(mod) mod = compile('plugins.%s.%s.plugin(self.queueIn, self.queueOut)' % (self.getName(), self.getName()), self.getName(), 'exec') res = eval(mod) # END run # END GajimThread