35 lines
1.0 KiB
Python
35 lines
1.0 KiB
Python
from core import PasswordHasher, IntegrityChecker, CryptoManager, AuditLogger, AccountManager
|
|
from gui import MainWindow
|
|
|
|
|
|
class App:
|
|
"""
|
|
Класс точки входа для запуска менеджера учётных записей.
|
|
"""
|
|
|
|
def __init__(self):
|
|
self.db_file = None
|
|
self.hash_file = "data/accounts.db.hash"
|
|
self.log_file = "data/audit.log"
|
|
|
|
self.password_hasher = PasswordHasher()
|
|
self.integrity_checker = IntegrityChecker()
|
|
self.crypto_manager = CryptoManager()
|
|
self.audit_logger = AuditLogger(self.log_file)
|
|
self.account_manager = AccountManager(self.db_file)
|
|
|
|
self.gui = MainWindow(
|
|
account_manager=self.account_manager,
|
|
password_hasher=self.password_hasher,
|
|
audit_logger=self.audit_logger,
|
|
crypto_manager=self.crypto_manager,
|
|
integrity_checker=self.integrity_checker,
|
|
)
|
|
|
|
def run(self):
|
|
self.gui.run()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
App().run()
|