blob: 2da51e90c2549e10bdabe45bdce25865567e82a2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
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<LogItemBase> Logs { get; set; }
public LogSafe(LogManager logManager)
{
_logManager = logManager;
Logs = new List<LogItemBase>();
logManager.NewLog += LogManager_NewLog;
}
private void LogManager_NewLog(object sender, LogItemBase log)
{
Logs.Add(log);
}
public List<LogItemBase> EmptyAndDispose()
{
var list = Logs.ToList();
Dispose();
return list;
}
public void Dispose()
{
_logManager.NewLog -= LogManager_NewLog;
Logs.Clear();
}
}
}
|