public NodeConnectionStatus AddNodeToConnections(IPAddress address) { var connectionHandshake = new ConnectionHandshake(address, RemoteHelper, NodeId); connectionHandshake.PerformHandshake(); AddToConnectedNodes(connectionHandshake); return connectionHandshake.ConnectionStatus; }
private void AddToConnectedNodes(ConnectionHandshake connectionHandshake) { if (connectionHandshake.IsRemoteNodeConnected) { if (IsAddressNotInCollection(connectionHandshake)) { AddAddressToCollection(connectionHandshake); } } }
private void AddAddressToCollection(ConnectionHandshake connectionHandshake) { ConnectedNodes.Add(connectionHandshake.RemoteAddress, connectionHandshake.RemoteNodeId); }
private bool IsAddressNotInCollection(ConnectionHandshake connectionHandshake) { return !ConnectedNodes.ContainsKey(connectionHandshake.RemoteAddress); }