usawa

Unnamed repository; edit this file 'description' to name the repository.
Info | Log | Files | Refs | Submodules | LICENSE

commit d57ce2a5b91a9606fb383fa13413469c12381b64
parent 888bd804f949b8965051e911dda27262aa18dd7f
Author: lash <dev@holbrook.no>
Date:   Sun, 16 Nov 2025 16:05:48 +0000

Remove useless state object

Diffstat:
Mdummy/svcontas/__init__.py | 2+-
Mdummy/svcontas/ledger.py | 18++++++++++++------
Ddummy/svcontas/state.py | 39---------------------------------------
3 files changed, 13 insertions(+), 46 deletions(-)

diff --git a/dummy/svcontas/__init__.py b/dummy/svcontas/__init__.py @@ -3,7 +3,7 @@ from lxml import etree from .ledger import Ledger from .entry import Entry, EntryPart from .crypto import DemoWallet, ACL -from .state import State +#from .state import State from .xml import nsmap from .unit import UnitIndex diff --git a/dummy/svcontas/ledger.py b/dummy/svcontas/ledger.py @@ -5,7 +5,7 @@ import lxml from .crypto import DemoWallet from .xml import nsmap, XML_FORMAT_VERSION -from .state import State +#from .state import State from .constant import NSPREFIX, DEFAULTPARENT from .entry import Entry @@ -81,8 +81,10 @@ class Ledger: self.tree = tree if self.tree == None: self.reset() - self.state = State() - self.state.poke(serial, base) + #self.state = State() + #self.state.poke(serial, base) + self.serial = serial + self.base = base self.acl = acl self.last = 0 @@ -189,7 +191,9 @@ class Ledger: except KeyError: self.entries[entry.serial] = [] #entries = self.entries[entry.serial] - self.state.poke(entry.serial, entry.sum()) + #self.state.poke(entry.serial, entry.sum()) + self.state = entry.serial + self.base = entry.sum() self.entries[entry.serial].append(entry) self.running[entry.unit].apply_entry(entry) if self.tree != None and modify_tree: @@ -234,7 +238,8 @@ class Ledger: def apply_tree(self, tree): - start = self.state.serial + #start = self.state.serial + start = self.serial self.last = 0 for v in tree.iter(NSPREFIX + 'entry'): logg.debug('processing entry {}'.format(v)) @@ -257,4 +262,5 @@ class Ledger: def __str__(self): - return "state: " + self.state.base.hex() + #return "state: " + self.state.base.hex() + return "state: " + self.base.hex() diff --git a/dummy/svcontas/state.py b/dummy/svcontas/state.py @@ -1,39 +0,0 @@ -import logging - -from .constant import DEFAULTPARENT - -logg = logging.getLogger('svcontas.state') - - -class State: - - def __init__(self): - self.serial = 0 - self.base = DEFAULTPARENT - - - def poke(self, serial, base): - if serial > self.serial: - logg.debug('new latest state {} {}'.format(serial, base.hex())) - self.serial = serial - self.base = base - return self.serial - - - def save(self): - f = open('.state', 'wb') - b = self.serial.to_bytes(8, byteorder='big') - f.write(b) - f.close() - return self.serial - - - def load(self): - try: - f = open('.state', 'rb') - except FileNotFoundError: - return self.save() - b = f.read(8) - f.close() - self.serial = int.from_bytes(b, byteorder='big') - return self.serial