using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Tango.Logging { public class SimpleStringLogger : ILogger { private bool _enabled; public bool Enabled { get => _enabled; set => _enabled = value; } public List Categories { get; set; } public event EventHandler LogReceived; public SimpleStringLogger() { Categories = new List(); Categories.Add(LogCategory.Critical); Categories.Add(LogCategory.Debug); Categories.Add(LogCategory.Error); Categories.Add(LogCategory.Info); Categories.Add(LogCategory.Warning); Enabled = true; } public SimpleStringLogger(params LogCategory[] categories) : this() { Categories = categories.ToList(); } public void OnLog(LogItemBase log) { if (Categories.Contains(log.Category)) { LogReceived?.Invoke(this, log); } } } }