Mercurial > pub > ImplabNet
view Implab/Diagnostics/TraceEvent.cs @ 245:b904e0a3ba72 v3
working on promises
author | cin |
---|---|
date | Fri, 26 Jan 2018 04:13:34 +0300 |
parents | cc1baf7c8bd9 |
children |
line wrap: on
line source
using System; namespace Implab.Diagnostics { public class TraceEvent { public string Message { get; private set; } public TraceEventType EventType { get; private set; } /// <summary> /// The logical operation this event belongs to. /// </summary> public LogicalOperation Operation { get; private set; } /// <summary> /// Gets the time offset in milliseconds from the start of the operation, if the operation is not specified the value is zero. /// </summary> public int OperationTime { get; private set; } public TraceEvent(LogicalOperation operation, TraceEventType type, string message) { EventType = type; Message = message; Operation = operation; if (operation != null) OperationTime = operation.Duration; } public override string ToString() { return Message; } public static TraceEvent Create(LogicalOperation operation, TraceEventType type, string format, params object[] args) { return new TraceEvent(operation, type, format == null ? String.Empty : args == null || args.Length == 0 ? format : String.Format(format, args)); } } }