From: slush Date: Mon, 10 Sep 2012 00:49:21 +0000 (+0000) Subject: Start listening when mining service is ready X-Git-Url: https://git.novaco.in/?p=stratum-mining.git;a=commitdiff_plain;h=5cf1b39c915d234d31156d417005adc3719d5649 Start listening when mining service is ready --- diff --git a/launcher_demo.tac b/launcher_demo.tac index ad59d5b..6759ad8 100644 --- a/launcher_demo.tac +++ b/launcher_demo.tac @@ -5,10 +5,15 @@ import os, sys sys.path = [os.path.join(os.getcwd(), 'conf'),] + sys.path +from twisted.internet import defer + +# Run listening when mining service is ready +on_startup = defer.Deferred() + # Bootstrap Stratum framework import stratum from stratum import settings -application = stratum.setup() +application = stratum.setup(on_startup) # Load mining service into stratum framework import mining @@ -20,4 +25,4 @@ Interfaces.set_share_manager(ShareManagerInterface()) Interfaces.set_worker_manager(WorkerManagerInterface()) Interfaces.set_timestamper(TimestamperInterface()) -mining.setup() +mining.setup(on_startup) diff --git a/mining/__init__.py b/mining/__init__.py index 03366d3..73e6d15 100644 --- a/mining/__init__.py +++ b/mining/__init__.py @@ -3,7 +3,7 @@ from subscription import MiningSubscription from twisted.internet import defer @defer.inlineCallbacks -def setup(): +def setup(on_startup): '''Setup mining service internal environment. You should not need to change this. If you want to use another Worker manager or Share manager, @@ -48,4 +48,5 @@ def setup(): import stratum.logger log = stratum.logger.get_logger('mining') - log.info("MINING SERVICE IS READY") + log.info("MINING SERVICE IS READY") + on_startup.callback(True)