added support for v2.0 transaction to DB writing/reading

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>
This commit is contained in:
Jürgen Eckel 2023-01-16 09:58:08 +01:00
parent 2f09eec368
commit 77c12d0b0e
No known key found for this signature in database
2 changed files with 7 additions and 3 deletions

View File

@ -39,7 +39,7 @@ class DbTransaction:
operation=transaction[1],
version=transaction[2],
metadata=MetaData.from_dict(transaction[3]),
assets=Asset.from_list_dict(transaction[4]),
assets=Asset.from_list_dict(transaction[4]) if transaction[2] != "2.0" else Asset.from_dict(transaction[4][0]),
inputs=Input.from_list_dict(transaction[5]),
script=Script.from_dict(transaction[6]),
)
@ -66,7 +66,7 @@ class DbTransaction:
"outputs": Output.list_to_dict(self.outputs),
"operation": self.operation,
"metadata": self.metadata.to_dict() if self.metadata is not None else None,
"assets": Asset.list_to_dict(self.assets),
"assets": Asset.list_to_dict(self.assets) if self.version!="2.0" else Asset.to_dict(self.assets),
"version": self.version,
"id": self.id,
"script": self.script.to_dict() if self.script is not None else None,

View File

@ -129,12 +129,16 @@ def store_transaction(connection, transaction, table = TARANT_TABLE_TRANSACTION)
if TARANT_TABLE_SCRIPT in transaction:
scripts = transaction[TARANT_TABLE_SCRIPT]
asset_obj = Transaction.get_assets_tag(transaction["version"])
if( transaction["version"] == "2.0"):
asset_array = [ transaction[asset_obj] ]
else:
asset_array = transaction[asset_obj]
tx = (
transaction["id"],
transaction["operation"],
transaction["version"],
transaction["metadata"],
transaction[asset_obj],
asset_array,
transaction["inputs"],
scripts,
)