diff options
author | Wojtek Kosior <koszko@koszko.org> | 2022-08-11 13:33:06 +0200 |
---|---|---|
committer | Wojtek Kosior <koszko@koszko.org> | 2022-08-11 13:33:06 +0200 |
commit | 67c58a14f4f356117f42fea368a32359496d46c4 (patch) | |
tree | bb8d1019dc4547a215404a40b60a031ca4f2e21d /src/hydrilla/proxy/state_impl/base.py | |
parent | 3f3ba519ae3c3346945928b21ab36f7238e5387e (diff) | |
download | haketilo-hydrilla-67c58a14f4f356117f42fea368a32359496d46c4.tar.gz haketilo-hydrilla-67c58a14f4f356117f42fea368a32359496d46c4.zip |
populate data structures based on payloads data loaded from sqlite db
Diffstat (limited to 'src/hydrilla/proxy/state_impl/base.py')
-rw-r--r-- | src/hydrilla/proxy/state_impl/base.py | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/src/hydrilla/proxy/state_impl/base.py b/src/hydrilla/proxy/state_impl/base.py index 788a93d..1ae08cb 100644 --- a/src/hydrilla/proxy/state_impl/base.py +++ b/src/hydrilla/proxy/state_impl/base.py @@ -51,9 +51,7 @@ from .. import policies PolicyTree = pattern_tree.PatternTree[policies.PolicyFactory] - -#PayloadsDataMap = Map[state.PayloadRef, state.PayloadData] -DataById = t.Mapping[str, state.PayloadData] +PayloadsData = t.Mapping[state.PayloadRef, state.PayloadData] # mypy needs to be corrected: # https://stackoverflow.com/questions/70999513/conflict-between-mix-ins-for-abstract-dataclasses/70999704#70999704 @@ -65,9 +63,8 @@ class HaketiloStateWithFields(state.HaketiloState): current_cursor: t.Optional[sqlite3.Cursor] = None #settings: state.HaketiloGlobalSettings - policy_tree: PolicyTree = PolicyTree() - #payloads_data: PayloadsDataMap = Map() - payloads_data: DataById = dc.field(default_factory=dict) + policy_tree: PolicyTree = PolicyTree() + payloads_data: PayloadsData = dc.field(default_factory=dict) lock: threading.RLock = dc.field(default_factory=threading.RLock) @@ -77,9 +74,7 @@ class HaketiloStateWithFields(state.HaketiloState): """....""" start_transaction = transaction and not self.connection.in_transaction - try: - self.lock.acquire() - + with self.lock: if self.current_cursor is not None: yield self.current_cursor return @@ -102,9 +97,7 @@ class HaketiloStateWithFields(state.HaketiloState): raise finally: self.current_cursor = None - finally: - self.lock.release() - def rebuild_structures(self, cursor: sqlite3.Cursor) -> None: + def recompute_payloads(self, cursor: sqlite3.Cursor) -> None: """....""" ... |