public async Task HandleAsync() { var nodeKey = await keysService.GetNodeKeysAsync(notice.Block.NodeId, notice.Block.Header.SignKeyId.GetValueOrDefault()).ConfigureAwait(false); if (await BlocksService.AcceptOrRejectNewBlockAsync(notice.Block, nodeKey?.SignPublicKey, NodeData.Instance.NodeKeys.Password).ConfigureAwait(false)) { BlockGenerationHelper.Instance.HandleNewBlock(notice.Block); await dataRestorer.SaveBlockDataAsync(notice.Block).ConfigureAwait(false); } }
private IBlocksService BuildBlockPostMock() { var requestSenderMock = new Mock <IHttpRequestSender>(); requestSenderMock.Setup(s => s.PostAsync(It.IsAny <string>(), It.IsAny <HttpContent>())) .ReturnsAsync(new HttpResponseMessage(System.Net.HttpStatusCode.Created)); IBlocksService service = new BlocksService(requestSenderMock.Object); return(service); }
private IBlocksService BuildBlockGetMock() { var response = new HttpResponseMessage(System.Net.HttpStatusCode.OK); response.Content = new StringContent(JsonConvert.SerializeObject(CreateMockBlock()), Encoding.UTF8, "application/json"); var requestSenderMock = new Mock <IHttpRequestSender>(); requestSenderMock .Setup(s => s.GetAsync(It.IsAny <string>())) .ReturnsAsync(response); IBlocksService service = new BlocksService(requestSenderMock.Object); return(service); }
void Start() { blocks = new List <GameObject>(); userId = System.Guid.NewGuid().ToString(); blocksService = new BlocksService(userId); blocksService.BlockAdded += new BlockAddEventHandler(handleBlockAdded); blocksService.BlockRemoved += new BlockRemoveEventHandler(handleBlockRemoved); blocksService.Start(); blockTypeToGameObject = new Dictionary <int, GameObject>(); blockTypeToGameObject[0] = Block0; blockTypeToGameObject[1] = Block1; blockTypeToGameObject[2] = Block2; blockTypeToGameObject[3] = Block3; blockTypeToGameObject[4] = Block4; blockUtilities = new BlockUtilities(); }
private async Task BeginBlockGenerationAsync() { if (blockGenerationTask == null || blockGenerationTask.IsCompleted) { IEnumerable <BlockSegmentVm> blockSegments; List <BlockSegmentVm> resultBlockSegments = new List <BlockSegmentVm>(); blockSegments = await cacheService.GetBlockSegments(MAX_BLOCK_SEGMENTS_COUNT).ConfigureAwait(false); resultBlockSegments.AddRange(await BlockSegmentsService.Instance.GetNonExistingSemgentsAsync(blockSegments).ConfigureAwait(false)); var block = await BlocksService.FormFullBlockAsync(resultBlockSegments, NodeSettings.Configs.Node.Id).ConfigureAwait(false); currentSegments = resultBlockSegments; blockGenerationTask = Task <BlockVm> .Factory.StartNew(GenerateBlock, block, blockGenerationCancellToken); try { BlockVm generatedBlock = await blockGenerationTask.ConfigureAwait(true); NodeNoticeService.SendNewBlockNodeNoticeAsync(generatedBlock); await LicensorClient.Instance.AddNewBlockAsync(generatedBlock).ConfigureAwait(false); } catch (BlockGenerationException) { blockGenerationTask.Dispose(); cancellationTokenSource = new CancellationTokenSource(); blockGenerationCancellToken = cancellationTokenSource.Token; } catch (TaskCanceledException) { blockGenerationTask.Dispose(); cancellationTokenSource = new CancellationTokenSource(); blockGenerationCancellToken = cancellationTokenSource.Token; } catch (Exception ex) { Logger.WriteLog(ex); } finally { blockGenerationTask = null; } } }
public BlocksController(BlocksService bs, SetsService ss) { _bs = bs; _ss = ss; }
public BlocksController(BlocksService bs) { _bs = bs; }