Example #1
0
class Daemon(object):
    def __init__(self, daemon_id):
        self._daemon_id = daemon_id
        self._start_xmlrpc()
        self._write_daemon_pids()

    def _start_xmlrpc(self):
        port = None
        if is_developer_mode():
            port = 8080
        self._xmlrpc = XMLRPCService(port)
        self._xmlrpc.serve()

    def _write_daemon_pids(self):
        appdir = get_application_dir()
        daemondir = os.path.join(appdir, 'daemon', self._daemon_id)
        os.makedirs(daemondir)
        port = os.path.join(daemondir, 'port')
        open(port, 'w').write('%s\n' % (self._xmlrpc.port, ))

    def _check_active(self):
        if not self._xmlrpc.is_active():
            self.shutdown()

    def shutdown(self):
        reactor.stop()

    def run(self):
        reactor.run()
Example #2
0
class Daemon(object):
    def __init__(self, daemon_id):
        self._daemon_id = daemon_id
        self._start_xmlrpc()
        self._write_daemon_pids()

    def _start_xmlrpc(self):
        port = None
        if is_developer_mode():
            port = 8080
        self._xmlrpc = XMLRPCService(port)
        self._xmlrpc.serve()

    def _write_daemon_pids(self):
        appdir = get_application_dir()
        daemondir = os.path.join(appdir, 'daemon', self._daemon_id)
        os.makedirs(daemondir)
        port = os.path.join(daemondir, 'port')
        open(port, 'w').write('%s\n' % (self._xmlrpc.port, ))

    def _check_active(self):
        if not self._xmlrpc.is_active():
            self.shutdown()

    def shutdown(self):
        reactor.stop()

    def run(self):
        reactor.run()