URI: 
       tAdding user enabled debug messages for server communications - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 22fcb9e5215219ccdbbbdf9b36cdc20fed54fd0a
   DIR parent a48d68ebd01346cba7b06b0ffc12675551dc0481
  HTML Author: Julian Tosh <julian@tosh.us>
       Date:   Fri,  6 Jul 2012 13:36:13 -0700
       
       Adding user enabled debug messages for server communications
       
       Diffstat:
         M lib/interface.py                    |      25 +++++++++++++++++--------
         M lib/wallet.py                       |       3 +++
       
       2 files changed, 20 insertions(+), 8 deletions(-)
       ---
   DIR diff --git a/lib/interface.py b/lib/interface.py
       t@@ -49,7 +49,7 @@ def old_to_new(d):
        
        
        class Interface(threading.Thread):
       -    def __init__(self, host, port):
       +    def __init__(self, host, port, debug_server):
                threading.Thread.__init__(self)
                self.daemon = True
                self.host = host
       t@@ -67,6 +67,8 @@ class Interface(threading.Thread):
                self.responses = Queue.Queue()
                self.unanswered_requests = {}
        
       +        self.debug_server = debug_server
       +
            def init_socket(self):
                pass
        
       t@@ -76,7 +78,9 @@ class Interface(threading.Thread):
        
            def queue_json_response(self, c):
        
       -        #print "<--",c
       +        if self.debug_server:
       +          print "<--",c
       +
                msg_id = c.get('id')
                error = c.get('error')
                
       t@@ -117,9 +121,10 @@ class Interface(threading.Thread):
        class PollingInterface(Interface):
            """ non-persistent connection. synchronous calls"""
        
       -    def __init__(self, host, port):
       -        Interface.__init__(self, host, port)
       +    def __init__(self, host, port, debug_server):
       +        Interface.__init__(self, host, port, debug_server)
                self.session_id = None
       +        self.debug_server = debug_server
        
            def get_history(self, address):
                self.send([('blockchain.address.get_history', [address] )])
       t@@ -227,8 +232,9 @@ class HttpStratumInterface(PollingInterface):
        class TcpStratumInterface(Interface):
            """json-rpc over persistent TCP connection, asynchronous"""
        
       -    def __init__(self, host, port):
       -        Interface.__init__(self, host, port)
       +    def __init__(self, host, port, debug_server):
       +        Interface.__init__(self, host, port, debug_server)
       +        self.debug_server = debug_server
        
            def init_socket(self):
                self.s = socket.socket( socket.AF_INET, socket.SOCK_STREAM )
       t@@ -279,7 +285,10 @@ class TcpStratumInterface(Interface):
                    method, params = m 
                    request = json.dumps( { 'id':self.message_id, 'method':method, 'params':params } )
                    self.unanswered_requests[self.message_id] = method, params
       -            #print "-->",request
       +
       +            if self.debug_server:
       +              print "-->",request
       +
                    self.message_id += 1
                    out += request + '\n'
        
       t@@ -321,7 +330,7 @@ class WalletSynchronizer(threading.Thread):
                    print "unknown protocol"
                    InterfaceClass = TcpStratumInterface
        
       -        self.interface = InterfaceClass(host, port)
       +        self.interface = InterfaceClass(host, port, self.wallet.debug_server)
                self.wallet.interface = self.interface
        
        
   DIR diff --git a/lib/wallet.py b/lib/wallet.py
       t@@ -277,6 +277,7 @@ class Wallet:
                self.receipts = {}           # signed URIs
                self.receipt = None          # next receipt
                self.addressbook = []        # outgoing addresses, for payments
       +        self.debug_server = False    # write server communication debug info to stdout
        
                # not saved
                self.tx_history = {}
       t@@ -638,6 +639,7 @@ class Wallet:
                    'prioritized_addresses':self.prioritized_addresses,
                    'expert_mode':self.expert_mode,
                    'gap_limit':self.gap_limit,
       +            'debug_server':self.debug_server,
                    }
                f = open(self.path,"w")
                f.write( repr(s) )
       t@@ -681,6 +683,7 @@ class Wallet:
                    self.prioritized_addresses = d.get('prioritized_addresses',[])
                    self.expert_mode = d.get('expert_mode',False)
                    self.gap_limit = d.get('gap_limit',5)
       +            self.debug_server = d.get('debug_server',True)
                except:
                    raise BaseException("cannot read wallet file")