Daemon network cleanup
All Daemon creation was preceded by Network creation, based on config, and passing it to Daemon. As config is passed to Daemon, it might as well create its own network and the code is in one place.
This commit is contained in:
parent
3b44504644
commit
0a1b3eac9c
17
electrum
17
electrum
|
@ -328,14 +328,8 @@ if __name__ == '__main__':
|
||||||
if server is not None:
|
if server is not None:
|
||||||
result = server.gui(config_options)
|
result = server.gui(config_options)
|
||||||
else:
|
else:
|
||||||
if not config.get('offline'):
|
daemon = Daemon(config)
|
||||||
network = Network(config)
|
gui = init_gui(config, daemon.network, daemon, plugins)
|
||||||
network.start()
|
|
||||||
else:
|
|
||||||
network = None
|
|
||||||
daemon = Daemon(config, network)
|
|
||||||
daemon.start()
|
|
||||||
gui = init_gui(config, network, daemon, plugins)
|
|
||||||
daemon.gui = gui
|
daemon.gui = gui
|
||||||
gui.main()
|
gui.main()
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
@ -351,15 +345,12 @@ if __name__ == '__main__':
|
||||||
elif subcommand == 'start':
|
elif subcommand == 'start':
|
||||||
p = os.fork()
|
p = os.fork()
|
||||||
if p == 0:
|
if p == 0:
|
||||||
network = Network(config)
|
daemon = Daemon(config)
|
||||||
network.start()
|
|
||||||
daemon = Daemon(config, network)
|
|
||||||
if config.get('websocket_server'):
|
if config.get('websocket_server'):
|
||||||
from electrum import websockets
|
from electrum import websockets
|
||||||
websockets.WebSocketServer(config, network).start()
|
websockets.WebSocketServer(config, daemon.network).start()
|
||||||
if config.get('requests_dir'):
|
if config.get('requests_dir'):
|
||||||
util.check_www_dir(config.get('requests_dir'))
|
util.check_www_dir(config.get('requests_dir'))
|
||||||
daemon.start()
|
|
||||||
daemon.join()
|
daemon.join()
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -26,7 +26,7 @@ from wallet import WalletStorage, Wallet
|
||||||
from wizard import WizardBase
|
from wizard import WizardBase
|
||||||
from commands import known_commands, Commands
|
from commands import known_commands, Commands
|
||||||
from simple_config import SimpleConfig
|
from simple_config import SimpleConfig
|
||||||
|
from network import Network
|
||||||
|
|
||||||
def lockfile(config):
|
def lockfile(config):
|
||||||
return os.path.join(config.path, 'daemon')
|
return os.path.join(config.path, 'daemon')
|
||||||
|
@ -62,10 +62,16 @@ class RequestHandler(SimpleJSONRPCRequestHandler):
|
||||||
|
|
||||||
class Daemon(DaemonThread):
|
class Daemon(DaemonThread):
|
||||||
|
|
||||||
def __init__(self, config, network):
|
def __init__(self, config):
|
||||||
DaemonThread.__init__(self)
|
DaemonThread.__init__(self)
|
||||||
self.config = config
|
self.config = config
|
||||||
self.network = network
|
if not config.get('offline'):
|
||||||
|
self.network = Network(config)
|
||||||
|
self.network.start()
|
||||||
|
else:
|
||||||
|
# FIXME: some of the daemon code assumes self.network is not None
|
||||||
|
# This is not something this change has introduced
|
||||||
|
self.network = None
|
||||||
self.gui = None
|
self.gui = None
|
||||||
self.wallets = {}
|
self.wallets = {}
|
||||||
self.wallet = None
|
self.wallet = None
|
||||||
|
@ -82,6 +88,7 @@ class Daemon(DaemonThread):
|
||||||
self.server.register_function(self.ping, 'ping')
|
self.server.register_function(self.ping, 'ping')
|
||||||
self.server.register_function(self.run_daemon, 'daemon')
|
self.server.register_function(self.run_daemon, 'daemon')
|
||||||
self.server.register_function(self.run_gui, 'gui')
|
self.server.register_function(self.run_gui, 'gui')
|
||||||
|
self.start()
|
||||||
|
|
||||||
def ping(self):
|
def ping(self):
|
||||||
return True
|
return True
|
||||||
|
|
Loading…
Reference in New Issue