]> git.mxchange.org Git - fba.git/commitdiff
Continued:
authorRoland Häder <roland@mxchange.org>
Mon, 21 Apr 2025 01:38:03 +0000 (03:38 +0200)
committerRoland Häder <roland@mxchange.org>
Mon, 21 Apr 2025 01:38:03 +0000 (03:38 +0200)
- renamed `_set_data()` to `_set_pending_data()`

fba/models/instances.py

index 3ac2cac68d46a9d292104e1aeb8fec99d58c3919..06e3283480360fb17d5b64d60bab27b08da6b3a3 100644 (file)
@@ -77,14 +77,15 @@ _pending = {
     "software"           : {},
 }
 
-# "Cached" configuration values
+# "Cached" configuration values to avoid get() invocations (relatively
+# "expensive")
 _config = {
     "recheck_block"   : config.get("recheck_block"),
     "recheck_instance": config.get("recheck_instance"),
     "write_error_log" : config.get("write_error_log"),
 }
 
-def _set_data(key: str, domain: str, value: any) -> None:
+def _set_pending_data(key: str, domain: str, value: any) -> None:
     logger.debug("key='%s',domain='%s',value[]='%s' - CALLED!", key, domain, type(value))
     domain_helper.raise_on(domain)
 
@@ -258,7 +259,7 @@ def set_last_nodeinfo(domain: str) -> None:
     domain_helper.raise_on(domain)
 
     logger.debug("Updating last_nodeinfo for domain='%s'", domain)
-    _set_data("last_nodeinfo", domain, time.time())
+    _set_pending_data("last_nodeinfo", domain, time.time())
 
     logger.debug("EXIT!")
 
@@ -275,34 +276,34 @@ def set_last_error(domain: str, error: any) -> None:
 
     if isinstance(error, str):
         logger.debug("Setting last_error_details='%s' (str)", error)
-        _set_data("last_status_code"  , domain, 999)
-        _set_data("last_error_details", domain, error if error != "" else None)
+        _set_pending_data("last_status_code"  , domain, 999)
+        _set_pending_data("last_error_details", domain, error if error != "" else None)
     elif isinstance(error, requests.models.Response):
         logger.debug("Setting last_error_details='%s' (Response)", error.reason)
-        _set_data("last_status_code"  , domain, error.status_code)
-        _set_data("last_error_details", domain, error.reason if error.reason != "" else None)
+        _set_pending_data("last_status_code"  , domain, error.status_code)
+        _set_pending_data("last_error_details", domain, error.reason if error.reason != "" else None)
     elif not isinstance(error, dict):
         raise TypeError(f"Cannot handle keys in error[{type(error)}]='{error}'")
     elif "status_code" in error and "error_message" in error:
         logger.debug("Setting last_error_details='%s' (error_message)", error['error_message'])
-        _set_data("last_status_code"  , domain, error["status_code"])
-        _set_data("last_error_details", domain, error["error_message"] if error["error_message"] != "" else None)
+        _set_pending_data("last_status_code"  , domain, error["status_code"])
+        _set_pending_data("last_error_details", domain, error["error_message"] if error["error_message"] != "" else None)
     elif "json" in error and "error" in error["json"] and "msg" in error["json"]:
         logger.debug("Setting last_error_details='%s' (json,error)", error["json"]["msg"])
-        _set_data("last_status_code"  , domain, error["status_code"])
-        _set_data("last_error_details", domain, error["json"]["msg"] if error["json"]["msg"] != "" else None)
+        _set_pending_data("last_status_code"  , domain, error["status_code"])
+        _set_pending_data("last_error_details", domain, error["json"]["msg"] if error["json"]["msg"] != "" else None)
     elif "json" in error and "error" in error["json"] and "error_message" in error["json"]:
         logger.debug("Setting last_error_details='%s' (json,error)", error["json"]["error_message"])
-        _set_data("last_status_code"  , domain, error["status_code"])
-        _set_data("last_error_details", domain, error["json"]["error_message"] if error["json"]["error_message"] != "" else None)
+        _set_pending_data("last_status_code"  , domain, error["status_code"])
+        _set_pending_data("last_error_details", domain, error["json"]["error_message"] if error["json"]["error_message"] != "" else None)
     elif "json" in error and "error" in error["json"] and isinstance(error["json"]["error"], dict) and "message" in error["json"]["error"]:
         logger.debug("Setting last_error_details='%s' (json,error)", error["json"]["error"]["message"])
-        _set_data("last_status_code"  , domain, error["status_code"])
-        _set_data("last_error_details", domain, error["json"]["error"]["message"] if error["json"]["error"]["message"] != "" else None)
+        _set_pending_data("last_status_code"  , domain, error["status_code"])
+        _set_pending_data("last_error_details", domain, error["json"]["error"]["message"] if error["json"]["error"]["message"] != "" else None)
     elif "json" in error and "error" in error["json"]:
         logger.debug("Setting last_error_details='%s' (json,error)", error["json"]["error"])
-        _set_data("last_status_code"  , domain, error["status_code"])
-        _set_data("last_error_details", domain, error["json"]["error"] if error["json"]["error"] != "" else None)
+        _set_pending_data("last_status_code"  , domain, error["status_code"])
+        _set_pending_data("last_error_details", domain, error["json"]["error"] if error["json"]["error"] != "" else None)
 
     if _config["write_error_log"]:
         logger.debug("Invoking error_log.add(domain='%s',error[]='%s'", domain, type(error))
@@ -315,8 +316,8 @@ def set_success(domain: str) -> None:
     domain_helper.raise_on(domain)
 
     # Set both to success
-    _set_data("last_status_code"  , domain, 200)
-    _set_data("last_error_details", domain, None)
+    _set_pending_data("last_status_code"  , domain, 200)
+    _set_pending_data("last_error_details", domain, None)
 
     logger.debug("EXIT!")
 
@@ -429,7 +430,7 @@ def set_last_blocked(domain: str) -> None:
     domain_helper.raise_on(domain)
 
     # Set timestamp
-    _set_data("last_blocked", domain, time.time())
+    _set_pending_data("last_blocked", domain, time.time())
     logger.debug("EXIT!")
 
 def set_last_instance_fetch(domain: str) -> None:
@@ -437,7 +438,7 @@ def set_last_instance_fetch(domain: str) -> None:
     domain_helper.raise_on(domain)
 
     # Set timestamp
-    _set_data("last_instance_fetch", domain, time.time())
+    _set_pending_data("last_instance_fetch", domain, time.time())
     logger.debug("EXIT!")
 
 def set_last_response_time(domain: str, response_time: float) -> None:
@@ -450,7 +451,7 @@ def set_last_response_time(domain: str, response_time: float) -> None:
         raise ValueError(f"response_time={response_time} is below zero")
 
     # Set timestamp
-    _set_data("last_response_time", domain, response_time)
+    _set_pending_data("last_response_time", domain, response_time)
     logger.debug("EXIT!")
 
 def set_last_requested_path(domain: str, path: float) -> None:
@@ -465,7 +466,7 @@ def set_last_requested_path(domain: str, path: float) -> None:
         raise ValueError(f"path='{path}' does not start with '/'")
 
     # Set timestamp
-    _set_data("last_requested_path", domain, path)
+    _set_pending_data("last_requested_path", domain, path)
     logger.debug("EXIT!")
 
 def set_total_peers(domain: str, peers: list) -> None:
@@ -476,7 +477,7 @@ def set_total_peers(domain: str, peers: list) -> None:
         raise TypeError(f"Parameter peers[]='{type(peers)}' has not expected type 'list'")
 
     # Set timestamp
-    _set_data("total_peers", domain, len(peers))
+    _set_pending_data("total_peers", domain, len(peers))
     logger.debug("EXIT!")
 
 def set_total_blocks(domain: str, blocks: list) -> None:
@@ -487,7 +488,7 @@ def set_total_blocks(domain: str, blocks: list) -> None:
         raise TypeError(f"Parameter blocks[]='{type(blocks)}' has not expected type 'list'")
 
     # Set timestamp
-    _set_data("total_blocks", domain, len(blocks))
+    _set_pending_data("total_blocks", domain, len(blocks))
     logger.debug("EXIT!")
 
 def set_obfuscated_blocks(domain: str, obfuscated: int) -> None:
@@ -500,7 +501,7 @@ def set_obfuscated_blocks(domain: str, obfuscated: int) -> None:
         raise ValueError(f"Parameter obfuscated={obfuscated} is not valid")
 
     # Set timestamp
-    _set_data("obfuscated_blocks", domain, obfuscated)
+    _set_pending_data("obfuscated_blocks", domain, obfuscated)
     logger.debug("EXIT!")
 
 def set_nodeinfo_url(domain: str, url: str) -> None:
@@ -515,7 +516,7 @@ def set_nodeinfo_url(domain: str, url: str) -> None:
         raise ValueError(f"Parameter url='{url}' is not a valid URL")
 
     # Set timestamp
-    _set_data("nodeinfo_url", domain, url)
+    _set_pending_data("nodeinfo_url", domain, url)
     logger.debug("EXIT!")
 
 def set_detection_mode(domain: str, mode: str) -> None:
@@ -528,7 +529,7 @@ def set_detection_mode(domain: str, mode: str) -> None:
         raise ValueError("Parameter 'mode' is empty")
 
     # Set timestamp
-    _set_data("detection_mode", domain, mode)
+    _set_pending_data("detection_mode", domain, mode)
     logger.debug("EXIT!")
 
 def set_has_obfuscation(domain: str, has_obfuscation: bool) -> None:
@@ -539,7 +540,7 @@ def set_has_obfuscation(domain: str, has_obfuscation: bool) -> None:
         raise TypeError(f"Parameter has_obfuscation[]='{type(has_obfuscation)}' has not expected type 'bool'")
 
     # Set timestamp
-    _set_data("has_obfuscation", domain, has_obfuscation)
+    _set_pending_data("has_obfuscation", domain, has_obfuscation)
     logger.debug("EXIT!")
 
 def set_original_software(domain: str, software: str) -> None:
@@ -552,7 +553,7 @@ def set_original_software(domain: str, software: str) -> None:
         raise ValueError("Parameter 'software' is empty")
 
     # Set original software
-    _set_data("original_software", domain, software)
+    _set_pending_data("original_software", domain, software)
     logger.debug("EXIT!")
 
 def set_software(domain: str, software: str) -> None:
@@ -565,7 +566,7 @@ def set_software(domain: str, software: str) -> None:
         raise ValueError("Parameter 'software' is empty")
 
     # Set software (maybe aliased to generic name)
-    _set_data("software", domain, software)
+    _set_pending_data("software", domain, software)
     logger.debug("EXIT!")
 
 def valid(value: str, column: str) -> bool: