26 lines
727 B
C#
26 lines
727 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;
|
|
}
|
|
}
|