diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/FileDumpHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/FileDumpHelper.java index 433e4e637e..3673b27616 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/FileDumpHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/FileDumpHelper.java @@ -193,7 +193,11 @@ public class FileDumpHelper extends HelperBase { } } - private static Attributes attributes(File f) { + /** + * @return null if not found + * @since pkg private since 0.9.35 for LogsHelper + */ + static Attributes attributes(File f) { InputStream in = null; try { in = (new URL("jar:file:" + f.getAbsolutePath() + "!/META-INF/MANIFEST.MF")).openStream(); @@ -207,7 +211,12 @@ public class FileDumpHelper extends HelperBase { } } - private static String getAtt(Attributes atts, String s) { + /** + * @param atts non-null + * @return HTML stripped, or null if not found + * @since pkg private since 0.9.35 for LogsHelper + */ + static String getAtt(Attributes atts, String s) { String rv = atts.getValue(s); if (rv != null) rv = DataHelper.stripHTML(rv); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/LogsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/LogsHelper.java index f14324420c..18e4301f17 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/LogsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/LogsHelper.java @@ -8,6 +8,7 @@ import java.io.IOException; import java.lang.reflect.Method; import java.util.ArrayList; import java.util.List; +import java.util.jar.Attributes; import net.i2p.I2PAppContext; import net.i2p.crypto.SigType; @@ -96,6 +97,22 @@ public class LogsHelper extends HelperBase { return "

" + _t("File location") + ": " + f.getAbsolutePath() + "

\n
" + str + "
"; } } + + /** + * @since 0.9.35 + */ + public String getBuiltBy() { + File baseDir = _context.getBaseDir(); + File f = new File(new File(baseDir, "lib"), "i2p.jar"); + Attributes att = FileDumpHelper.attributes(f); + if (att != null) { + String s = FileDumpHelper.getAtt(att, "Built-By"); + if (s != null) { + return s; + } + } + return "Undefined"; + } /***** unused public String getConnectionLogs() { diff --git a/apps/routerconsole/jsp/logs.jsp b/apps/routerconsole/jsp/logs.jsp index e291619797..9366864cdf 100644 --- a/apps/routerconsole/jsp/logs.jsp +++ b/apps/routerconsole/jsp/logs.jsp @@ -52,7 +52,8 @@ Jbigi version:<%=net.i2p.util.NativeBigInteger.getJbigiVersion()%> GMP version:<%=net.i2p.util.NativeBigInteger.getLibGMPVersion()%> Encoding:<%=System.getProperty("file.encoding")%> -Charset:<%=java.nio.charset.Charset.defaultCharset().name()%> +Charset:<%=java.nio.charset.Charset.defaultCharset().name()%> +Built By:

<%=intl._t("Critical Logs")%>