From b5ad7642bc85f904a308a84c565fca69bf14976f Mon Sep 17 00:00:00 2001 From: jrandom <jrandom> Date: Sun, 1 May 2005 00:48:15 +0000 Subject: [PATCH] 2005-04-30 jrandom * Added a small new page to the web console (/peers.jsp) which contains the peer connection information. This will be cleaned up a lot more before 0.6 is out, but its a start. --- .../src/net/i2p/router/web/PeerHelper.java | 37 +++++++++++++++++++ apps/routerconsole/jsp/peers.jsp | 21 +++++++++++ apps/routerconsole/jsp/summary.jsp | 2 +- history.txt | 7 +++- .../src/net/i2p/router/RouterVersion.java | 4 +- .../router/transport/TransportManager.java | 21 ++++++----- 6 files changed, 78 insertions(+), 14 deletions(-) create mode 100644 apps/routerconsole/java/src/net/i2p/router/web/PeerHelper.java create mode 100644 apps/routerconsole/jsp/peers.jsp diff --git a/apps/routerconsole/java/src/net/i2p/router/web/PeerHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/PeerHelper.java new file mode 100644 index 0000000000..0e65533246 --- /dev/null +++ b/apps/routerconsole/java/src/net/i2p/router/web/PeerHelper.java @@ -0,0 +1,37 @@ +package net.i2p.router.web; + +import java.io.IOException; +import java.io.Writer; + +import net.i2p.router.RouterContext; + +public class PeerHelper { + private RouterContext _context; + private Writer _out; + /** + * Configure this bean to query a particular router context + * + * @param contextId begging few characters of the routerHash, or null to pick + * the first one we come across. + */ + public void setContextId(String contextId) { + try { + _context = ContextHelper.getContext(contextId); + } catch (Throwable t) { + t.printStackTrace(); + } + } + + public PeerHelper() {} + + public void setOut(Writer out) { _out = out; } + + public String getPeerSummary() { + try { + _context.commSystem().renderStatusHTML(_out); + } catch (IOException ioe) { + ioe.printStackTrace(); + } + return ""; + } +} diff --git a/apps/routerconsole/jsp/peers.jsp b/apps/routerconsole/jsp/peers.jsp new file mode 100644 index 0000000000..85766b76bf --- /dev/null +++ b/apps/routerconsole/jsp/peers.jsp @@ -0,0 +1,21 @@ +<%@page contentType="text/html"%> +<%@page pageEncoding="UTF-8"%> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> + +<html><head> +<title>I2P Router Console - peer connections</title> +<link rel="stylesheet" href="default.css" type="text/css" /> +</head><body> + +<%@include file="nav.jsp" %> +<%@include file="summary.jsp" %> + +<div class="main" id="main"> + <jsp:useBean class="net.i2p.router.web.PeerHelper" id="peerHelper" scope="request" /> + <jsp:setProperty name="peerHelper" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" /> + <jsp:setProperty name="peerHelper" property="out" value="<%=out%>" /> + <jsp:getProperty name="peerHelper" property="peerSummary" /> +</div> + +</body> +</html> diff --git a/apps/routerconsole/jsp/summary.jsp b/apps/routerconsole/jsp/summary.jsp index eeb0ddda2c..741717c395 100644 --- a/apps/routerconsole/jsp/summary.jsp +++ b/apps/routerconsole/jsp/summary.jsp @@ -33,7 +33,7 @@ } %><hr /> - <u><b>Peers</b></u><br /> + <u><b><a href="peers.jsp">Peers</a></b></u><br /> <b>Active:</b> <jsp:getProperty name="helper" property="activePeers" />/<jsp:getProperty name="helper" property="activeProfiles" /><br /> <b>Fast:</b> <jsp:getProperty name="helper" property="fastPeers" /><br /> <b>High capacity:</b> <jsp:getProperty name="helper" property="highCapacityPeers" /><br /> diff --git a/history.txt b/history.txt index 0a219297fb..96a31763f9 100644 --- a/history.txt +++ b/history.txt @@ -1,4 +1,9 @@ -$Id: history.txt,v 1.201 2005/04/29 01:24:15 jrandom Exp $ +$Id: history.txt,v 1.202 2005/04/30 18:26:19 jrandom Exp $ + +2005-04-30 jrandom + * Added a small new page to the web console (/peers.jsp) which contains + the peer connection information. This will be cleaned up a lot more + before 0.6 is out, but its a start. 2005-04-30 jrandom * Reduced some SimpleTimer churn diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index 6d6fde89f3..ec294afe04 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -15,9 +15,9 @@ import net.i2p.CoreVersion; * */ public class RouterVersion { - public final static String ID = "$Revision: 1.192 $ $Date: 2005/04/29 01:24:15 $"; + public final static String ID = "$Revision: 1.193 $ $Date: 2005/04/30 18:26:19 $"; public final static String VERSION = "0.5.0.7"; - public final static long BUILD = 4; + public final static long BUILD = 5; public static void main(String args[]) { System.out.println("I2P Router version: " + VERSION); System.out.println("Router ID: " + RouterVersion.ID); diff --git a/router/java/src/net/i2p/router/transport/TransportManager.java b/router/java/src/net/i2p/router/transport/TransportManager.java index 76c2080a50..aaebcedbb0 100644 --- a/router/java/src/net/i2p/router/transport/TransportManager.java +++ b/router/java/src/net/i2p/router/transport/TransportManager.java @@ -16,6 +16,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.TreeMap; import net.i2p.data.Hash; import net.i2p.data.RouterAddress; import net.i2p.data.RouterIdentity; @@ -176,8 +177,16 @@ public class TransportManager implements TransportEventListener { } public void renderStatusHTML(Writer out) throws IOException { - StringBuffer buf = new StringBuffer(8*1024); - buf.append("<h2>Transport Manager</h2>\n"); + TreeMap transports = new TreeMap(); + for (int i = 0; i < _transports.size(); i++) { + Transport t = (Transport)_transports.get(i); + transports.put(t.getStyle(), t); + } + for (Iterator iter = transports.values().iterator(); iter.hasNext(); ) { + Transport t= (Transport)iter.next(); + t.renderStatusHTML(out); + } + StringBuffer buf = new StringBuffer(4*1024); buf.append("Listening on: <br /><pre>\n"); for (int i = 0; i < _transports.size(); i++) { Transport t = (Transport)_transports.get(i); @@ -186,14 +195,6 @@ public class TransportManager implements TransportEventListener { } buf.append("</pre>\n"); out.write(buf.toString()); - for (Iterator iter = _transports.iterator(); iter.hasNext(); ) { - Transport t = (Transport)iter.next(); - //String str = t.renderStatusHTML(); - //if (str != null) - // buf.append(str); - t.renderStatusHTML(out); - } - //out.write(buf.toString()); out.flush(); } } -- GitLab