public Models.Server AddOrUpdateServer(ServerInfo serverInfo) { var server = Servers.FindServer(serverInfo.Endpoint); var gameModes = GameModes.FindOrAddGameModes(serverInfo.GameModes); if (server == null) { server = Servers.AddNewServer(serverInfo.Endpoint, serverInfo.Name, gameModes); } else { Servers.UpdateExistingServer(server, serverInfo.Name, gameModes); } return(server); }