// for testing internal virtual void WriteMessage(LogMessageEntry message) { var console = message.LogAsError ? ErrorConsole : Console; if (message.TimeStamp != null) { console.Write(message.TimeStamp, message.MessageColor, message.MessageColor); } if (message.LevelString != null) { console.Write(message.LevelString, message.LevelBackground, message.LevelForeground); } console.Write(message.Message, message.MessageColor, message.MessageColor); console.Flush(); }
public virtual void EnqueueMessage(LogMessageEntry message) { if (!_messageQueue.IsAddingCompleted) { try { _messageQueue.Add(message); return; } catch (InvalidOperationException) { } } // Adding is completed so just log the message try { WriteMessage(message); } catch (Exception) { } }