custom json encoder for transactions
This commit is contained in:
parent
72d7d0b07a
commit
f957837e21
|
@ -115,12 +115,12 @@ class Commands:
|
|||
i['index'] = i['vout']
|
||||
outputs = map(lambda x: (x[0],int(1e8*x[1])), outputs.items())
|
||||
tx = Transaction.from_io(inputs, outputs)
|
||||
return tx.as_dict()
|
||||
return tx
|
||||
|
||||
def signrawtransaction(self, raw_tx, input_info, private_keys):
|
||||
tx = Transaction(raw_tx)
|
||||
self.wallet.signrawtransaction(tx, input_info, private_keys, self.password)
|
||||
return tx.as_dict()
|
||||
return tx
|
||||
|
||||
def decoderawtransaction(self, raw):
|
||||
tx = Transaction(raw)
|
||||
|
@ -251,7 +251,7 @@ class Commands:
|
|||
|
||||
def mksendmanytx(self, outputs, fee = None, change_addr = None, domain = None):
|
||||
tx = self._mktx(outputs, fee, change_addr, domain)
|
||||
return tx.as_dict()
|
||||
return tx
|
||||
|
||||
|
||||
def payto(self, to_address, amount, fee = None, change_addr = None, domain = None):
|
||||
|
|
|
@ -379,10 +379,6 @@ class Transaction:
|
|||
self.input_info = None
|
||||
self.is_complete = True
|
||||
|
||||
|
||||
def __repr__(self):
|
||||
return "Transaction('"+self.raw+"')"
|
||||
|
||||
def __str__(self):
|
||||
return self.raw
|
||||
|
||||
|
|
13
lib/util.py
13
lib/util.py
|
@ -1,4 +1,4 @@
|
|||
import os, sys, re
|
||||
import os, sys, re, json
|
||||
import platform
|
||||
import shutil
|
||||
from datetime import datetime
|
||||
|
@ -6,6 +6,14 @@ is_verbose = True
|
|||
|
||||
|
||||
|
||||
class MyEncoder(json.JSONEncoder):
|
||||
def default(self, obj):
|
||||
from transaction import Transaction
|
||||
if isinstance(obj, Transaction):
|
||||
return obj.as_dict()
|
||||
return super(MyEncoder, self).default(obj)
|
||||
|
||||
|
||||
def set_verbosity(b):
|
||||
global is_verbose
|
||||
is_verbose = b
|
||||
|
@ -23,9 +31,8 @@ def print_msg(*args):
|
|||
sys.stdout.flush()
|
||||
|
||||
def print_json(obj):
|
||||
import json
|
||||
try:
|
||||
s = json.dumps(obj,sort_keys = True, indent = 4)
|
||||
s = json.dumps(obj, sort_keys = True, indent = 4, cls=MyEncoder)
|
||||
except TypeError:
|
||||
s = repr(obj)
|
||||
sys.stdout.write(s + "\n")
|
||||
|
|
Loading…
Reference in New Issue