Merge pull request #4371 from haarts/remove-explicit-protocol-mentions

Remove explicit protocol mentions
This commit is contained in:
ThomasV 2018-05-18 10:08:36 +02:00 committed by GitHub
commit d538106caf
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 10 additions and 17 deletions

View file

@ -647,8 +647,7 @@ class Commands:
util.print_error('Got Response for %s' % address)
except BaseException as e:
util.print_error(str(e))
h = self.network.addr_to_scripthash(address)
self.network.send([('blockchain.scripthash.subscribe', [h])], callback)
self.network.subscribe_to_addresses([addr], callback)
return True
@command('wn')

View file

@ -625,13 +625,7 @@ class Network(util.DaemonThread):
# Response is now in canonical form
self.process_response(interface, response, callbacks)
def addr_to_scripthash(self, addr):
h = bitcoin.address_to_scripthash(addr)
if h not in self.h2addr:
self.h2addr[h] = addr
return h
def overload_cb(self, callback):
def map_scripthash_to_address(self, callback):
def cb2(x):
x2 = x.copy()
p = x2.pop('params')
@ -641,13 +635,15 @@ class Network(util.DaemonThread):
return cb2
def subscribe_to_addresses(self, addresses, callback):
hashes = [self.addr_to_scripthash(addr) for addr in addresses]
msgs = [('blockchain.scripthash.subscribe', [x]) for x in hashes]
self.send(msgs, self.overload_cb(callback))
hash2address = {bitcoin.address_to_scripthash(address): address for address in addresses}
self.h2addr.update(hash2address)
msgs = [('blockchain.scripthash.subscribe', [x]) for x in hash2address.keys()]
self.send(msgs, self.map_scripthash_to_address(callback))
def request_address_history(self, address, callback):
h = self.addr_to_scripthash(address)
self.send([('blockchain.scripthash.get_history', [h])], self.overload_cb(callback))
h = bitcoin.address_to_scripthash(address)
self.h2addr.update({h: address})
self.send([('blockchain.scripthash.get_history', [h])], self.map_scripthash_to_address(callback))
def send(self, messages, callback):
'''Messages is a list of (method, params) tuples'''

View file

@ -84,9 +84,7 @@ class WsClientThread(util.DaemonThread):
l = self.subscriptions.get(addr, [])
l.append((ws, amount))
self.subscriptions[addr] = l
h = self.network.addr_to_scripthash(addr)
self.network.send([('blockchain.scripthash.subscribe', [h])], self.response_queue.put)
self.network.subscribe_to_addresses([addr], self.response_queue.put)
def run(self):
threading.Thread(target=self.reading_thread).start()