private static void DisplayRepositoryState() { Console.WriteLine("Clients :" + ClientRepository.GetClients().Count + "\nConnections :" + ConnectionsRepository.GetConnections().Count + "\nPeerClients :" + ConnectionsRepository.GetClients().Count + "\nPeerServers :" + ConnectionsRepository.GetServers().Count); }
private static void CleanConnectionsFromConnectionsRepository(IClient closedClient) { List <ConnectionPair> connectionPairList = ConnectionsRepository.GetConnections(); foreach (ConnectionPair connectionPair in connectionPairList.Where(connectionPair => connectionPair.ContainsClient(closedClient))) { ConnectionsRepository.RemoveConnection(connectionPair); connectionPair.CloseConnection(closedClient); } }
private ConnectionPair CreateConnectionPair(SuperPeerServer server, SuperPeerClient client) { ConnectionPair connectionPair = new ConnectionPair(server, client); if (!ConnectionsRepository.GetConnections().Contains(connectionPair)) { ConnectionsRepository.AddConnection(connectionPair); return(connectionPair); } return(null); }