/// <summary> /// Formats a log list entry. /// </summary> /// <para/> /// If the key is null, writes just the values. /// <param name="entry">Log entry.</param> /// <param name="renderer">Renderer for log data.</param> private void FormatEntry(LogList entry, IDataRenderer renderer) { if (!string.IsNullOrEmpty(entry.Key)) { renderer.RenderKey(entry.Key) .RenderInvariant(KeyValueSeparator); } renderer.RenderInvariant(ListOpening); if (entry.Entries.Count > 0) { foreach (var value in entry.Entries) { if (value is ILogEntry) { FormatEntry((ILogEntry)value, renderer); } else { renderer.RenderValue(value.ToString()); } renderer.RenderInvariant(ListItemSeparator); } renderer.RemoveLastCharacter(); // Removes the last separator. } renderer.RenderInvariant(ListClosing); }
/// <summary> /// Formats a basic key/value log entry. /// <para/> /// If the key is null, writes just the value. /// </summary> /// <param name="entry">Log entry.</param> /// <param name="renderer">Renderer for log data.</param> private void FormatEntry(LogEntry entry, IDataRenderer renderer) { if (string.IsNullOrEmpty(entry.Key)) { renderer.RenderValue(entry.Value); } else { renderer.RenderKey(entry.Key) .RenderInvariant(KeyValueSeparator) .RenderValue(entry.Value); } }