public async Task ExecuteAsync(CancellationToken cancellationToken) { try { var latestFeedDetails = await _feedRepository.GetLatestSyndicationDataAsync(cancellationToken); var syncResult = await GetNewDataFromFeedAsync(cancellationToken, latestFeedDetails); var latestPageNumber = syncResult.OrderByDescending(x => x.PageNumber).FirstOrDefault()?.PageNumber; var lastItem = syncResult.LastOrDefault(x => x.PageNumber == latestPageNumber); await _feedRepository.SaveFeedItemAsync(cancellationToken, lastItem); await _feedRepository.UpdateSubmissionFileAsync(cancellationToken, syncResult); } catch (Exception exception) { _logger.LogError("Funding claims signing notifications Feed retrieval Failed", exception); throw; } }