From 5cf1b39c915d234d31156d417005adc3719d5649 Mon Sep 17 00:00:00 2001 From: slush Date: Mon, 10 Sep 2012 00:49:21 +0000 Subject: [PATCH] Start listening when mining service is ready --- launcher_demo.tac | 9 +++++++-- mining/__init__.py | 5 +++-- 2 files changed, 10 insertions(+), 4 deletions(-) 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) -- 1.7.1