public void trySaveFavourites() {
   try {
     try (PrintWriter writer = new PrintWriter("favourites.txt", "UTF-8")) {
       for (GameServer s : favourites) {
         writer.println(s.getIp() + ":" + s.getPort());
       }
     }
   } catch (FileNotFoundException | UnsupportedEncodingException ex) {
     System.err.println(" - Couldn't save favourites");
   }
 }
 public void joinServer(GameServer server, boolean jk2) throws IOException {
   String path =
       jk2
           ? settingsManager.getSetting(Setting.JK2PATH)
           : settingsManager.getSetting(Setting.JKAPATH);
   String strIp = server.getIp();
   ProcessBuilder builder =
       new ProcessBuilder(
           path,
           "+connect",
           strIp.substring(strIp.indexOf("/") + 1, strIp.length()) + ":" + server.getPort());
   builder.directory(new File(path.substring(0, path.lastIndexOf("/"))));
   builder.redirectErrorStream(true);
   Process process = builder.start();
 }
 public Observable<String[]> getServerStatus(GameServer server) {
   return gameService.getServerStatus(new Tuple(server.getIp(), server.getPort()));
 }