(SIGAR-199) add arp shell command

This commit is contained in:
Doug MacEachern 2010-01-18 17:09:47 -08:00
parent 34c0007c9a
commit eec4ba7e97
2 changed files with 55 additions and 0 deletions

View File

@ -0,0 +1,54 @@
/*
* Copyright (C) [2004, 2005, 2006], Hyperic, Inc.
* This file is part of SIGAR.
*
* SIGAR is free software; you can redistribute it and/or modify
* it under the terms version 2 of the GNU General Public License as
* published by the Free Software Foundation. This program is distributed
* in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
* even the implied warranty of MERCHANTABILITY or FITNESS FOR A
* PARTICULAR PURPOSE. See the GNU General Public License for more
* details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA.
*/
package org.hyperic.sigar.cmd;
import org.hyperic.sigar.SigarException;
public class Arp extends SigarCommandBase {
public Arp(Shell shell) {
super(shell);
}
public Arp() {
super();
}
public String getUsageShort() {
return "Display system ARP cache";
}
//arp -an
public void output(String[] args) throws SigarException {
org.hyperic.sigar.Arp[] entries = this.sigar.getArpList();
for (int i=0; i<entries.length; i++) {
org.hyperic.sigar.Arp arp = entries[i];
String host = "?"; //XXX
println(host + " " +
"(" + arp.getAddress() + ")" + " at " +
arp.getHwaddr() + " " +
"[" + arp.getType() + "]" + " on " +
arp.getIfname());
}
}
public static void main(String[] args) throws Exception {
new Arp().processCommand(args);
}
}

View File

@ -79,6 +79,7 @@ public class Shell extends ShellBase {
}
public void registerCommands() throws ShellCommandInitException {
registerCommandHandler("arp", new Arp(this));
registerCommandHandler("df", new Df(this));
registerCommandHandler("du", new Du(this));
registerCommandHandler("ls", new Ls(this));