use queue for session responses
[electrum-server.git] / transports / native.py
index 729a428..2ed7ff9 100644 (file)
@@ -10,6 +10,15 @@ def timestr():
     return time.strftime("[%d/%m/%Y-%H:%M:%S]")
 
 
+def new_to_old(s):
+    s = s.replace("'block_hash'", "'blk_hash'")
+    s = s.replace("'index'", "'pos'")
+    s = s.replace("'timestamp'", "'nTime'")
+    s = s.replace("'is_input'", "'is_in'")
+    s = s.replace("'raw_output_script'","'raw_scriptPubKey'")
+    return s
+
+
 class NativeServer(threading.Thread):
 
     def __init__(self, shared, abe, irc, banner, host, port):
@@ -32,9 +41,9 @@ class NativeServer(threading.Thread):
         session['last_time'] = time.time()
         ret = {}
         k = 0
-        for addr in addresses:
+        for addr in addresses.keys():
             status = self.store.get_status( addr )
-            msg_id, last_status = addresses.get( addr )
+            msg_id, last_status = addresses[addr]
             if last_status != status:
                 addresses[addr] = msg_id, status
                 ret[addr] = status
@@ -75,7 +84,7 @@ class NativeServer(threading.Thread):
         """deprecated in 0.42, wad replaced by add_address_to_session"""
         self.sessions[session_id]['addresses'] = {}
         for a in addresses:
-            self.sessions[session_id]['addresses'][a] = ''
+            self.sessions[session_id]['addresses'][a] = ('','')
         self.sessions[session_id]['last_time'] = time.time()
         return 'ok'
 
@@ -156,6 +165,7 @@ class NativeServer(threading.Thread):
         elif cmd == 'h': 
             address = data
             out = repr( self.store.get_history( address ) )
+            out = new_to_old(out)
 
         elif cmd =='tx':
             out = self.store.send_tx(data)