gajim-plural/common/thread.py

41 lines
1.2 KiB
Python

## common/thread.py
##
## Gajim Team:
## - Yann Le Boulanger <asterix@lagaule.org>
## - Vincent Hanquez <tab@snarc.org>
##
## 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