import logging import fee_schemas from lbrynet.metadata.StructuredDict import StructuredDict log = logging.getLogger(__name__) class FeeValidator(StructuredDict): def __init__(self, fee): self._versions = [ ('0.0.1', fee_schemas.VER_001, None) ] StructuredDict.__init__(self, fee, fee.get('ver', '0.0.1')) self.currency_symbol = self.keys()[0] self.amount = self._get_amount() self.address = self[self.currency_symbol]['address'] def _get_amount(self): amt = self[self.currency_symbol]['amount'] try: return float(amt) except TypeError: log.error('Failed to convert fee amount %s to float', amt) raise class LBCFeeValidator(StructuredDict): pass class BTCFeeValidator(StructuredDict): pass class USDFeeValidator(StructuredDict): pass