Skip to content
Snippets Groups Projects
Commit 773e15cb authored by Moul's avatar Moul
Browse files

[mod] #397: Get rid of BlockchainParams() singleton

parent 8c9eed37
No related branches found
No related tags found
No related merge requests found
...@@ -18,22 +18,6 @@ from duniterpy.api.bma import blockchain ...@@ -18,22 +18,6 @@ from duniterpy.api.bma import blockchain
from silkaj.network_tools import ClientInstance from silkaj.network_tools import ClientInstance
class BlockchainParams:
__instance = None
def __new__(cls):
if BlockchainParams.__instance is None:
BlockchainParams.__instance = object.__new__(cls)
return BlockchainParams.__instance
def __init__(self):
self.params = self.get_params()
def get_params(self):
client = ClientInstance().client
return client(blockchain.parameters)
class HeadBlock: class HeadBlock:
__instance = None __instance = None
......
...@@ -24,7 +24,7 @@ from tabulate import tabulate ...@@ -24,7 +24,7 @@ from tabulate import tabulate
from silkaj import tui, wot from silkaj import tui, wot
from silkaj import wot_tools as wt from silkaj import wot_tools as wt
from silkaj.auth import auth_method from silkaj.auth import auth_method
from silkaj.blockchain_tools import BlockchainParams, HeadBlock from silkaj.blockchain_tools import HeadBlock
from silkaj.constants import ALL, DATE, SUCCESS_EXIT_STATUS from silkaj.constants import ALL, DATE, SUCCESS_EXIT_STATUS
from silkaj.crypto_tools import is_pubkey_and_check from silkaj.crypto_tools import is_pubkey_and_check
from silkaj.license import license_approval from silkaj.license import license_approval
...@@ -89,11 +89,12 @@ def pre_checks(client, issuer_pubkey, pubkey_to_certify): ...@@ -89,11 +89,12 @@ def pre_checks(client, issuer_pubkey, pubkey_to_certify):
sys.exit("You can’t certify yourself!") sys.exit("You can’t certify yourself!")
# Check if the certification can be renewed # Check if the certification can be renewed
client = ClientInstance().client
params = client(bma.blockchain.parameters)
req = client(bma.wot.requirements, pubkey_to_certify) req = client(bma.wot.requirements, pubkey_to_certify)
req = req["identities"][0] req = req["identities"][0]
for cert in req["certifications"]: for cert in req["certifications"]:
if cert["from"] == issuer_pubkey: if cert["from"] == issuer_pubkey:
params = BlockchainParams().params
# Ğ1: 0<–>2y - 2y + 2m # Ğ1: 0<–>2y - 2y + 2m
# ĞT: 0<–>4.8m - 4.8m + 12.5d # ĞT: 0<–>4.8m - 4.8m + 12.5d
renewable = cert["expiresIn"] - params["sigValidity"] + params["sigReplay"] renewable = cert["expiresIn"] - params["sigValidity"] + params["sigReplay"]
...@@ -128,7 +129,7 @@ def certification_confirmation( ...@@ -128,7 +129,7 @@ def certification_confirmation(
tui.display_pubkey_and_checksum(pubkey_to_certify), tui.display_pubkey_and_checksum(pubkey_to_certify),
] ]
) )
params = BlockchainParams().params params = client(bma.blockchain.parameters)
cert_begins = now().format(DATE) cert_begins = now().format(DATE)
cert_ends = now().add(seconds=params["sigValidity"]).format(DATE) cert_ends = now().add(seconds=params["sigValidity"]).format(DATE)
cert.append(["Valid", cert_begins, "—>", cert_ends]) cert.append(["Valid", cert_begins, "—>", cert_ends])
......
...@@ -23,7 +23,7 @@ from duniterpy.documents import BlockID, Membership, get_block_id ...@@ -23,7 +23,7 @@ from duniterpy.documents import BlockID, Membership, get_block_id
from tabulate import tabulate from tabulate import tabulate
from silkaj import auth, tui, wot from silkaj import auth, tui, wot
from silkaj.blockchain_tools import BlockchainParams, HeadBlock from silkaj.blockchain_tools import HeadBlock
from silkaj.constants import DATE, SUCCESS_EXIT_STATUS from silkaj.constants import DATE, SUCCESS_EXIT_STATUS
from silkaj.license import license_approval from silkaj.license import license_approval
from silkaj.network_tools import ClientInstance, send_document from silkaj.network_tools import ClientInstance, send_document
...@@ -126,7 +126,7 @@ def display_confirmation_table(identity_uid, pubkey, identity_block_id): ...@@ -126,7 +126,7 @@ def display_confirmation_table(identity_uid, pubkey, identity_block_id):
date_idty_pub = pendulum.from_timestamp(block["time"], tz="local").format(DATE) date_idty_pub = pendulum.from_timestamp(block["time"], tz="local").format(DATE)
table.append(["Identity published", date_idty_pub]) table.append(["Identity published", date_idty_pub])
params = BlockchainParams().params params = client(bma.blockchain.parameters)
membership_validity = ( membership_validity = (
pendulum.now().add(seconds=params["msValidity"]).diff_for_humans() pendulum.now().add(seconds=params["msValidity"]).diff_for_humans()
) )
......
...@@ -15,8 +15,10 @@ ...@@ -15,8 +15,10 @@
from sys import exit from sys import exit
from silkaj.blockchain_tools import BlockchainParams from duniterpy.api.bma import blockchain
from silkaj.constants import FAILURE_EXIT_STATUS, G1_SYMBOL, GTEST_SYMBOL from silkaj.constants import FAILURE_EXIT_STATUS, G1_SYMBOL, GTEST_SYMBOL
from silkaj.network_tools import ClientInstance
class CurrencySymbol: class CurrencySymbol:
...@@ -31,7 +33,8 @@ class CurrencySymbol: ...@@ -31,7 +33,8 @@ class CurrencySymbol:
self.symbol = self.get_symbol() self.symbol = self.get_symbol()
def get_symbol(self): def get_symbol(self):
params = BlockchainParams().params client = ClientInstance().client
params = client(blockchain.parameters)
if params["currency"] == "g1": if params["currency"] == "g1":
return G1_SYMBOL return G1_SYMBOL
elif params["currency"] == "g1-test": elif params["currency"] == "g1-test":
......
...@@ -23,7 +23,6 @@ from pendulum import from_timestamp, now ...@@ -23,7 +23,6 @@ from pendulum import from_timestamp, now
from tabulate import tabulate from tabulate import tabulate
from silkaj import wot_tools as wt from silkaj import wot_tools as wt
from silkaj.blockchain_tools import BlockchainParams
from silkaj.constants import DATE from silkaj.constants import DATE
from silkaj.crypto_tools import is_pubkey_and_check from silkaj.crypto_tools import is_pubkey_and_check
from silkaj.network_tools import ClientInstance, exit_on_http_error from silkaj.network_tools import ClientInstance, exit_on_http_error
...@@ -66,7 +65,7 @@ def received_sent_certifications(uid_pubkey): ...@@ -66,7 +65,7 @@ def received_sent_certifications(uid_pubkey):
identity, pubkey, signed = choose_identity(uid_pubkey) identity, pubkey, signed = choose_identity(uid_pubkey)
certifications = OrderedDict() certifications = OrderedDict()
params = BlockchainParams().params params = client(blockchain.parameters)
requirements = client(wot.requirements, pubkey) requirements = client(wot.requirements, pubkey)
for req in requirements["identities"]: for req in requirements["identities"]:
if req["pubkey"] == pubkey: if req["pubkey"] == pubkey:
...@@ -107,7 +106,8 @@ def cert_written_in_the_blockchain(written_certs, certifieur): ...@@ -107,7 +106,8 @@ def cert_written_in_the_blockchain(written_certs, certifieur):
def membership_status(certifications, pubkey, req): def membership_status(certifications, pubkey, req):
params = BlockchainParams().params client = ClientInstance().client
params = client(blockchain.parameters)
if len(certifications["received"]) >= params["sigQty"]: if len(certifications["received"]) >= params["sigQty"]:
date = certifications["received_expire"][ date = certifications["received_expire"][
len(certifications["received"]) - params["sigQty"] len(certifications["received"]) - params["sigQty"]
......
...@@ -36,7 +36,7 @@ from patched.wot import ( ...@@ -36,7 +36,7 @@ from patched.wot import (
patched_wot_requirements_one_pending, patched_wot_requirements_one_pending,
) )
from silkaj import auth, membership, wot from silkaj import auth, membership, wot
from silkaj.blockchain_tools import BlockchainParams, HeadBlock from silkaj.blockchain_tools import HeadBlock
from silkaj.cli import cli from silkaj.cli import cli
from silkaj.constants import DATE, FAILURE_EXIT_STATUS, SUCCESS_EXIT_STATUS from silkaj.constants import DATE, FAILURE_EXIT_STATUS, SUCCESS_EXIT_STATUS
from silkaj.network_tools import ClientInstance from silkaj.network_tools import ClientInstance
...@@ -171,7 +171,7 @@ def test_display_confirmation_table(patched_wot_requirements, monkeypatch, capsy ...@@ -171,7 +171,7 @@ def test_display_confirmation_table(patched_wot_requirements, monkeypatch, capsy
["Identity published", date_idty_pub], ["Identity published", date_idty_pub],
) )
params = BlockchainParams().params params = client(bma.blockchain.parameters)
membership_validity = ( membership_validity = (
pendulum.now().add(seconds=params["msValidity"]).diff_for_humans() pendulum.now().add(seconds=params["msValidity"]).diff_for_humans()
) )
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment