diff --git a/aula141/log.py b/aula141/log.py index 1ef88ff..854fe2e 100644 --- a/aula141/log.py +++ b/aula141/log.py @@ -1,5 +1,10 @@ # Abstração # Herança - é um +from pathlib import Path + +LOG_FILE = Path(__file__).parent / 'log.txt' + + class Log: def _log(self, msg): raise NotImplementedError('Implemente o método log') @@ -13,7 +18,11 @@ class Log: class LogFileMixin(Log): def _log(self, msg): - print(msg) + msg_fomatada = f'{msg} ({self.__class__.__name__})' + print('Salvando no log:', msg_fomatada) + with open(LOG_FILE, 'a') as arquivo: + arquivo.write(msg_fomatada) + arquivo.write('\n') class LogPrintMixin(Log): @@ -22,6 +31,9 @@ class LogPrintMixin(Log): if __name__ == '__main__': - l = LogPrintMixin() - l.log_error('qualquer coisa') - l.log_success('Que legal') + lp = LogPrintMixin() + lp.log_error('qualquer coisa') + lp.log_success('Que legal') + lf = LogFileMixin() + lf.log_error('qualquer coisa') + lf.log_success('Que legal') diff --git a/aula141/log.txt b/aula141/log.txt new file mode 100644 index 0000000..f7144c9 --- /dev/null +++ b/aula141/log.txt @@ -0,0 +1,7 @@ +Success: Que legal (LogFileMixin) +Error: qualquer coisa (LogFileMixin) +Success: Que legal (LogFileMixin) +Error: qualquer coisa (LogFileMixin) +Success: Que legal (LogFileMixin) +Error: qualquer coisa (LogFileMixin) +Success: Que legal (LogFileMixin) diff --git a/aula141/main.py b/aula141/main.py index 4e7964e..07ffe2d 100644 --- a/aula141/main.py +++ b/aula141/main.py @@ -1 +1 @@ -from log import Log +from log import LogFileMixin, LogPrintMixin