protected override void WriteRuntimeExecutionTime(RuntimeExecutionTimes runtimeExecutionTimes)
 {
     QueryMetricsTextWriter.AppendTimeSpanToStringBuilder(
         this.stringBuilder,
         QueryMetricsTextWriter.RuntimeExecutionTime,
         runtimeExecutionTimes.SystemFunctionExecutionTime
         + runtimeExecutionTimes.UserDefinedFunctionExecutionTime,
         indentLevel: 1);
 }
        private void WriteRuntimesExecutionTimes(RuntimeExecutionTimes runtimeExecutionTimes)
        {
            this.WriteBeforeRuntimeExecutionTimes();

            this.WriteQueryEngineExecutionTime(runtimeExecutionTimes.QueryEngineExecutionTime);
            this.WriteSystemFunctionExecutionTime(runtimeExecutionTimes.SystemFunctionExecutionTime);
            this.WriteUserDefinedFunctionExecutionTime(runtimeExecutionTimes.UserDefinedFunctionExecutionTime);

            this.WriteAfterRuntimeExecutionTimes();
        }
 protected abstract void WriteRuntimeExecutionTime(RuntimeExecutionTimes runtimeExecutionTimes);