From ab9dac88276c26257666975329c4849d6d592d59 Mon Sep 17 00:00:00 2001 From: zzz Date: Wed, 25 Apr 2018 14:21:23 +0000 Subject: [PATCH] Migrate webapp detection calls to PortMapper.isRegistered() --- .../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java | 2 +- .../src/net/i2p/i2ptunnel/I2PTunnelHTTPClientBase.java | 4 ++-- .../net/i2p/i2ptunnel/localServer/LocalHTTPServer.java | 2 +- .../java/src/net/i2p/router/web/ConfigUpdateHandler.java | 2 +- .../java/src/net/i2p/router/web/PluginStarter.java | 2 +- .../java/src/net/i2p/router/web/WebAppStarter.java | 9 ++++++++- .../net/i2p/router/web/helpers/ConfigClientsHandler.java | 2 +- .../java/src/net/i2p/router/web/helpers/HomeHelper.java | 6 +++--- .../src/net/i2p/router/web/helpers/NetDbRenderer.java | 2 +- .../net/i2p/router/web/helpers/SummaryBarRenderer.java | 8 ++++---- .../src/net/i2p/router/web/helpers/SummaryHelper.java | 4 ++-- .../src/net/i2p/router/web/helpers/SybilRenderer.java | 2 +- .../src/java/src/i2p/susi/dns/NamingServiceBean.java | 2 +- .../src/java/src/i2p/susi/dns/SubscriptionsBean.java | 2 +- 14 files changed, 28 insertions(+), 21 deletions(-) diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java index fcda74c97..105d0666c 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java @@ -774,7 +774,7 @@ public class I2PTunnelHTTPClient extends I2PTunnelHTTPClientBase implements Runn "").getBytes("UTF-8")); out.write(_t("Conflicting address helper destination").getBytes("UTF-8")); out.write(("\n").getBytes("UTF-8")); - if (_context.portMapper().getPort(PortMapper.SVC_IMAGEGEN) > 0) { + if (_context.portMapper().isRegistered(PortMapper.SVC_IMAGEGEN)) { out.write(("" + "" + " 0; - boolean hasI2PTunnel = ctx.portMapper().getPort(PortMapper.SVC_I2PTUNNEL) > 0; + boolean hasSusiDNS = ctx.portMapper().isRegistered(PortMapper.SVC_SUSIDNS); + boolean hasI2PTunnel = ctx.portMapper().isRegistered(PortMapper.SVC_I2PTUNNEL); if (hasSusiDNS && hasI2PTunnel) { reader = new TranslateReader(ctx, BUNDLE_NAME, new FileInputStream(file)); } else { diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/localServer/LocalHTTPServer.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/localServer/LocalHTTPServer.java index db1a735e4..c8146c97d 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/localServer/LocalHTTPServer.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/localServer/LocalHTTPServer.java @@ -217,7 +217,7 @@ public abstract class LocalHTTPServer { "" + "
\n" + diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java index ca1489328..6d222ed34 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java @@ -175,7 +175,7 @@ public class ConfigUpdateHandler extends FormHandler { int proxyPort = proxyPort(_context); if (shouldProxy && proxyPort == ConfigUpdateHandler.DEFAULT_PROXY_PORT_INT && proxyHost.equals(ConfigUpdateHandler.DEFAULT_PROXY_HOST) && - _context.portMapper().getPort(PortMapper.SVC_HTTP_PROXY) < 0) { + !_context.portMapper().isRegistered(PortMapper.SVC_HTTP_PROXY)) { addFormError(_t("HTTP client proxy tunnel must be running")); return; } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/PluginStarter.java b/apps/routerconsole/java/src/net/i2p/router/web/PluginStarter.java index 83437d446..ab22719ae 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/PluginStarter.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/PluginStarter.java @@ -172,7 +172,7 @@ public class PluginStarter implements Runnable { int proxyPort = ConfigUpdateHandler.proxyPort(ctx); if (proxyPort == ConfigUpdateHandler.DEFAULT_PROXY_PORT_INT && proxyHost.equals(ConfigUpdateHandler.DEFAULT_PROXY_HOST) && - ctx.portMapper().getPort(PortMapper.SVC_HTTP_PROXY) < 0) { + !ctx.portMapper().isRegistered(PortMapper.SVC_HTTP_PROXY)) { mgr.notifyComplete(null, Messages.getString("Plugin update check failed", ctx) + " - " + Messages.getString("HTTP client proxy tunnel must be running", ctx)); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/WebAppStarter.java b/apps/routerconsole/java/src/net/i2p/router/web/WebAppStarter.java index cb7305206..bfaf9495f 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/WebAppStarter.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/WebAppStarter.java @@ -53,6 +53,8 @@ public class WebAppStarter { * Prior to 0.9.28, was not guaranteed to throw on failure. * Not for routerconsole.war, it's started in RouterConsoleRunner. * + * As of 0.9.34, the appName will be registered with the PortMapper. + * * @throws Exception just about anything, caller would be wise to catch Throwable * @since public since 0.9.33, was package private */ @@ -165,7 +167,12 @@ public class WebAppStarter { } catch (IllegalStateException ise) {} } - /** @since public since 0.9.33; was package private */ + /** + * As of 0.9.34, the appName will be registered with the PortMapper, + * and PortMapper.isRegistered() will be more efficient than this. + * + * @since public since 0.9.33; was package private + */ public static boolean isWebAppRunning(String appName) { ContextHandler wac = getWebApp(appName); if (wac == null) diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/ConfigClientsHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/ConfigClientsHandler.java index f469b247b..5ae27bb86 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/ConfigClientsHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/ConfigClientsHandler.java @@ -577,7 +577,7 @@ public class ConfigClientsHandler extends FormHandler { boolean rv = ! (proxyPort == ConfigUpdateHandler.DEFAULT_PROXY_PORT_INT && proxyHost.equals(ConfigUpdateHandler.DEFAULT_PROXY_HOST) && - _context.portMapper().getPort(PortMapper.SVC_HTTP_PROXY) < 0); + !_context.portMapper().isRegistered(PortMapper.SVC_HTTP_PROXY)); if (!rv) addFormError(_t("HTTP client proxy tunnel must be running")); return rv; diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/HomeHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/HomeHelper.java index eee3fc3fc..b51bf4c52 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/HomeHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/HomeHelper.java @@ -208,13 +208,13 @@ public class HomeHelper extends HelperBase { url = app.url; // check for disabled webapps and other things if (url.equals("/dns")) { - if (pm.getPort("susidns") <= 0) + if (!pm.isRegistered("susidns")) continue; } else if (url.equals("/webmail")) { - if (pm.getPort("susimail") <= 0) + if (!pm.isRegistered("susimail")) continue; } else if (url.equals("/torrents")) { - if (pm.getPort("i2psnark") <= 0) + if (!pm.isRegistered("i2psnark")) continue; } else if (url.equals("/configplugins")) { if (!PluginStarter.pluginsEnabled(_context)) diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/NetDbRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/NetDbRenderer.java index 174c3c8e9..c133ee60f 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/NetDbRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/NetDbRenderer.java @@ -290,7 +290,7 @@ class NetDbRenderer { medianCount = rapCount / 2; } - boolean linkSusi = WebAppStarter.isWebAppRunning("susidns"); + boolean linkSusi = _context.portMapper().isRegistered("susidns"); long now = _context.clock().now(); buf.append("
"); for (LeaseSet ls : leases) { diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/SummaryBarRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/SummaryBarRenderer.java index f86d60f05..0d23b8518 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/SummaryBarRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/SummaryBarRenderer.java @@ -214,7 +214,7 @@ class SummaryBarRenderer { "
"); PortMapper pm = _context.portMapper(); - if (pm.getPort(PortMapper.SVC_SUSIMAIL) > 0) { + if (pm.isRegistered(PortMapper.SVC_SUSIMAIL)) { buf.append("") @@ -222,7 +222,7 @@ class SummaryBarRenderer { .append("\n"); } - if (pm.getPort(PortMapper.SVC_I2PSNARK) > 0) { + if (pm.isRegistered(PortMapper.SVC_I2PSNARK)) { buf.append("") @@ -269,7 +269,7 @@ class SummaryBarRenderer { "\n
\n"); PortMapper pm = _context.portMapper(); - if (pm.getPort(PortMapper.SVC_SUSIDNS) > 0) { + if (pm.isRegistered(PortMapper.SVC_SUSIDNS)) { buf.append("") @@ -291,7 +291,7 @@ class SummaryBarRenderer { .append(nbsp(_t("Help"))) .append("\n"); - if (pm.getPort(PortMapper.SVC_I2PTUNNEL) > 0) { + if (pm.isRegistered(PortMapper.SVC_I2PTUNNEL)) { buf.append("") diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/SummaryHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/SummaryHelper.java index b29a6f6b2..abed7326a 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/SummaryHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/SummaryHelper.java @@ -558,7 +558,7 @@ public class SummaryHelper extends HelperBase { List clients = new ArrayList(_context.clientManager().listClients()); StringBuilder buf = new StringBuilder(512); - boolean link = WebAppStarter.isWebAppRunning("i2ptunnel"); + boolean link = _context.portMapper().isRegistered("i2ptunnel"); buf.append("

"); if (link) { buf.append(" 0 && // assume using proxy for now + _context.portMapper().isRegistered(PortMapper.SVC_HTTP_PROXY) && // assume using proxy for now getAction() == null && getUpdateNonce() == null) { if (needSpace) diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/SybilRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/SybilRenderer.java index 8fbe68f98..3c319063c 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/SybilRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/SybilRenderer.java @@ -814,7 +814,7 @@ class SybilRenderer { buf.append("[").append(_t("Full entry")).append("]

"); } - if (_context.portMapper().getPort("imagegen") > 0) + if (_context.portMapper().isRegistered("imagegen")) buf.append(" "); buf.append("
"); if (us != null) { diff --git a/apps/susidns/src/java/src/i2p/susi/dns/NamingServiceBean.java b/apps/susidns/src/java/src/i2p/susi/dns/NamingServiceBean.java index 946afdaf4..dc57df58e 100644 --- a/apps/susidns/src/java/src/i2p/susi/dns/NamingServiceBean.java +++ b/apps/susidns/src/java/src/i2p/susi/dns/NamingServiceBean.java @@ -438,6 +438,6 @@ public class NamingServiceBean extends AddressbookBean * @since 0.9.34 */ public boolean haveImagegen() { - return _context.portMapper().getPort("imagegen") > 0; + return _context.portMapper().isRegistered("imagegen"); } } diff --git a/apps/susidns/src/java/src/i2p/susi/dns/SubscriptionsBean.java b/apps/susidns/src/java/src/i2p/susi/dns/SubscriptionsBean.java index 2ecd991b2..f3d41f466 100644 --- a/apps/susidns/src/java/src/i2p/susi/dns/SubscriptionsBean.java +++ b/apps/susidns/src/java/src/i2p/susi/dns/SubscriptionsBean.java @@ -144,7 +144,7 @@ public class SubscriptionsBean extends BaseBean // config reload and fetch. *******/ if (content != null && content.length() > 2 && - _context.portMapper().getPort(PortMapper.SVC_HTTP_PROXY) > 0) { + _context.portMapper().isRegistered(PortMapper.SVC_HTTP_PROXY)) { message = _t("Subscriptions saved, updating addressbook from subscription sources now."); // + "\"\"";