zbxcat/xcat/db.py

53 lines
1.2 KiB
Python
Raw Normal View History

import plyvel
2017-07-28 19:44:24 -07:00
from xcat.utils import *
import binascii
import sys
import json
db = plyvel.DB('/tmp/testdb', create_if_missing=True)
2017-07-28 20:45:46 -07:00
# Takes dict or obj, saves json str as bytes
2017-07-28 17:23:32 -07:00
def create(trade, tradeid):
2017-07-28 20:45:46 -07:00
if type(trade) == dict:
trade = json.dumps(trade)
else:
trade = trade.toJSON()
2017-07-28 17:23:32 -07:00
db.put(b(tradeid), b(trade))
# Uses the funding txid as the key to save trade
def createByFundtx(trade):
trade = trade.toJSON()
# # Save trade by initiating txid
jt = json.loads(trade)
txid = jt['sell']['fund_tx']
db.put(b(txid), b(trade))
def get(txid):
2017-07-28 19:44:24 -07:00
rawtrade = db.get(b(txid))
tradestr = x2s(b2x(rawtrade))
trade = instantiate(tradestr)
return trade
# db.delete(b'hello')
2017-07-28 19:44:24 -07:00
# testtrade = get('test')
# testtrade = instantiate(testtrade)
# print(testtrade)
# hexstr = get(txid)
# print(x2s(hexstr))
2017-07-28 19:44:24 -07:00
def print_entries():
it = db.iterator()
with db.iterator() as it:
for k, v in it:
j = json.loads(x2s(b2x(v)))
2017-07-28 17:23:32 -07:00
print("Key:", k)
print('val: ', j)
2017-07-28 17:23:32 -07:00
# print('sell: ', j['sell'])
# print_entries()
2017-07-24 13:40:10 -07:00
# txid = '1171aeda64eff388b3568fa4675d0ca78852911109bbe42e0ef11ad6bf1b159e'
# entry = db.get(b(txid))
# print(entry)
# print(it.next())