Revision: 5940 http://jnode.svn.sourceforge.net/jnode/?rev=5940&view=rev Author: galatnm Date: 2012-12-21 15:07:28 +0000 (Fri, 21 Dec 2012) Log Message: ----------- NET : Improve netstat command output.
Modified Paths: -------------- trunk/cli/src/commands/org/jnode/command/net/NetstatCommand.java Modified: trunk/cli/src/commands/org/jnode/command/net/NetstatCommand.java =================================================================== --- trunk/cli/src/commands/org/jnode/command/net/NetstatCommand.java 2012-12-21 14:21:00 UTC (rev 5939) +++ trunk/cli/src/commands/org/jnode/command/net/NetstatCommand.java 2012-12-21 15:07:28 UTC (rev 5940) @@ -36,7 +36,7 @@ public class NetstatCommand extends AbstractCommand { private static final String help_super = "Print statistics for all network devices"; - private static final String fmt_stat = "%s: ID %s"; + private static final String fmt_stat = "%s: ID %s\n"; private static final String str_none = "none"; public NetstatCommand() { @@ -60,42 +60,36 @@ private void showStats(PrintWriter out, NetworkLayer nl, int maxWidth) throws NetworkException { out.format(fmt_stat, nl.getName(), nl.getProtocolID()); - final String prefix = " "; - out.print(prefix); - showStats(out, nl.getStatistics(), maxWidth - prefix.length(), prefix); + padOutput(out, 4); + showStats(out, nl.getStatistics(), 4); for (TransportLayer tl : nl.getTransportLayers()) { - out.print(prefix); + padOutput(out, 4); out.format(fmt_stat, tl.getName(), tl.getProtocolID()); - final String prefix2 = prefix + prefix; - out.print(prefix2); - showStats(out, tl.getStatistics(), maxWidth - prefix2.length(), prefix2); + showStats(out, tl.getStatistics(),8); } out.println(); } - private void showStats(PrintWriter out, Statistics stat, int maxWidth, String prefix) + private void showStats(PrintWriter out, Statistics stat, int padSize) throws NetworkException { - final Statistic[] list = stat.getStatistics(); - if (list.length == 0) { + padOutput(out, padSize); + final Statistic[] statistics = stat.getStatistics(); + if (statistics.length == 0) { out.print(str_none); } else { - int width = 0; - for (int i = 0; i < list.length; i++) { - final Statistic st = list[i]; - String msg = st.getName() + ' ' + st.getValue(); - if (i + 1 < list.length) { - msg = msg + ", "; - } - if (width + msg.length() > maxWidth) { - out.println(); - out.print(prefix); - width = 0; - } - out.print(msg); - width += msg.length(); - } + StringBuffer buffer = new StringBuffer(); + for(Statistic statistic : statistics){ + buffer.append(statistic.getName()).append(' ').append(statistic.getValue()).append("\n"); + } + out.print(buffer.toString()); } out.println(); } + + private void padOutput(PrintWriter out, int size) { + for(int i = 0; i < size; i++){ + out.print(" "); + } + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ Jnode-svn-commits mailing list Jnode-svn-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jnode-svn-commits