annotate Implab/Diagnostics/TraceEvent.cs @ 43:7c2369f580b8

improved tracing, TextListenerBase can be bound to logical operation scope.
author cin
date Wed, 16 Apr 2014 10:12:56 +0400
parents 3ba6778ed336
children edf0bc558596
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
36
313f708a50e9 improved log concept
cin
parents:
diff changeset
1 using System;
313f708a50e9 improved log concept
cin
parents:
diff changeset
2 using System.Collections.Generic;
313f708a50e9 improved log concept
cin
parents:
diff changeset
3 using System.Linq;
313f708a50e9 improved log concept
cin
parents:
diff changeset
4 using System.Text;
313f708a50e9 improved log concept
cin
parents:
diff changeset
5
313f708a50e9 improved log concept
cin
parents:
diff changeset
6 namespace Implab.Diagnostics {
313f708a50e9 improved log concept
cin
parents:
diff changeset
7 public class TraceEvent {
313f708a50e9 improved log concept
cin
parents:
diff changeset
8 public string Message {
313f708a50e9 improved log concept
cin
parents:
diff changeset
9 get;
313f708a50e9 improved log concept
cin
parents:
diff changeset
10 private set;
313f708a50e9 improved log concept
cin
parents:
diff changeset
11 }
313f708a50e9 improved log concept
cin
parents:
diff changeset
12
313f708a50e9 improved log concept
cin
parents:
diff changeset
13 public TraceEventType EventType {
313f708a50e9 improved log concept
cin
parents:
diff changeset
14 get;
313f708a50e9 improved log concept
cin
parents:
diff changeset
15 private set;
313f708a50e9 improved log concept
cin
parents:
diff changeset
16 }
313f708a50e9 improved log concept
cin
parents:
diff changeset
17
313f708a50e9 improved log concept
cin
parents:
diff changeset
18 public TraceEvent(TraceEventType type, string message) {
313f708a50e9 improved log concept
cin
parents:
diff changeset
19 EventType = type;
313f708a50e9 improved log concept
cin
parents:
diff changeset
20 Message = message;
313f708a50e9 improved log concept
cin
parents:
diff changeset
21 }
313f708a50e9 improved log concept
cin
parents:
diff changeset
22
40
fe33f4e02ad5 improved tracing
cin
parents: 36
diff changeset
23 public override string ToString() {
fe33f4e02ad5 improved tracing
cin
parents: 36
diff changeset
24 return String.Format("{0}: {1}", EventType, Message);
fe33f4e02ad5 improved tracing
cin
parents: 36
diff changeset
25 }
fe33f4e02ad5 improved tracing
cin
parents: 36
diff changeset
26
36
313f708a50e9 improved log concept
cin
parents:
diff changeset
27 public static TraceEvent Create(TraceEventType type, string format, params object[] args) {
43
7c2369f580b8 improved tracing, TextListenerBase can be bound to logical operation scope.
cin
parents: 42
diff changeset
28 return new TraceEvent(type, format == null ? String.Empty : String.Format(format, args));
36
313f708a50e9 improved log concept
cin
parents:
diff changeset
29 }
313f708a50e9 improved log concept
cin
parents:
diff changeset
30 }
313f708a50e9 improved log concept
cin
parents:
diff changeset
31 }