diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java index 984569b9672f3b687e82277839fc6d0a35f59dc6..7acccdc49a0940ae51b5d35f3d97d330985345d5 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java @@ -15,7 +15,7 @@ public class ConfigClientsHelper extends HelperBase { public String getForm1() { StringBuffer buf = new StringBuffer(1024); buf.append("<table border=\"1\">\n"); - buf.append("<tr><td>Client</td><td>Run at Startup?</td><td>Start Now</td><td>Class and arguments</td></tr>\n"); + buf.append("<tr><th>Client</th><th>Run at Startup?</th><th>Start Now</th><th>Class and arguments</th></tr>\n"); List clients = ClientAppConfig.getClientApps(_context); for (int cur = 0; cur < clients.size(); cur++) { @@ -31,7 +31,7 @@ public class ConfigClientsHelper extends HelperBase { public String getForm2() { StringBuffer buf = new StringBuffer(1024); buf.append("<table border=\"1\">\n"); - buf.append("<tr><td>WebApp</td><td>Run at Startup?</td><td>Start Now</td><td>Description</td></tr>\n"); + buf.append("<tr><th>WebApp</th><th>Run at Startup?</th><th>Start Now</th><th>Description</th></tr>\n"); Properties props = RouterConsoleRunner.webAppProperties(); Set keys = new TreeSet(props.keySet()); for (Iterator iter = keys.iterator(); iter.hasNext(); ) { diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java index 2e53be6b5b672c9ae15b041f8b434ba071da981a..f1a63e421ae958d03c83574dddadf39a7f52e533 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java @@ -56,27 +56,27 @@ public class ConfigTunnelsHelper extends HelperBase { private static final int MIN_NEG_VARIANCE = -1; private void renderForm(StringBuffer buf, int index, String prefix, String name, TunnelPoolSettings in, TunnelPoolSettings out) { - buf.append("<tr><td colspan=\"3\"><b><a name=\"").append(prefix).append("\">"); - buf.append(name).append("</a></b></td></tr>\n"); + buf.append("<tr><th colspan=\"3\"><a name=\"").append(prefix).append("\">"); + buf.append(name).append("</a></th></tr>\n"); if (in.getLength() <= 0 || in.getLength() + in.getLengthVariance() <= 0 || out.getLength() <= 0 || out.getLength() + out.getLengthVariance() <= 0) - buf.append("<tr><td colspan=\"3\"><font color=\"red\">ANONYMITY WARNING - Settings include 0-hop tunnels</font></td></tr>"); + buf.append("<tr><th colspan=\"3\"><font color=\"red\">ANONYMITY WARNING - Settings include 0-hop tunnels</font></th></tr>"); else if (in.getLength() <= 1 || in.getLength() + in.getLengthVariance() <= 1 || out.getLength() <= 1 || out.getLength() + out.getLengthVariance() <= 1) - buf.append("<tr><td colspan=\"3\"><font color=\"red\">ANONYMITY WARNING - Settings include 1-hop tunnels</font></td></tr>"); + buf.append("<tr><th colspan=\"3\"><font color=\"red\">ANONYMITY WARNING - Settings include 1-hop tunnels</font></th></tr>"); if (in.getLength() + Math.abs(in.getLengthVariance()) >= WARN_LENGTH || out.getLength() + Math.abs(out.getLengthVariance()) >= WARN_LENGTH) - buf.append("<tr><td colspan=\"3\"><font color=\"red\">PERFORMANCE WARNING - Settings include very long tunnels</font></td></tr>"); + buf.append("<tr><th colspan=\"3\"><font color=\"red\">PERFORMANCE WARNING - Settings include very long tunnels</font></th></tr>"); if (in.getQuantity() + in.getBackupQuantity() >= WARN_QUANTITY || out.getQuantity() + out.getBackupQuantity() >= WARN_QUANTITY) - buf.append("<tr><td colspan=\"3\"><font color=\"red\">PERFORMANCE WARNING - Settings include high tunnel quantities</font></td></tr>"); + buf.append("<tr><th colspan=\"3\"><font color=\"red\">PERFORMANCE WARNING - Settings include high tunnel quantities</font></th></tr>"); - buf.append("<tr><td></td><td><b>Inbound</b></td><td><b>Outbound</b></td></tr>\n"); + buf.append("<tr><th></th><th>Inbound</th><th>Outbound</th></tr>\n"); // tunnel depth buf.append("<tr><td>Depth</td>\n"); diff --git a/router/java/src/net/i2p/router/JobQueue.java b/router/java/src/net/i2p/router/JobQueue.java index 8ec40f56e51d7c3243274fc145cf627879d88869..890b303c0c49eebd3dea2083c6307839df12297c 100644 --- a/router/java/src/net/i2p/router/JobQueue.java +++ b/router/java/src/net/i2p/router/JobQueue.java @@ -669,9 +669,9 @@ public class JobQueue { /** render the HTML for the job stats */ private void getJobStats(StringBuffer buf) { buf.append("<table border=\"1\">\n"); - buf.append("<tr><td><b>Job</b></td><td><b>Runs</b></td>"); - buf.append("<td><b>Time</b></td><td><b><i>Avg</i></b></td><td><b><i>Max</i></b></td><td><b><i>Min</i></b></td>"); - buf.append("<td><b>Pending</b></td><td><b><i>Avg</i></b></td><td><b><i>Max</i></b></td><td><b><i>Min</i></b></td></tr>\n"); + buf.append("<tr><th>Job</th><th>Runs</th>"); + buf.append("<th>Time</th><th><i>Avg</i></th><th><i>Max</i></th><th><i>Min</i></th>"); + buf.append("<th>Pending</th><th><i>Avg</i></th><th><i>Max</i></th><th><i>Min</i></th></tr>\n"); long totRuns = 0; long totExecTime = 0; long avgExecTime = 0; diff --git a/router/java/src/net/i2p/router/peermanager/ProfileOrganizerRenderer.java b/router/java/src/net/i2p/router/peermanager/ProfileOrganizerRenderer.java index 0aff93485dd4e95bb237a1b4affdbf8033e0f8ed..20806cca7fa21bd9d2a04586d4cb9c1b8a00204d 100644 --- a/router/java/src/net/i2p/router/peermanager/ProfileOrganizerRenderer.java +++ b/router/java/src/net/i2p/router/peermanager/ProfileOrganizerRenderer.java @@ -61,13 +61,13 @@ class ProfileOrganizerRenderer { buf.append("<p>Showing ").append(order.size()).append(" recent profiles, hiding ").append(peers.size()-order.size()).append(" older profiles</p>"); buf.append("<table border=\"1\">"); buf.append("<tr>"); - buf.append("<td><b>Peer</b></td>"); - buf.append("<td><b>Groups (Caps)</b></td>"); - buf.append("<td><b>Speed</b></td>"); - buf.append("<td><b>Capacity</b></td>"); - buf.append("<td><b>Integration</b></td>"); - buf.append("<td><b>Failing?</b></td>"); - buf.append("<td> </td>"); + buf.append("<th>Peer</th>"); + buf.append("<th>Groups (Caps)</th>"); + buf.append("<th>Speed</th>"); + buf.append("<th>Capacity</th>"); + buf.append("<th>Integration</th>"); + buf.append("<th>Failing?</th>"); + buf.append("<th> </th>"); buf.append("</tr>"); int prevTier = 1; for (Iterator iter = order.iterator(); iter.hasNext();) { @@ -159,22 +159,22 @@ class ProfileOrganizerRenderer { buf.append("<h2>Floodfill and Integrated Peers</h2>\n"); buf.append("<table border=\"1\">"); buf.append("<tr>"); - buf.append("<td><b>Peer</b></td>"); - buf.append("<td><b>Caps</b></td>"); - buf.append("<td><b>Integ. Value</b></td>"); - buf.append("<td><b>Last Heard About</b></td>"); - buf.append("<td><b>Last Heard From</b></td>"); - buf.append("<td><b>Last Successful Send</b></td>"); - buf.append("<td><b>Last Failed Send</b></td>"); - buf.append("<td><b>10m Resp. Time</b></td>"); - buf.append("<td><b>1h Resp. Time</b></td>"); - buf.append("<td><b>1d Resp. Time</b></td>"); - buf.append("<td><b>Successful Lookups</b></td>"); - buf.append("<td><b>Failed Lookups</b></td>"); - buf.append("<td><b>New Stores</b></td>"); - buf.append("<td><b>Old Stores</b></td>"); - buf.append("<td><b>1h Fail Rate</b></td>"); - buf.append("<td><b>1d Fail Rate</b></td>"); + buf.append("<th>Peer</th>"); + buf.append("<th>Caps</th>"); + buf.append("<th>Integ. Value</th>"); + buf.append("<th>Last Heard About</th>"); + buf.append("<th>Last Heard From</th>"); + buf.append("<th>Last Successful Send</th>"); + buf.append("<th>Last Failed Send</th>"); + buf.append("<th>10m Resp. Time</th>"); + buf.append("<th>1h Resp. Time</th>"); + buf.append("<th>1d Resp. Time</th>"); + buf.append("<th>Successful Lookups</th>"); + buf.append("<th>Failed Lookups</th>"); + buf.append("<th>New Stores</th>"); + buf.append("<th>Old Stores</th>"); + buf.append("<th>1h Fail Rate</th>"); + buf.append("<th>1d Fail Rate</th>"); buf.append("</tr>"); for (Iterator iter = integratedPeers.iterator(); iter.hasNext();) { PeerProfile prof = (PeerProfile)iter.next(); diff --git a/router/java/src/net/i2p/router/transport/udp/UDPTransport.java b/router/java/src/net/i2p/router/transport/udp/UDPTransport.java index b42efbfae6145df0f10943fce572783622354405..e010e5213f851dd2663b70b0780289fc447a6ba8 100644 --- a/router/java/src/net/i2p/router/transport/udp/UDPTransport.java +++ b/router/java/src/net/i2p/router/transport/udp/UDPTransport.java @@ -1769,48 +1769,48 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority buf.append(" timeout: ").append(DataHelper.formatDuration(_expireTimeout)); buf.append("</b><br />\n"); buf.append("<table border=\"1\">\n"); - buf.append("<tr><td><b><a href=\"#def.peer\">Peer</a></b>"); + buf.append("<tr><th><a href=\"#def.peer\">Peer</a>"); if (sortFlags != FLAG_ALPHA) buf.append(" <a href=\"").append(urlBase).append("?sort=0\">V</a> "); - buf.append("</td><td><b><a href=\"#def.dir\">Dir/Intro</a></b></td><td><b><a href=\"#def.idle\">Idle</a></b>"); + buf.append("</th><th><a href=\"#def.dir\">Dir/Intro</a></th><th><a href=\"#def.idle\">Idle</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by idle inbound", FLAG_IDLE_IN); buf.append("/"); appendSortLinks(buf, urlBase, sortFlags, "Sort by idle outbound", FLAG_IDLE_OUT); - buf.append("</td>"); - buf.append("<td><b><a href=\"#def.rate\">In/Out</a></b>"); + buf.append("</th>"); + buf.append("<th><a href=\"#def.rate\">In/Out</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by inbound rate", FLAG_RATE_IN); buf.append("/"); appendSortLinks(buf, urlBase, sortFlags, "Sort by outbound rate", FLAG_RATE_OUT); - buf.append("</td>\n"); - buf.append("<td><b><a href=\"#def.up\">Up</a></b>"); + buf.append("</th>\n"); + buf.append("<th><a href=\"#def.up\">Up</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by connection uptime", FLAG_UPTIME); - buf.append("</td><td><b><a href=\"#def.skew\">skew</a></b>"); + buf.append("</th><th><a href=\"#def.skew\">skew</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by clock skew", FLAG_SKEW); - buf.append("</td>\n"); - buf.append("<td><b><a href=\"#def.cwnd\">Cwnd</a></b>"); + buf.append("</th>\n"); + buf.append("<th><a href=\"#def.cwnd\">Cwnd</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by congestion window", FLAG_CWND); - buf.append("</td><td><b><a href=\"#def.ssthresh\">Ssthresh</a></b>"); + buf.append("</th><th><a href=\"#def.ssthresh\">Ssthresh</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by slow start threshold", FLAG_SSTHRESH); - buf.append("</td>\n"); - buf.append("<td><b><a href=\"#def.rtt\">Rtt</a></b>"); + buf.append("</th>\n"); + buf.append("<th><a href=\"#def.rtt\">Rtt</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by round trip time", FLAG_RTT); - buf.append("</td><td><b><a href=\"#def.dev\">Dev</a></b>"); + buf.append("</th><th><a href=\"#def.dev\">Dev</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by round trip time deviation", FLAG_DEV); - buf.append("</td><td><b><a href=\"#def.rto\">Rto</a></b>"); + buf.append("</th><th><a href=\"#def.rto\">Rto</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by retransmission timeout", FLAG_RTO); - buf.append("</td>\n"); - buf.append("<td><b><a href=\"#def.mtu\">Mtu</a></b>"); + buf.append("</th>\n"); + buf.append("<th><a href=\"#def.mtu\">Mtu</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by maximum transmit unit", FLAG_MTU); - buf.append("</td><td><b><a href=\"#def.send\">Send</a></b>"); + buf.append("</th><th><a href=\"#def.send\">Send</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by packets sent", FLAG_SEND); - buf.append("</td><td><b><a href=\"#def.recv\">Recv</a></b>"); + buf.append("</th><th><a href=\"#def.recv\">Recv</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by packets received", FLAG_RECV); - buf.append("</td>\n"); - buf.append("<td><b><a href=\"#def.resent\">Resent</a></b>"); + buf.append("</th>\n"); + buf.append("<th><a href=\"#def.resent\">Resent</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by packets retransmitted", FLAG_RESEND); - buf.append("</td><td><b><a href=\"#def.dupRecv\">DupRecv</a></b>"); + buf.append("</th><th><a href=\"#def.dupRecv\">DupRecv</a>"); appendSortLinks(buf, urlBase, sortFlags, "Sort by packets received more than once", FLAG_DUP); - buf.append("</td>\n"); + buf.append("</th>\n"); buf.append("</tr>\n"); out.write(buf.toString()); buf.setLength(0); diff --git a/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java b/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java index 7293b6a1efde86598254eb8bf50d636c9402e22d..49f82acae533f527521412893b26202bb326a896 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java +++ b/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java @@ -439,9 +439,9 @@ public class TunnelPoolManager implements TunnelManagerFacade { List participating = _context.tunnelDispatcher().listParticipatingTunnels(); Collections.sort(participating, new TunnelComparator()); out.write("<h2><a name=\"participating\">Participating tunnels</a>:</h2><table border=\"1\">\n"); - out.write("<tr><td><b>Receive on</b></td><td><b>From</b></td><td>" - + "<b>Send on</b></td><td><b>To</b></td><td><b>Expiration</b></td>" - + "<td><b>Usage</b></td><td><b>Rate</b></td><td><b>Role</b></td></tr>\n"); + out.write("<tr><th>Receive on</th><th>From</th><th>" + + "Send on</th><th>To</th><th>Expiration</th>" + + "<th>Usage</th><th>Rate</th><th>Role</th></tr>\n"); long processed = 0; RateStat rs = _context.statManager().getRate("tunnel.participatingMessageCount"); if (rs != null) @@ -602,7 +602,7 @@ public class TunnelPoolManager implements TunnelManagerFacade { Collections.sort(peerList, new HashComparator()); out.write("<h2><a name=\"peers\">Tunnel Counts By Peer</a>:</h2>\n"); - out.write("<table border=\"1\"><tr><td><b>Peer</b></td><td><b>Expl. + Client</b></td><td><b>% of total</b></td><td><b>Part. from + to</b></td><td><b>% of total</b></td></tr>\n"); + out.write("<table border=\"1\"><tr><th>Peer</th><th>Expl. + Client</th><th>% of total</th><th>Part. from + to</th><th>% of total</th></tr>\n"); for (Hash h : peerList) { out.write("<tr><td align=\"right\">"); out.write(netDbLink(h));