Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- try
- {
- // While we're not authenticated
- while ((!this.AuthorisationService.IsAuthorised))
- {
- // Just sleep and try again
- Thread.Sleep(TimeSpan.FromSeconds(1));
- }
- Console.WriteLine();
- Console.WriteLine("About to get next batch");
- stockTransferIds = this.SyncTableRepository.GetNextBatchOfIds(10); //TODO: Add batch size to config
- if (stockTransferIds == null || stockTransferIds.Length == 0)
- {
- Console.WriteLine("stockTransferIds is empty.");
- Thread.Sleep(this.ConfigurationService.PollingInterval);
- }
- else
- {
- Console.WriteLine("batch processing starting.");
- StockTransferContainer[] stockTransferContainers = this.SyncTableRepository.GetByIds(stockTransferIds);
- if (stockTransferContainers.Length != stockTransferIds.Length)
- {
- Int32 i = 0;
- }
- tasks = stockTransferContainers.Select(stockTransferContainer => Task.Factory.StartNew(async () => {
- try
- {
- Console.WriteLine($"Starting {stockTransferContainer.StockTransferKey}");
- stockTransferContainer.Type = this.GetEnvelopeType();
- Boolean wasUploaded =
- await this.SynchroniseUpsertedRecords(stockTransferContainer, cancellationToken);
- if (wasUploaded == false)
- {
- Logger
- .WriteToLog($"Failed to upload stocktransferid {stockTransferContainer.StockTransferKey}",
- LoggerCategory.General,
- TraceEventType.Error);
- }
- //Delete row
- this.SyncTableRepository.DeleteObject(stockTransferContainer.StockTransferKey);
- Console.WriteLine($"Finished {stockTransferContainer.StockTransferKey}");
- }
- catch (Exception e)
- {
- Logger.WriteToLog(e, LoggerCategory.General, TraceEventType.Error);
- }
- },
- cancellationToken)).ToArray();
- Console.WriteLine($"About to wait");
- Task.WaitAll(tasks,cancellationToken);
- Console.WriteLine($"After wait");
- }
- }
- catch(Exception e)
- {
- Logger.WriteToLog(e, LoggerCategory.General, TraceEventType.Error);
- Thread.Sleep(this.ConfigurationService.PollingInterval);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement