Merge remote-tracking branch 'origin/main'
# Conflicts: # app/class_media_file_stat.py
This commit is contained in:
commit
8816751be6
3 changed files with 27 additions and 7 deletions
|
|
@ -1,27 +1,47 @@
|
||||||
import logging
|
import logging
|
||||||
|
from typing import TYPE_CHECKING
|
||||||
|
|
||||||
import yaml
|
import yaml
|
||||||
import os
|
import os
|
||||||
|
|
||||||
|
if TYPE_CHECKING:
|
||||||
|
from app.class_media_file import Media
|
||||||
|
|
||||||
class Stat:
|
class Stat:
|
||||||
def __init__(self):
|
"""
|
||||||
|
Handles reading and writing video conversion statistics
|
||||||
|
"""
|
||||||
|
|
||||||
|
def __init__(self) -> None:
|
||||||
|
"""
|
||||||
|
Initialize Class with path for statistic file
|
||||||
|
"""
|
||||||
self.path = "app/cfg/statistic.yaml"
|
self.path = "app/cfg/statistic.yaml"
|
||||||
|
|
||||||
def save_stat(self, obj):
|
def save_stat(self, obj: "Media") -> None:
|
||||||
|
"""
|
||||||
|
Saves the statistic in YAML file
|
||||||
|
:param obj: Media object
|
||||||
|
:type obj: Media
|
||||||
|
"""
|
||||||
|
|
||||||
daten = self.read_stat()
|
daten = self.read_stat()
|
||||||
|
|
||||||
|
try:
|
||||||
# Neuen Eintrag hinzufügen
|
# Neuen Eintrag hinzufügen
|
||||||
daten["videos"].update(obj.to_dict_stat())
|
daten["videos"].update(obj.to_dict_stat())
|
||||||
|
|
||||||
# Datei mit aktualisierten Daten speichern
|
|
||||||
try:
|
|
||||||
with open(self.path, "w", encoding="utf8") as file:
|
with open(self.path, "w", encoding="utf8") as file:
|
||||||
yaml.dump(daten, file, default_flow_style=False, indent=4, allow_unicode=True)
|
yaml.dump(daten, file, default_flow_style=False, indent=4, allow_unicode=True)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.error(f"Save Stat Failure: {e}")
|
logging.error(f"Save Stat Failure: {e}")
|
||||||
|
|
||||||
def read_stat(self):
|
def read_stat(self) -> Dict[str, any]:
|
||||||
|
"""
|
||||||
|
Read statistic from YAML file
|
||||||
|
:return: Dictionary width statistics
|
||||||
|
:rtype: Dict[str, any]
|
||||||
|
"""
|
||||||
# Bestehende Daten laden
|
# Bestehende Daten laden
|
||||||
if os.path.exists(self.path):
|
if os.path.exists(self.path):
|
||||||
with open(self.path, "r", encoding="utf8") as file:
|
with open(self.path, "r", encoding="utf8") as file:
|
||||||
|
|
|
||||||
0
client/icons/close-144.png
Normal file → Executable file
0
client/icons/close-144.png
Normal file → Executable file
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
0
client/icons/stat-100.png
Normal file → Executable file
0
client/icons/stat-100.png
Normal file → Executable file
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
Loading…
Reference in a new issue