X-Git-Url: http://git.nikiroo.be/?p=fanfix.git;a=blobdiff_plain;f=Main.java;h=35365444682489d81adf7b25ed864416d6c47abe;hp=e48f4f53ec7ab7d1951ea4760cacdb64afbccc51;hb=002972e9de731678035d56304d75a6d9e8233635;hpb=6d465e886ae46c9da99117cc4302948f700a51c4 diff --git a/Main.java b/Main.java index e48f4f5..3536544 100644 --- a/Main.java +++ b/Main.java @@ -643,10 +643,36 @@ public class Main { break; case STOP_SERVER: // Can be given via "--remote XX XX XX" - if (key == null) - key = Instance.getInstance().getConfig().getString(Config.SERVER_KEY); - if (port == null) + if (key == null) { + key = Instance.getInstance().getConfig() + .getString(Config.SERVER_KEY); + + // If a subkey in RW mode exists, use it + for (String subkey : Instance.getInstance().getConfig() + .getList(Config.SERVER_ALLOWED_SUBKEYS, + new ArrayList())) { + if ((subkey + "|").contains("|rw|")) { + key = key + "|" + subkey; + break; + } + } + } + + if (port == null) { port = Instance.getInstance().getConfig().getInteger(Config.SERVER_PORT); + } + + if (host == null) { + String mode = Instance.getInstance().getConfig() + .getString(Config.SERVER_MODE, "fanfix"); + if ("http".equals(mode)) { + host = "http://localhost"; + } else if ("https".equals(mode)) { + host = "https://localhost"; + } else if ("fanfix".equals(mode)) { + host = "fanfix://localhost"; + } + } if (port == null) { System.err.println("No port given nor configured in the config file"); @@ -1069,7 +1095,7 @@ public class Main { * @param key * the key to contact the Fanfix server * @param host - * the host on which it runs (NULL means localhost) + * the host on which it runs * @param port * the port on which it runs * @@ -1078,7 +1104,7 @@ public class Main { * @throws SSLException * when the key was not accepted */ - private void stopServer(String key, String host, Integer port) + private void stopServer(String key, String host, int port) throws IOException, SSLException { if (host.startsWith("http://") || host.startsWith("https://")) { new WebLibrary(key, host, port).stop();