feat: Initialize URLNotesGrabberCORE project with core application structure, data access, and configuration.
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
|
||||
namespace URLNotesGrabberCORE
|
||||
{
|
||||
public class DualLogger : TextWriter
|
||||
{
|
||||
private TextWriter _consoleWriter;
|
||||
private TextWriter _fileWriter;
|
||||
|
||||
public DualLogger(TextWriter consoleWriter, TextWriter fileWriter)
|
||||
{
|
||||
_consoleWriter = consoleWriter;
|
||||
_fileWriter = fileWriter;
|
||||
}
|
||||
|
||||
public override Encoding Encoding => _consoleWriter.Encoding;
|
||||
|
||||
public override void Write(char value)
|
||||
{
|
||||
_consoleWriter.Write(value);
|
||||
_fileWriter.Write(value);
|
||||
}
|
||||
|
||||
public override void Write(string value)
|
||||
{
|
||||
_consoleWriter.Write(value);
|
||||
_fileWriter.Write(value);
|
||||
}
|
||||
|
||||
public override void WriteLine(string value)
|
||||
{
|
||||
_consoleWriter.WriteLine(value);
|
||||
_fileWriter.WriteLine(value);
|
||||
}
|
||||
|
||||
public override void Flush()
|
||||
{
|
||||
_consoleWriter.Flush();
|
||||
_fileWriter.Flush();
|
||||
}
|
||||
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
_fileWriter.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user