/// <summary> /// Writes a text entry to the log. /// </summary> /// <param name="type">The type of message.</param> /// <param name="message">The message for this entry.</param> /// <param name="details">Optional detailed information for this entry.</param> /// <param name="verbosity">The verbosity level of this entry.</param> public void WriteEntry(EntryType type, string message, string details, EntryVerbosity verbosity) { LogEntry entry = new LogEntry(); entry.Time = DateTime.UtcNow; entry.Message = message; entry.ExtendedMessage = details; entry.Body = BodyType.Text; entry.Type = type; entry.Verbosity = verbosity; EventHandler <LogEventArgs> handler = null; if (type == EntryType.Warning) { handler = BeforeWarningIsPosted; } else if (type == EntryType.Error) { handler = BeforeErrorIsPosted; } if (handler != null) { handler(this, new LogEventArgs(entry)); } if (entry.Enabled) { entry.ToXml(_writer); _writer.Flush(); } }
/// <summary> /// Writes a link log entry to the current log, if any. /// </summary> /// <param name="link">The link to log.</param> /// <param name="message">The message for this entry.</param> /// <param name="details">Optional detailed information for this entry.</param> /// <param name="verbosity">The verbosity level of this entry.</param> public static void Link(string link, string message, string details, EntryVerbosity verbosity) { Log log = _currentLog; if (log != null) { log.WriteLinkEntry(link, message, details, verbosity); } }
/// <summary> /// Writes an image entry to the current log, if any. /// </summary> /// <param name="image">The image to log.</param> /// <param name="message">The message for this entry.</param> /// <param name="details">Optional detailed information for this entry.</param> /// <param name="verbosity">The verbosity level of this entry.</param> public static void Image(Image image, string message, string details, EntryVerbosity verbosity) { Log log = _currentLog; if (log != null) { log.WriteImageEntry(image, message, details, verbosity); } }
/// <summary> /// Writes an error log entry to the current log, if any. /// </summary> /// <param name="message">The message for this entry.</param> /// <param name="details">Optional detailed information for this entry.</param> /// <param name="verbosity">The verbosity level of this entry.</param> public static void Error(string message, string details, EntryVerbosity verbosity) { Log log = _currentLog; if (log != null) { log.WriteEntry(EntryType.Error, message, details, verbosity); } }
/// <summary> /// Writes a link entry to the log. /// </summary> /// <param name="link">The link to log.</param> /// <param name="message">The message for this entry.</param> /// <param name="details">Optional detailed information for this entry.</param> /// <param name="verbosity">The verbosity level of this entry.</param> public void WriteLinkEntry(string link, string message, string details, EntryVerbosity verbosity) { LogEntry entry = new LogEntry(); entry.Time = DateTime.UtcNow; entry.Message = message; entry.ExtendedMessage = details; entry.Body = BodyType.Link; entry.Type = EntryType.Info; entry.Verbosity = verbosity; entry.Link = link; entry.ToXml(_writer); _writer.Flush(); }
/// <summary> /// Writes an image entry to the log. /// </summary> /// <param name="image">The image to log.</param> /// <param name="message">The message for this entry.</param> /// <param name="details">Optional detailed information for this entry.</param> /// <param name="verbosity">The verbosity level of this entry.</param> public void WriteImageEntry(Image image, string message, string details, EntryVerbosity verbosity) { LogEntry entry = new LogEntry(); entry.Time = DateTime.UtcNow; entry.Message = message; entry.ExtendedMessage = details; entry.Body = BodyType.Picture; entry.Type = EntryType.Info; entry.Verbosity = verbosity; string imageFile = Path + @"\image" + _imageCount.ToString(CultureInfo.InvariantCulture) + ".png"; image.Save(imageFile, System.Drawing.Imaging.ImageFormat.Png); entry.Link = imageFile; _imageCount++; entry.ToXml(_writer); _writer.Flush(); }
internal EntryStyle(EntryVerbosity verbosity) { switch (verbosity) { case EntryVerbosity.Internal: fgColor = Color.DarkGray; break; case EntryVerbosity.Debug: fgColor = Color.Blue; break; case EntryVerbosity.Normal: break; case EntryVerbosity.Critical: fgColor = Color.Red; fontStyle = FontStyle.Bold; break; default: break; } }