Beispiel #1
0
 internal void OutputLine(PSTraceSourceOptions flag, string format, params object[] args)
 {
     if (this.alreadyTracing)
     {
         return;
     }
     this.alreadyTracing = true;
     try
     {
         StringBuilder lineBuilder = new StringBuilder();
         if (this.showHeaders)
         {
             lineBuilder.Append((object)PSTraceSource.GetLinePrefix(flag));
         }
         PSTraceSource.AddTab(ref lineBuilder);
         if (args != null && args.Length > 0)
         {
             for (int index = 0; index < args.Length; ++index)
             {
                 if (args[index] == null)
                 {
                     args[index] = (object)"null";
                 }
             }
             lineBuilder.AppendFormat((IFormatProvider)Thread.CurrentThread.CurrentCulture, format, args);
         }
         else
         {
             lineBuilder.Append(format);
         }
         this.TraceSource.TraceInformation(lineBuilder.ToString());
     }
     finally
     {
         this.alreadyTracing = false;
     }
 }