Files
Marble-shell-theme/scripts/utils/logger/logger.py
Vladyslav Hroshev 9bb229df7d Completely refactored gresource to correspond SOLID principles
- Create logger interface and updated its usage by console.py
2025-04-06 17:02:49 +03:00

36 lines
704 B
Python

from abc import ABC, abstractmethod
from typing import Optional
class LoggerFactory(ABC):
@staticmethod
@abstractmethod
def create_logger(name: Optional[str] = None) -> 'Logger':
"""
Create a logger instance with the given name.
:param name: Name of the logger.
:return: Logger instance.
"""
pass
class Logger(ABC):
@abstractmethod
def update(self, message: str):
pass
@abstractmethod
def success(self, message):
pass
@abstractmethod
def error(self, message):
pass
@abstractmethod
def warn(self, message):
pass
@abstractmethod
def info(self, message):
pass