From 317b41e08d94f471323eca2b40ad9ec5dd20f1a8 Mon Sep 17 00:00:00 2001 From: vtexier <vit@free.fr> Date: Thu, 2 Apr 2020 10:55:59 +0200 Subject: [PATCH] [enh] source type "D" and "T" now as Source entity constants --- src/sakia/data/entities/source.py | 4 ++++ src/sakia/data/processors/dividends.py | 4 ++-- src/sakia/services/documents.py | 2 +- src/sakia/services/sources.py | 6 +++--- src/sakia/services/transactions.py | 6 +++--- 5 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/sakia/data/entities/source.py b/src/sakia/data/entities/source.py index de6e4bf7..540bf7a5 100644 --- a/src/sakia/data/entities/source.py +++ b/src/sakia/data/entities/source.py @@ -3,6 +3,10 @@ import attr @attr.s(hash=True) class Source: + + TYPE_TRANSACTION = "T" + TYPE_DIVIDEND = "D" + currency = attr.ib(converter=str) pubkey = attr.ib(converter=str) identifier = attr.ib(converter=str) diff --git a/src/sakia/data/processors/dividends.py b/src/sakia/data/processors/dividends.py index 138914ec..fdf16a5b 100644 --- a/src/sakia/data/processors/dividends.py +++ b/src/sakia/data/processors/dividends.py @@ -1,6 +1,6 @@ import attr import logging -from ..entities import Dividend +from ..entities import Dividend, Source from .nodes import NodesProcessor from ..connectors import BmaConnector from duniterpy.api import bma @@ -82,7 +82,7 @@ class DividendsProcessor: txdoc = Transaction.from_signed_raw(tx.raw) for input in txdoc.inputs: if ( - input.source == "D" + input.source == Source.TYPE_DIVIDEND and input.origin_id == connection.pubkey and input.index not in block_numbers and input.index > start diff --git a/src/sakia/services/documents.py b/src/sakia/services/documents.py index b9011c80..16182f8a 100644 --- a/src/sakia/services/documents.py +++ b/src/sakia/services/documents.py @@ -473,7 +473,7 @@ class DocumentsService: currency=currency, pubkey=pubkey, identifier=txdoc.sha_hash, - type="T", + type=Source.TYPE_TRANSACTION, noffset=offset, amount=output.amount, base=output.base, diff --git a/src/sakia/services/sources.py b/src/sakia/services/sources.py index 7e5a8a32..d1c5984e 100644 --- a/src/sakia/services/sources.py +++ b/src/sakia/services/sources.py @@ -74,7 +74,7 @@ class SourcesServices(QObject): currency=self.currency, pubkey=pubkey, identifier=txdoc.sha_hash, - type="T", + type=Source.TYPE_TRANSACTION, noffset=offset, amount=output.amount, base=output.base, @@ -117,7 +117,7 @@ class SourcesServices(QObject): currency=self.currency, pubkey=pubkey, identifier=pubkey, - type="D", + type=Source.TYPE_DIVIDEND, noffset=dividend.block_number, amount=dividend.amount, base=dividend.base, @@ -218,7 +218,7 @@ class SourcesServices(QObject): currency=self.currency, pubkey=pubkey, identifier=txdoc.sha_hash, - type="T", + type=Source.TYPE_TRANSACTION, noffset=offset, amount=output.amount, base=output.base, diff --git a/src/sakia/services/transactions.py b/src/sakia/services/transactions.py index 3690cb73..b525a97e 100644 --- a/src/sakia/services/transactions.py +++ b/src/sakia/services/transactions.py @@ -8,7 +8,7 @@ from sakia.data.entities.transaction import ( ) from duniterpy.documents import Transaction as TransactionDoc from duniterpy.documents import SimpleTransaction, Block -from sakia.data.entities import Dividend +from sakia.data.entities import Dividend, Source from duniterpy.api import bma import logging @@ -179,7 +179,7 @@ class TransactionsService(QObject): for input in txdoc.inputs: # For each dividends inputs, if it is consumed (not present in ud history) if ( - input.source == "D" + input.source == Source.TYPE_DIVIDEND and input.origin_id == connection.pubkey and input.index not in block_numbers ): @@ -292,7 +292,7 @@ class TransactionsService(QObject): for input in txdoc.inputs: # For each dividends inputs, if it is consumed (not present in ud history) if ( - input.source == "D" + input.source == Source.TYPE_DIVIDEND and input.origin_id == pubkey and input.index not in block_numbers ): -- GitLab