def stop(self): SoupServer.stop(self) self.main_loop.quit() if self.pid_file: remove_file(self.pid_file) if self.access_log: self.access_log_file.close()
def __init__(self, address='', port=8080, access_log=None, pid_file=None, profile=None): SoupServer.__init__(self, address=address, port=port) # Keep arguments self.address = address self.port = port self.access_log = access_log self.pid_file = pid_file self.profile = profile # Main Loop self.main_loop = MainLoop() # Open log files if access_log is not None: self.access_log_file = open(access_log, 'a+')
def start(self): # Language negotiation from itools.web import select_language init_language_selector(select_language) # Graceful stop signal(SIGINT, self.stop_gracefully) signal(SIGTERM, self.zap) if self.pid_file: pid = getpid() open(self.pid_file, 'w').write(str(pid)) # Run SoupServer.start(self) print 'Listen %s:%d' % (self.address, self.port) if self.profile: runctx("self.main_loop.run()", globals(), locals(), self.profile) else: self.main_loop.run()