public void PollForSendTestMediaFiles() { try { var testIds = _settings.IpSendMediaFilesForTestIds; if (!testIds.Any()) { _logger.Info("No Test id found in config, please provide TestIds."); return; } var customSettings = _customSettingManager.Deserialize(_settings.SendTestMediaFilesSettings); DateTime exportToTime = DateTime.Now; DateTime exportFromTime = DateTime.Now; if (customSettings.LastTransactionDate == null) { exportFromTime = _settings.SendTestMediaFilesCutoffDate; exportToTime = DateTime.Now; } else { exportFromTime = customSettings.LastTransactionDate.Value.AddMinutes(-20); exportToTime = customSettings.LastTransactionDate.Value.AddMinutes(-10); } customSettings.LastTransactionDate = DateTime.Now; _customSettingManager.SerializeandSave(_settings.SendTestMediaFilesSettings, customSettings); var eventCustomerResults = _eventCustomerResultRepository.GetEventCustomerResultByTestIds(testIds, exportFromTime, exportToTime); if (!eventCustomerResults.Any()) { _logger.Info("No Customers found."); return; } _logger.Info(string.Format("Found {0} customers for Media file copy. ", eventCustomerResults.Count())); foreach (var ecr in eventCustomerResults) { _logger.Info("\n************************************************************************************************************ \n"); _logger.Info("**************************************** Starting for Customer Id: " + ecr.CustomerId + " and Event Id: " + ecr.EventId + " **************************************** \n"); var mediaFiles = _eventCustomerResultRepository.GetMediaByEventIdAndCustomerId(ecr.EventId, ecr.CustomerId, testIds); if (mediaFiles.IsNullOrEmpty()) { _logger.Info("There is not any media file availble for Customer Id: " + ecr.CustomerId + " and Event Id: " + ecr.EventId); continue; } CopyMediaFile(ecr.CustomerId, ecr.EventId, mediaFiles); _logger.Info("**************************************** Media File Copied for Customer Id: " + ecr.CustomerId + " and Event Id: " + ecr.EventId + " **************************************** \n"); } } catch (Exception ex) { _logger.Error("Message:" + ex.Message); _logger.Error("StackTrace:" + ex.StackTrace); } }