using Aip.Service.Aip.Models; using Aip.Service.Aip.Serivces; using Aip.Service.Models.Response; using Aip.Service.Repositories; using Aip.Service.Services.Interfaces; namespace Aip.Service.Services; public class ApiAipService : BaseService, IApiAipService { private readonly ILogger _log; private readonly AipFileService _aipFileService; public ApiAipService(ILogger log, IApiConfigService aipConfigService, AipFileService aipFileService) : base(aipConfigService) { _log = log; _aipFileService = aipFileService; } public async Task DownloadAipInfo() { try { var task = Task.Run(() => { int result = _aipConfigService.DownloadAipFileInformations(); return result; }); int result = await task; return new GeneralResponse { errorCode = 0, errorMessage = GlobalConstants.API_RESULT_SUCCESS, effectCount = result, }; } catch (Exception e) { _log.LogError($"{e}"); throw; } } public async Task> GetLabels() { try { var task = Task.Run(() => { return _aipFileService.SensitivityLabels(); }); List result = await task; return result; } catch (Exception) { throw; } } public async Task> GetPolicies() { try { var task = Task.Run(() => { return _aipFileService.ListSensitivityLabels(); }); List result = await task; return result; } catch (Exception) { throw; } } public async Task> GetProtections() { try { var task = Task.Run(() => { return _aipFileService.GetTemplates(); }); List result = await task; return result; } catch (Exception) { throw; } } }