class Jukebox: def __exit_signal_handler(self, signal, frame): print "Exiting..." self.__eventHandler.stop() sys.exit(0) def __init__(self): self.__eventHandler = AmarokEventHandler() self.__httpServer = HttpServer() signal.signal(signal.SIGINT, self.__exit_signal_handler) signal.signal(signal.SIGKILL, self.__exit_signal_handler) signal.signal(signal.SIGTERM, self.__exit_signal_handler) def start(self): self.__t = threading.Thread(target = self.__eventHandler.start) self.__t.start() self.__httpServer.serve()
class Jukebox: def __exit_signal_handler(self, signal, frame): print "Exiting..." self.__eventHandler.stop() sys.getdefaultencoding = lambda: 'utf-8' sys.exit(0) def __init__(self, port = -1): self.state = State() self.__eventHandler = AmarokEventHandler(self.state) if port == -1: self.__httpServer = HttpServer(self.state) else: self.__httpServer = HttpServer(self.state, port) signal.signal(signal.SIGINT, self.__exit_signal_handler) signal.signal(signal.SIGKILL, self.__exit_signal_handler) signal.signal(signal.SIGTERM, self.__exit_signal_handler) def start(self): self.__t = threading.Thread(target = self.__eventHandler.start) self.__t.start() self.__httpServer.serve()