37 lines
1.3 KiB
C#
37 lines
1.3 KiB
C#
using System.Text.Json;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace WinLog.Models;
|
|
|
|
public class AppSettings
|
|
{
|
|
|
|
public string DateFormat { init; get; }
|
|
public string Directory { init; get; }
|
|
public string LogFilter { init; get; }
|
|
public string[] MessageFilters { init; get; }
|
|
public string MonitorApplicationResource { init; get; }
|
|
public string MonitorApplicationSite { init; get; }
|
|
public int MillisecondsDelay { init; get; }
|
|
public int RollingMinutes { init; get; }
|
|
|
|
[JsonConstructor]
|
|
public AppSettings(string dateFormat, string directory, string logFilter, string[] messageFilters, string monitorApplicationResource, string monitorApplicationSite, int millisecondsDelay, int rollingMinutes)
|
|
{
|
|
Directory = directory;
|
|
LogFilter = logFilter;
|
|
DateFormat = dateFormat;
|
|
MessageFilters = messageFilters;
|
|
MonitorApplicationResource = monitorApplicationResource;
|
|
MonitorApplicationSite = monitorApplicationSite;
|
|
MillisecondsDelay = millisecondsDelay;
|
|
RollingMinutes = rollingMinutes;
|
|
}
|
|
|
|
public override string ToString()
|
|
{
|
|
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
|
return result;
|
|
}
|
|
|
|
} |