Adding Async methods to verious services
This commit is contained in:
@@ -6,17 +6,17 @@ namespace SzCore;
|
||||
|
||||
public class SzEvaluator
|
||||
{
|
||||
|
||||
public SzResult<bool> EvaluateDataset(SzDataset dataset)
|
||||
public async Task<SzResult<bool>> EvaluateDatasetAsync(SzDataset dataset, CancellationToken ct = default)
|
||||
{
|
||||
var errors = new StringBuilder();
|
||||
|
||||
var template = SZ.DataHandler.LoadTemplate<SzDataObjectTemplate>(dataset.DataObjectTemplateId);
|
||||
if (!template.IsSuccess || template.Value is null) return SzResult<bool>.Failure($"Template with id {dataset.DataObjectTemplateId} for Dataset ID {dataset.Id} could not be loaded");
|
||||
var templateResult = await SZ.DataHandler.LoadTemplateAsync<SzDataObjectTemplate>(dataset.DataObjectTemplateId, ct);
|
||||
if (!templateResult.IsSuccess || templateResult.Value is null)
|
||||
return SzResult<bool>.Failure($"Template with id {dataset.DataObjectTemplateId} for Dataset ID {dataset.Id} could not be loaded: {templateResult.Error}");
|
||||
|
||||
foreach (var dataObject in dataset.DataObjects.Values)
|
||||
{
|
||||
var evalResult = EvaluateDataObject(dataObject, template.Value);
|
||||
var evalResult = EvaluateDataObject(dataObject, templateResult.Value);
|
||||
if (!evalResult.IsSuccess) errors.Append(evalResult.Error);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user