mirror of
https://github.com/Team-Resurgent/Repackinator.git
synced 2026-08-15 02:18:07 -07:00
53 lines
1.3 KiB
C#
53 lines
1.3 KiB
C#
namespace Repackinator.Core.Logging
|
|
{
|
|
public enum LogMessageLevel
|
|
{
|
|
None,
|
|
Info,
|
|
Completed,
|
|
Skipped,
|
|
Warning,
|
|
NotFound,
|
|
Error,
|
|
Done
|
|
}
|
|
|
|
public class LogMessage
|
|
{
|
|
public DateTime Time { get; set; }
|
|
|
|
public string LogLevel => Level switch
|
|
{
|
|
LogMessageLevel.None => "None",
|
|
LogMessageLevel.Info => "Info",
|
|
LogMessageLevel.Completed => "Completed",
|
|
LogMessageLevel.Skipped => "Skipped",
|
|
LogMessageLevel.Warning => "Warning",
|
|
LogMessageLevel.NotFound => "NotFound",
|
|
LogMessageLevel.Error => "Error",
|
|
LogMessageLevel.Done => "Done",
|
|
_ => $"UNKNOWN({Level.ToString()})"
|
|
};
|
|
|
|
public LogMessageLevel Level { get; set; }
|
|
|
|
public string Message { get; set; } = string.Empty;
|
|
|
|
public string ToLogFormat(string timeFormat = "HH:mm:ss")
|
|
{
|
|
if (Level == LogMessageLevel.None)
|
|
{
|
|
return "\n";
|
|
}
|
|
return $"{Time.ToString(timeFormat)} {LogLevel} - {Message}\n";
|
|
}
|
|
|
|
public LogMessage(LogMessageLevel level, string message)
|
|
{
|
|
Time = DateTime.Now;
|
|
Level = level;
|
|
Message = message;
|
|
}
|
|
}
|
|
}
|