using System.IO; using Microsoft.Extensions.Logging; namespace Livia.Models.Data; public class MdpCServerHandler(ILogger logger, LiviaHttpClientFactory liviaHttpClientFactory) : ServerHandler(logger, liviaHttpClientFactory) { private static readonly string[] CheckList = ["AnImage_ArterialTerritories.nii.gz", "AnImage_BrainLobes_AAL3.nii.gz", "AnImage_CerebrumCerebellum.nii.gz", "LimbicSystem.nii.gz" ]; public override Task<(bool success, string messageIndex)> ProcessData(DataBlock dataBlock, CancellationToken token) { return CheckList.Any(file => !File.Exists(Path.Combine(dataBlock.SourceDir, file))) ? Task.FromResult((false, "RoiAtlasNotFoundError")) : base.ProcessData(dataBlock, token); } }