From 620128a76753e455cc9d6e97ce2dc604581efed1 Mon Sep 17 00:00:00 2001 From: mathiasdm Date: Tue, 30 Nov 2010 17:08:22 +0000 Subject: [PATCH] Cleaned up RouterManager, should now be crossplatform. --- apps/desktopgui/TODO | 3 ++- .../src/net/i2p/desktopgui/router/RouterManager.java | 10 +++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/apps/desktopgui/TODO b/apps/desktopgui/TODO index 5583a0068..0f5a5de4a 100644 --- a/apps/desktopgui/TODO +++ b/apps/desktopgui/TODO @@ -1,7 +1,8 @@ HIGH PRIORITY: - Allow desktopgui to start, stop and restart I2P. - DONE +- Correct logging system - DONE - Internationalisation -- Correct logging system +- Modify installer to set I2P directory parameter; or use $I2P? UNKNOWN: - API to allow applications to add themselves to the menu? * registerApplication(); -- should return a positive number on success, -1 on failure diff --git a/apps/desktopgui/src/net/i2p/desktopgui/router/RouterManager.java b/apps/desktopgui/src/net/i2p/desktopgui/router/RouterManager.java index 228747106..5a6001742 100644 --- a/apps/desktopgui/src/net/i2p/desktopgui/router/RouterManager.java +++ b/apps/desktopgui/src/net/i2p/desktopgui/router/RouterManager.java @@ -30,10 +30,14 @@ public class RouterManager { */ public static void start() { try { - String location = ConfigurationManager.getInstance().getStringConfiguration("I2PLocation", "/home/i2p"); //TODO: detect I2P directory - //TODO: crossplatform - Runtime.getRuntime().exec(location + "/i2psvc " + location + "/wrapper.config"); + //TODO: set/get PID + String separator = System.getProperty("file.separator"); + String homeDirectory = System.getProperty("user.home"); + String location = ConfigurationManager.getInstance() + .getStringConfiguration("I2PLocation", homeDirectory + separator + "i2p"); + + Runtime.getRuntime().exec(location + separator + "i2psvc" + location + separator + "wrapper.config"); } catch (IOException e) { log.log(Log.WARN, "Failed to start I2P", e); }