SessionZero.SzfToolkit-Dotnet/SessionZero.SzfLib/Objects/SzfDataset.cs
2025-07-21 21:59:01 -05:00

25 lines
730 B
C#

using SessionZero.SzfLib.Helpers;
using SessionZero.SzfLib.Parser;
namespace SessionZero.SzfLib.Objects;
[SzfObject("dataset")]
public class SzfDataset : SzfObject, ISzfDataset
{
public override string SzfType { get; set; } = "dataset";
public override SzfError Validate()
{
var result = SzfHelper.BasicSzfValidation(this);
if (GetMetadataField("Type") == string.Empty) result.AddError("Metadata field `Type` is missing or empty");
foreach (var entry in Sections.Where(entry => GetFieldValue(entry.Name, "Name") == string.Empty))
{
result.AddError($"Entry {entry.Name}'s `Name` field is missing or empty");
}
return result;
}
}