public void SyncPeers() { for (int port = 5555; port < 5560; port++) { string url = $"http://localhost:{port}"; if (url == Current.Url) { continue; } RestClient cl = new RestClient(url); try { PeerApiModel pm = new PeerApiModel() { Url = Current.Url, Name = Current.Name }; PeerApiModel foundNode = cl.Post <PeerApiModel, PeerApiModel>("api/peers/connect", pm); if (foundNode != null) { Console.Write($"{Current.Url} found node:{foundNode.Name}/{foundNode.Url}"); if (!IsPeerExists(foundNode.Url)) { Peers.Add(new Peer(foundNode.Url, foundNode.Name)); } } } catch (Exception ex) { } } Console.WriteLine($"Peers found:{Peers.Count}"); }
public PeerApiModel AddNewlyConnectedPeer(PeerApiModel p) { if (!IsPeerExists(p.Url)) { Peer peer = new Peer(p.Url, p.Name); Peers.Add(peer); } return(PeerApiModel.FromPeer(Current)); }