Change table headings to th tags to prep for css changes
This commit is contained in:
@ -15,7 +15,7 @@ public class ConfigClientsHelper extends HelperBase {
|
|||||||
public String getForm1() {
|
public String getForm1() {
|
||||||
StringBuffer buf = new StringBuffer(1024);
|
StringBuffer buf = new StringBuffer(1024);
|
||||||
buf.append("<table border=\"1\">\n");
|
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);
|
List clients = ClientAppConfig.getClientApps(_context);
|
||||||
for (int cur = 0; cur < clients.size(); cur++) {
|
for (int cur = 0; cur < clients.size(); cur++) {
|
||||||
@ -31,7 +31,7 @@ public class ConfigClientsHelper extends HelperBase {
|
|||||||
public String getForm2() {
|
public String getForm2() {
|
||||||
StringBuffer buf = new StringBuffer(1024);
|
StringBuffer buf = new StringBuffer(1024);
|
||||||
buf.append("<table border=\"1\">\n");
|
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();
|
Properties props = RouterConsoleRunner.webAppProperties();
|
||||||
Set keys = new TreeSet(props.keySet());
|
Set keys = new TreeSet(props.keySet());
|
||||||
for (Iterator iter = keys.iterator(); iter.hasNext(); ) {
|
for (Iterator iter = keys.iterator(); iter.hasNext(); ) {
|
||||||
|
@ -56,27 +56,27 @@ public class ConfigTunnelsHelper extends HelperBase {
|
|||||||
private static final int MIN_NEG_VARIANCE = -1;
|
private static final int MIN_NEG_VARIANCE = -1;
|
||||||
private void renderForm(StringBuffer buf, int index, String prefix, String name, TunnelPoolSettings in, TunnelPoolSettings out) {
|
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("<tr><th colspan=\"3\"><a name=\"").append(prefix).append("\">");
|
||||||
buf.append(name).append("</a></b></td></tr>\n");
|
buf.append(name).append("</a></th></tr>\n");
|
||||||
if (in.getLength() <= 0 ||
|
if (in.getLength() <= 0 ||
|
||||||
in.getLength() + in.getLengthVariance() <= 0 ||
|
in.getLength() + in.getLengthVariance() <= 0 ||
|
||||||
out.getLength() <= 0 ||
|
out.getLength() <= 0 ||
|
||||||
out.getLength() + out.getLengthVariance() <= 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 ||
|
else if (in.getLength() <= 1 ||
|
||||||
in.getLength() + in.getLengthVariance() <= 1 ||
|
in.getLength() + in.getLengthVariance() <= 1 ||
|
||||||
out.getLength() <= 1 ||
|
out.getLength() <= 1 ||
|
||||||
out.getLength() + out.getLengthVariance() <= 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 ||
|
if (in.getLength() + Math.abs(in.getLengthVariance()) >= WARN_LENGTH ||
|
||||||
out.getLength() + Math.abs(out.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 ||
|
if (in.getQuantity() + in.getBackupQuantity() >= WARN_QUANTITY ||
|
||||||
out.getQuantity() + out.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
|
// tunnel depth
|
||||||
buf.append("<tr><td>Depth</td>\n");
|
buf.append("<tr><td>Depth</td>\n");
|
||||||
|
@ -669,9 +669,9 @@ public class JobQueue {
|
|||||||
/** render the HTML for the job stats */
|
/** render the HTML for the job stats */
|
||||||
private void getJobStats(StringBuffer buf) {
|
private void getJobStats(StringBuffer buf) {
|
||||||
buf.append("<table border=\"1\">\n");
|
buf.append("<table border=\"1\">\n");
|
||||||
buf.append("<tr><td><b>Job</b></td><td><b>Runs</b></td>");
|
buf.append("<tr><th>Job</th><th>Runs</th>");
|
||||||
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("<th>Time</th><th><i>Avg</i></th><th><i>Max</i></th><th><i>Min</i></th>");
|
||||||
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("<th>Pending</th><th><i>Avg</i></th><th><i>Max</i></th><th><i>Min</i></th></tr>\n");
|
||||||
long totRuns = 0;
|
long totRuns = 0;
|
||||||
long totExecTime = 0;
|
long totExecTime = 0;
|
||||||
long avgExecTime = 0;
|
long avgExecTime = 0;
|
||||||
|
@ -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("<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("<table border=\"1\">");
|
||||||
buf.append("<tr>");
|
buf.append("<tr>");
|
||||||
buf.append("<td><b>Peer</b></td>");
|
buf.append("<th>Peer</th>");
|
||||||
buf.append("<td><b>Groups (Caps)</b></td>");
|
buf.append("<th>Groups (Caps)</th>");
|
||||||
buf.append("<td><b>Speed</b></td>");
|
buf.append("<th>Speed</th>");
|
||||||
buf.append("<td><b>Capacity</b></td>");
|
buf.append("<th>Capacity</th>");
|
||||||
buf.append("<td><b>Integration</b></td>");
|
buf.append("<th>Integration</th>");
|
||||||
buf.append("<td><b>Failing?</b></td>");
|
buf.append("<th>Failing?</th>");
|
||||||
buf.append("<td> </td>");
|
buf.append("<th> </th>");
|
||||||
buf.append("</tr>");
|
buf.append("</tr>");
|
||||||
int prevTier = 1;
|
int prevTier = 1;
|
||||||
for (Iterator iter = order.iterator(); iter.hasNext();) {
|
for (Iterator iter = order.iterator(); iter.hasNext();) {
|
||||||
@ -159,22 +159,22 @@ class ProfileOrganizerRenderer {
|
|||||||
buf.append("<h2>Floodfill and Integrated Peers</h2>\n");
|
buf.append("<h2>Floodfill and Integrated Peers</h2>\n");
|
||||||
buf.append("<table border=\"1\">");
|
buf.append("<table border=\"1\">");
|
||||||
buf.append("<tr>");
|
buf.append("<tr>");
|
||||||
buf.append("<td><b>Peer</b></td>");
|
buf.append("<th>Peer</th>");
|
||||||
buf.append("<td><b>Caps</b></td>");
|
buf.append("<th>Caps</th>");
|
||||||
buf.append("<td><b>Integ. Value</b></td>");
|
buf.append("<th>Integ. Value</th>");
|
||||||
buf.append("<td><b>Last Heard About</b></td>");
|
buf.append("<th>Last Heard About</th>");
|
||||||
buf.append("<td><b>Last Heard From</b></td>");
|
buf.append("<th>Last Heard From</th>");
|
||||||
buf.append("<td><b>Last Successful Send</b></td>");
|
buf.append("<th>Last Successful Send</th>");
|
||||||
buf.append("<td><b>Last Failed Send</b></td>");
|
buf.append("<th>Last Failed Send</th>");
|
||||||
buf.append("<td><b>10m Resp. Time</b></td>");
|
buf.append("<th>10m Resp. Time</th>");
|
||||||
buf.append("<td><b>1h Resp. Time</b></td>");
|
buf.append("<th>1h Resp. Time</th>");
|
||||||
buf.append("<td><b>1d Resp. Time</b></td>");
|
buf.append("<th>1d Resp. Time</th>");
|
||||||
buf.append("<td><b>Successful Lookups</b></td>");
|
buf.append("<th>Successful Lookups</th>");
|
||||||
buf.append("<td><b>Failed Lookups</b></td>");
|
buf.append("<th>Failed Lookups</th>");
|
||||||
buf.append("<td><b>New Stores</b></td>");
|
buf.append("<th>New Stores</th>");
|
||||||
buf.append("<td><b>Old Stores</b></td>");
|
buf.append("<th>Old Stores</th>");
|
||||||
buf.append("<td><b>1h Fail Rate</b></td>");
|
buf.append("<th>1h Fail Rate</th>");
|
||||||
buf.append("<td><b>1d Fail Rate</b></td>");
|
buf.append("<th>1d Fail Rate</th>");
|
||||||
buf.append("</tr>");
|
buf.append("</tr>");
|
||||||
for (Iterator iter = integratedPeers.iterator(); iter.hasNext();) {
|
for (Iterator iter = integratedPeers.iterator(); iter.hasNext();) {
|
||||||
PeerProfile prof = (PeerProfile)iter.next();
|
PeerProfile prof = (PeerProfile)iter.next();
|
||||||
|
@ -1769,48 +1769,48 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority
|
|||||||
buf.append(" timeout: ").append(DataHelper.formatDuration(_expireTimeout));
|
buf.append(" timeout: ").append(DataHelper.formatDuration(_expireTimeout));
|
||||||
buf.append("</b><br />\n");
|
buf.append("</b><br />\n");
|
||||||
buf.append("<table border=\"1\">\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)
|
if (sortFlags != FLAG_ALPHA)
|
||||||
buf.append(" <a href=\"").append(urlBase).append("?sort=0\">V</a> ");
|
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);
|
appendSortLinks(buf, urlBase, sortFlags, "Sort by idle inbound", FLAG_IDLE_IN);
|
||||||
buf.append("/");
|
buf.append("/");
|
||||||
appendSortLinks(buf, urlBase, sortFlags, "Sort by idle outbound", FLAG_IDLE_OUT);
|
appendSortLinks(buf, urlBase, sortFlags, "Sort by idle outbound", FLAG_IDLE_OUT);
|
||||||
buf.append("</td>");
|
buf.append("</th>");
|
||||||
buf.append("<td><b><a href=\"#def.rate\">In/Out</a></b>");
|
buf.append("<th><a href=\"#def.rate\">In/Out</a>");
|
||||||
appendSortLinks(buf, urlBase, sortFlags, "Sort by inbound rate", FLAG_RATE_IN);
|
appendSortLinks(buf, urlBase, sortFlags, "Sort by inbound rate", FLAG_RATE_IN);
|
||||||
buf.append("/");
|
buf.append("/");
|
||||||
appendSortLinks(buf, urlBase, sortFlags, "Sort by outbound rate", FLAG_RATE_OUT);
|
appendSortLinks(buf, urlBase, sortFlags, "Sort by outbound rate", FLAG_RATE_OUT);
|
||||||
buf.append("</td>\n");
|
buf.append("</th>\n");
|
||||||
buf.append("<td><b><a href=\"#def.up\">Up</a></b>");
|
buf.append("<th><a href=\"#def.up\">Up</a>");
|
||||||
appendSortLinks(buf, urlBase, sortFlags, "Sort by connection uptime", FLAG_UPTIME);
|
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);
|
appendSortLinks(buf, urlBase, sortFlags, "Sort by clock skew", FLAG_SKEW);
|
||||||
buf.append("</td>\n");
|
buf.append("</th>\n");
|
||||||
buf.append("<td><b><a href=\"#def.cwnd\">Cwnd</a></b>");
|
buf.append("<th><a href=\"#def.cwnd\">Cwnd</a>");
|
||||||
appendSortLinks(buf, urlBase, sortFlags, "Sort by congestion window", FLAG_CWND);
|
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);
|
appendSortLinks(buf, urlBase, sortFlags, "Sort by slow start threshold", FLAG_SSTHRESH);
|
||||||
buf.append("</td>\n");
|
buf.append("</th>\n");
|
||||||
buf.append("<td><b><a href=\"#def.rtt\">Rtt</a></b>");
|
buf.append("<th><a href=\"#def.rtt\">Rtt</a>");
|
||||||
appendSortLinks(buf, urlBase, sortFlags, "Sort by round trip time", FLAG_RTT);
|
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);
|
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);
|
appendSortLinks(buf, urlBase, sortFlags, "Sort by retransmission timeout", FLAG_RTO);
|
||||||
buf.append("</td>\n");
|
buf.append("</th>\n");
|
||||||
buf.append("<td><b><a href=\"#def.mtu\">Mtu</a></b>");
|
buf.append("<th><a href=\"#def.mtu\">Mtu</a>");
|
||||||
appendSortLinks(buf, urlBase, sortFlags, "Sort by maximum transmit unit", FLAG_MTU);
|
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);
|
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);
|
appendSortLinks(buf, urlBase, sortFlags, "Sort by packets received", FLAG_RECV);
|
||||||
buf.append("</td>\n");
|
buf.append("</th>\n");
|
||||||
buf.append("<td><b><a href=\"#def.resent\">Resent</a></b>");
|
buf.append("<th><a href=\"#def.resent\">Resent</a>");
|
||||||
appendSortLinks(buf, urlBase, sortFlags, "Sort by packets retransmitted", FLAG_RESEND);
|
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);
|
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");
|
buf.append("</tr>\n");
|
||||||
out.write(buf.toString());
|
out.write(buf.toString());
|
||||||
buf.setLength(0);
|
buf.setLength(0);
|
||||||
|
@ -439,9 +439,9 @@ public class TunnelPoolManager implements TunnelManagerFacade {
|
|||||||
List participating = _context.tunnelDispatcher().listParticipatingTunnels();
|
List participating = _context.tunnelDispatcher().listParticipatingTunnels();
|
||||||
Collections.sort(participating, new TunnelComparator());
|
Collections.sort(participating, new TunnelComparator());
|
||||||
out.write("<h2><a name=\"participating\">Participating tunnels</a>:</h2><table border=\"1\">\n");
|
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>"
|
out.write("<tr><th>Receive on</th><th>From</th><th>"
|
||||||
+ "<b>Send on</b></td><td><b>To</b></td><td><b>Expiration</b></td>"
|
+ "Send on</th><th>To</th><th>Expiration</th>"
|
||||||
+ "<td><b>Usage</b></td><td><b>Rate</b></td><td><b>Role</b></td></tr>\n");
|
+ "<th>Usage</th><th>Rate</th><th>Role</th></tr>\n");
|
||||||
long processed = 0;
|
long processed = 0;
|
||||||
RateStat rs = _context.statManager().getRate("tunnel.participatingMessageCount");
|
RateStat rs = _context.statManager().getRate("tunnel.participatingMessageCount");
|
||||||
if (rs != null)
|
if (rs != null)
|
||||||
@ -602,7 +602,7 @@ public class TunnelPoolManager implements TunnelManagerFacade {
|
|||||||
Collections.sort(peerList, new HashComparator());
|
Collections.sort(peerList, new HashComparator());
|
||||||
|
|
||||||
out.write("<h2><a name=\"peers\">Tunnel Counts By Peer</a>:</h2>\n");
|
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) {
|
for (Hash h : peerList) {
|
||||||
out.write("<tr><td align=\"right\">");
|
out.write("<tr><td align=\"right\">");
|
||||||
out.write(netDbLink(h));
|
out.write(netDbLink(h));
|
||||||
|
Reference in New Issue
Block a user