public ValidHeaderData MapData(IMessage message) { var ukprn = message.LearningProviderEntity.UKPRN; var validHeaderData = new ValidHeaderData(); validHeaderData.CollectionDetails = new List <CollectionDetail>() { new CollectionDetail { UKPRN = ukprn, Collection = message.HeaderEntity.CollectionDetailsEntity.CollectionString, FilePreparationDate = message.HeaderEntity.CollectionDetailsEntity.FilePreparationDate, Year = message.HeaderEntity.CollectionDetailsEntity.YearString } }; validHeaderData.LearningProviders = new List <LearningProvider>() { new LearningProvider { UKPRN = ukprn } }; var source = message.HeaderEntity.SourceEntity; validHeaderData.Sources = new List <Source>() { new EF.Valid.Source { UKPRN = ukprn, ComponentSetVersion = source.ComponentSetVersion, DateTime = source.DateTime, ProtectiveMarking = source.ProtectiveMarkingString, ReferenceData = source.ReferenceData, Release = source.Release, SerialNo = source.SerialNo, SoftwarePackage = source.SoftwarePackage, SoftwareSupplier = source.SoftwareSupplier } }; validHeaderData.SourceFiles = message .SourceFilesCollection? .Select(sf => new SourceFile { UKPRN = ukprn, DateTime = sf.DateTimeNullable, FilePreparationDate = sf.FilePreparationDate, Release = sf.Release, SerialNo = sf.SerialNo, SoftwarePackage = sf.SoftwarePackage, SoftwareSupplier = sf.SoftwareSupplier, SourceFileName = sf.SourceFileName, }).ToList() ?? new List <EF.Valid.SourceFile>(); return(validHeaderData); }
public Task StoreValidHeaderDataAsync(ValidHeaderData validHeaderData, SqlConnection sqlConnection, CancellationToken cancellationToken) => _validHeaderDataStoreService.StoreAsync(validHeaderData, sqlConnection, cancellationToken);