1
0

new command: getrawtransaction

This commit is contained in:
thomasv
2013-09-15 11:19:48 +02:00
parent 41878dc5e0
commit b75f8d795a
5 changed files with 11 additions and 7 deletions

View File

@@ -53,6 +53,7 @@ register_command('getbalance', 0, 1, False, False, 'Return the balance
register_command('getaddressbalance', 1, 1, False, False, 'Return the balance of an address', 'getbalance <address>')
register_command('getaddresshistory', 1, 1, False, False, 'Return the transaction history of an address', 'getaddresshistory <address>')
register_command('getconfig', 1, 1, False, True, 'Return a configuration variable', 'getconfig <name>', config_options)
register_command('getrawtransaction', 1, 2, False, False, 'Retrieve a transaction', 'getrawtransaction <txhash> <height>')
register_command('getseed', 0, 0, True, True, 'Print the generation seed of your wallet.')
register_command('help', 0, 1, False, True, 'Prints this help')
register_command('history', 0, 0, False, False, 'Returns the transaction history of your wallet')
@@ -81,9 +82,9 @@ register_command('verifymessage', 3,-1, False, True, 'Verifies a signatu
class Commands:
def __init__(self, wallet, interface, callback = None):
def __init__(self, wallet, network, callback = None):
self.wallet = wallet
self.interface = interface
self.network = network
self._callback = callback
self.password = None
@@ -324,4 +325,8 @@ class Commands:
if options_syntax: print_msg("options:\n" + options_syntax)
return None
def getrawtransaction(self, tx_hash, height = 0):
height = int(height)
return self.network.retrieve_transaction(tx_hash, height)

View File

@@ -182,7 +182,8 @@ class Network(threading.Thread):
def retrieve_transaction(self, tx_hash, tx_height=0):
import transaction
r = self.interface.synchronous_get([ ('blockchain.transaction.get',[tx_hash, tx_height]) ])[0]
return transaction.Transaction(r)
if r:
return transaction.Transaction(r)
def parse_servers(self, result):

View File

@@ -35,7 +35,6 @@ class TxVerifier(threading.Thread):
self.blockchain = network.blockchain
self.interface = network.interface
self.transactions = {} # requested verifications (with height sent by the requestor)
#self.interface.register_channel('txverifier')
self.verified_tx = storage.get('verified_tx3',{}) # height, timestamp of verified transactions
self.merkle_roots = storage.get('merkle_roots',{}) # hashed by me
self.lock = threading.Lock()
@@ -92,7 +91,6 @@ class TxVerifier(threading.Thread):
def stop(self):
with self.lock: self.running = False
#self.interface.poke('verifier')
def is_running(self):
with self.lock: return self.running