tbf/TBF/Rig/Output/DataStorage/UniDataStorageWriter/Diagnostic/WriterDiagnosticResult.cs

53 lines
1.4 KiB
C#

using System.Text;
namespace TBF.Rig.Output.DataStorage.UniDataStorageWriter
{
/// <summary>
/// Diagnostic result for writer source testing and write execution.
/// </summary>
public class WriterDiagnosticResult
{
public bool Success { get; set; }
public string Message { get; set; }
/// <summary>
/// Final resolved template/query/body actually executed by writer.
/// </summary>
public string ExecutedTemplate { get; set; }
public static WriterDiagnosticResult Ok(string message = null)
{
return new WriterDiagnosticResult
{
Success = true,
Message = message
};
}
public static WriterDiagnosticResult Fail(string message)
{
return new WriterDiagnosticResult
{
Success = false,
Message = message
};
}
public string ToDisplayDiag()
{
StringBuilder sb = new StringBuilder();
sb.AppendLine("Success: " + Success);
sb.AppendLine("Message: " + (string.IsNullOrWhiteSpace(Message) ? "<empty>" : Message));
if (!string.IsNullOrWhiteSpace(ExecutedTemplate))
{
sb.AppendLine("Executed template:");
sb.AppendLine(ExecutedTemplate);
}
return sb.ToString();
}
}
}