public async Task <IDataStoreCache> ProvideAsync(IDataStoreContext dataStoreContext, CancellationToken cancellationToken) { _logger.LogInfo("Starting External Data Provision Tasks"); var messageTask = _externalDataProvider.ProvideMessageAsync(dataStoreContext, cancellationToken); var looseMessageTask = _externalDataProvider.ProvideLooseMessageAsync(dataStoreContext, cancellationToken); var validLearnerTask = _externalDataProvider.ProvideValidLearnersAsync(dataStoreContext, cancellationToken); var albTask = _externalDataProvider.ProvideALBAsync(dataStoreContext, cancellationToken); var fm25Task = _externalDataProvider.ProvideFM25Async(dataStoreContext, cancellationToken); var fm35Task = _externalDataProvider.ProvideFM35Async(dataStoreContext, cancellationToken); var fm36Task = _externalDataProvider.ProvideFM36Async(dataStoreContext, cancellationToken); var fm70Task = _externalDataProvider.ProvideFM70Async(dataStoreContext, cancellationToken); var fm81Task = _externalDataProvider.ProvideFM81Async(dataStoreContext, cancellationToken); var validationErrorsTask = _externalDataProvider.ProvideValidationErrorsAsync(dataStoreContext, cancellationToken); var rulesTask = _externalDataProvider.ProvideRulesAsync(dataStoreContext, cancellationToken); var referenceDataVersionsTask = _externalDataProvider.ProvideReferenceDataVersionsAsync(dataStoreContext, cancellationToken); var tasks = new List <Task>() { messageTask, looseMessageTask, validLearnerTask, albTask, fm25Task, fm35Task, fm36Task, fm70Task, fm81Task, validationErrorsTask, rulesTask, referenceDataVersionsTask }; await Task.WhenAll(tasks); _logger.LogInfo("Data Provision Finished, starting Cache Mapping"); var cache = new DataStoreCache(); _dataStoreMapper.MapProcessingInformationData(cache, referenceDataVersionsTask.Result, dataStoreContext); _dataStoreMapper.MapValidLearnerData(cache, messageTask.Result, validLearnerTask.Result); _dataStoreMapper.MapInvalidLearnerData(cache, looseMessageTask.Result, validLearnerTask.Result); _dataStoreMapper.MapALBData(cache, albTask.Result); _dataStoreMapper.MapFM25Data(cache, fm25Task.Result); _dataStoreMapper.MapFM35Data(cache, fm35Task.Result); _dataStoreMapper.MapFM36Data(cache, fm36Task.Result); _dataStoreMapper.MapFM70Data(cache, fm70Task.Result); _dataStoreMapper.MapFM81Data(cache, fm81Task.Result); _dataStoreMapper.MapFM36HistoryData(cache, fm36Task.Result, dataStoreContext); _dataStoreMapper.MapValidationData(cache, dataStoreContext, looseMessageTask.Result, validationErrorsTask.Result, rulesTask.Result); _dataStoreMapper.MapESFFundingData(cache, dataStoreContext, messageTask.Result, fm70Task.Result); _logger.LogInfo("Cache Mapping Complete"); return(cache); }
public IUnitOfWork Get(string uowName) { var uow = DataStoreCache.Get <IUnitOfWork>(uowName); if (uow.IsNull()) { uow = new DefaultUnitOfWork(sessionFactoryProvider); } if (uowName.IsNullOrEmpty()) { uowName = uow.TraceId; } DataStoreCache.Remove(uowName); DataStoreCache.Add(uowName, uow); return(uow); }
public void Get_Test() { var dataStoreCache = new DataStoreCache(); dataStoreCache.Add(1); dataStoreCache.Add(2); dataStoreCache.AddRange(new List <int>() { 3, 4, 5 }); dataStoreCache.Add("string"); dataStoreCache.Get <int>().Should().Contain(5); dataStoreCache.Get <int>().Should().BeOfType <List <int> >(); dataStoreCache.Get <int>().Should().ContainInOrder(1, 2, 3, 4, 5); dataStoreCache.Get <string>().Should().HaveCount(1); dataStoreCache.Get <long>().Should().BeEmpty(); }
public void Remove(string uowName) { DataStoreCache.Remove(uowName); }