Example #1
0
 public static string TraceDescription(this CommandTrace trace, int?truncateTo = null)
 {
     if (truncateTo != null)
     {
         Match match;
         if (trace.Arguments.Length >= 4 && (match = _traceRegex.Match(trace.Arguments[3])).Success)
         {
             var str        = string.Concat(string.Join(" ", trace.Arguments.Take(2)), " ", match.Groups[1].Value);
             var bytesTotal = int.Parse(match.Groups[2].Value) + match.Groups[1].Value.Length;
             return($"{str.TruncateWithEllipsis(truncateTo.Value)} ({bytesTotal.Pluralize("byte")} total)");
         }
         return(string.Join(" ", trace.Arguments).TruncateWithEllipsis(truncateTo.Value));
     }
     return(string.Join(" ", trace.Arguments));
 }
Example #2
0
        public static string TraceDescription(this CommandTrace trace, int?truncateTo = null)
        {
            if (truncateTo != null && trace.Arguments.Length >= 4)
            {
                var match = _traceRegex.Match(trace.Arguments[3]);
                if (match.Success)
                {
                    var startStr   = string.Join(" ", trace.Arguments.Take(2));
                    var message    = match.Groups[1].Value.TruncateWithEllipsis(truncateTo.Value);
                    var bytesTotal = int.Parse(match.Groups[2].Value) + message.Length;
                    int bytesLeft  = truncateTo.Value - startStr.Length;

                    return(startStr + (bytesLeft > 3
                        ? $" {message.TruncateWithEllipsis(bytesLeft)} ({bytesTotal.Pluralize("byte")} total)"
                        : $" ({bytesTotal.Pluralize("byte")} total)"));
                }
            }

            return(string.Join(" ", trace.Arguments));
        }