private void LoadDataInOrder() { _logger.Log("Caught up ! Starting .."); var files = Directory.GetFiles(_catchDataFullPath); foreach (var file in files) { var tokens = file.Split('\\'); var name = tokens[tokens.Length - 1]; _logger.Log("Copied new block from catch : " + name); File.Copy(file, $"{Configurations.CurrentPath}\\BlockChain\\Chain\\{name}"); File.Delete(file); } //process blocks in order var order = bufferedBlockInfos.OrderBy(r => r.Height).ToList(); foreach (var blockInfo in order) { var bb = _blockChainService.LookUpBlock(blockInfo.Id); _eventManager.PassNewTrigger(bb, EventTypes.EventType.NewBlock); } _blockChainService.TryLoadSavedInfo(); _minerService.TryRestartingWorkers(); }