using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Tango.Logging { public class LogSafe : IDisposable { private LogManager _logManager; private List Logs { get; set; } public LogSafe(LogManager logManager) { _logManager = logManager; Logs = new List(); logManager.NewLog += LogManager_NewLog; } private void LogManager_NewLog(object sender, LogItemBase log) { Logs.Add(log); } public List EmptyAndDispose() { var list = Logs.ToList(); Dispose(); return list; } public void Dispose() { _logManager.NewLog -= LogManager_NewLog; Logs.Clear(); } } }