public async Task ProcessStage2(Guid importId) { var statisticsDbContext = DbUtils.CreateStatisticsDbContext(); var import = await _dataImportService.GetImport(importId); var subject = await statisticsDbContext.Subject.FindAsync(import.SubjectId); var metaFileStream = await _blobStorageService.StreamBlob(PrivateReleaseFiles, import.MetaFile.Path()); var metaFileTable = DataTableUtils.CreateFromStream(metaFileStream); _importerService.ImportMeta(metaFileTable, subject, statisticsDbContext); await statisticsDbContext.SaveChangesAsync(); await _fileImportService.ImportFiltersAndLocations(import.Id, statisticsDbContext); await statisticsDbContext.SaveChangesAsync(); }
private async Task ProcessSubject( ImportMessage message, StatisticsDbContext statisticsDbContext, ContentDbContext contentDbContext, SubjectData subjectData) { var subject = _releaseProcessorService.CreateOrUpdateRelease(subjectData, message, statisticsDbContext, contentDbContext); await using var metaFileStream = await _fileStorageService.StreamBlob(subjectData.MetaBlob); var metaFileTable = DataTableUtils.CreateFromStream(metaFileStream); _importerService.ImportMeta(metaFileTable, subject, statisticsDbContext); await statisticsDbContext.SaveChangesAsync(); await _fileImportService.ImportFiltersAndLocations(message, statisticsDbContext); await statisticsDbContext.SaveChangesAsync(); }