Implemented to lib.py, functions from converted.py

This commit is contained in:
andrei 2022-06-23 13:49:18 +03:00
parent eaac0845d7
commit e65a773bae

View File

@ -22,6 +22,7 @@ except ImportError:
import requests import requests
import planetmint import planetmint
from copy import deepcopy
from planetmint.config import Config from planetmint.config import Config
from planetmint import backend, config_utils, fastquery from planetmint import backend, config_utils, fastquery
from planetmint.models import Transaction from planetmint.models import Transaction
@ -128,24 +129,30 @@ class Planetmint(object):
txns = [] txns = []
assets = [] assets = []
txn_metadatas = [] txn_metadatas = []
for t in transactions: for t in transactions:
transaction = t.tx_dict if t.tx_dict else rapidjson.loads(rapidjson.dumps(t.to_dict())) transaction = t.tx_dict if t.tx_dict else rapidjson.loads(rapidjson.dumps(t.to_dict()))
asset = transaction.pop('asset') asset = transaction.pop('asset')
asset_id = transaction['id']
if transaction['operation'] != t.CREATE:
asset_id = asset['id']
assets.append((asset,
transaction['id'],
asset_id))
metadata = transaction.pop('metadata') metadata = transaction.pop('metadata')
txn_metadatas.append({'id': transaction['id'],
'metadata': metadata}) asset = backend.convert.prepare_asset(self.connection,
transaction_type=transaction["operation"],
transaction_id=transaction["id"],
filter_operation=t.CREATE,
asset=asset)
metadata = backend.convert.prepare_metadata(self.connection,
transaction_id=transaction["id"],
metadata=metadata)
txn_metadatas.append(metadata)
assets.append(asset)
txns.append(transaction) txns.append(transaction)
backend.query.store_metadatas(self.connection, txn_metadatas) backend.query.store_metadatas(self.connection, txn_metadatas)
backend.query.store_assets(self.connection, assets) if assets:
backend.query.store_assets(self.connection, assets)
return backend.query.store_transactions(self.connection, txns) return backend.query.store_transactions(self.connection, txns)
def delete_transactions(self, txs): def delete_transactions(self, txs):
@ -511,5 +518,4 @@ class Planetmint(object):
return backend.query.delete_elections(self.connection, height) return backend.query.delete_elections(self.connection, height)
Block = namedtuple('Block', ('app_hash', 'height', 'transactions')) Block = namedtuple('Block', ('app_hash', 'height', 'transactions'))