public Task StopAsync(CancellationToken cancellationToken) { _logger.LogInformation("ClientNodeService is stopping."); serviceState = ChildNodeServiceState.ShuttingDown; doWorkDelay.Change(Timeout.Infinite, 0); // send message to bootnode this node is going off line _rpcClient.SendShuttingDownMessage(); return(Task.CompletedTask); }
public async void ConnectToBootNode() { if (ChildNodeServiceState.Halted == this.serviceState) { this.serviceState = ChildNodeServiceState.RetryingConnectionToBootNode; } else { this.serviceState = ChildNodeServiceState.ConnectingToBootNode; } if (true == await _rpcClient.ConnectToBootNode()) { this.serviceState = ChildNodeServiceState.Running; } else { this.serviceState = ChildNodeServiceState.Halted; } }