Start listening when mining service is ready
authorslush <info@bitcoin.cz>
Mon, 10 Sep 2012 00:49:21 +0000 (00:49 +0000)
committerslush <info@bitcoin.cz>
Mon, 10 Sep 2012 00:49:21 +0000 (00:49 +0000)
launcher_demo.tac
mining/__init__.py

index ad59d5b..6759ad8 100644 (file)
@@ -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)
index 03366d3..73e6d15 100644 (file)
@@ -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)