arpcommand.java

来自「纯java操作系统jnode,安装简单和操作简单的个人使用的Java操作系统」· Java 代码 · 共 46 行

JAVA
46
字号
/*
 * $Id: ArpCommand.java,v 1.1 2003/11/25 11:52:27 epr Exp $
 */
package org.jnode.net.command;

import java.util.Iterator;

import org.jnode.net.arp.ARPNetworkLayer;
import org.jnode.net.ethernet.EthernetConstants;
import org.jnode.net.util.NetUtils;
import org.jnode.shell.help.Help;
import org.jnode.shell.help.Parameter;
import org.jnode.shell.help.ParsedArguments;
import org.jnode.shell.help.Syntax;

/**
 * @author epr
 */
public class ArpCommand {

	static final Parameter PARAM_DELETE = new Parameter("d", "delete the ARP cache", Parameter.MANDATORY);

	public static Help.Info HELP_INFO = new Help.Info("arp", 
		new Syntax[] { 
			new Syntax("Print ARP cache"), 
			new Syntax("Clear ARP cache", new Parameter[] { PARAM_DELETE })
	});

	/**
	 * Execute this command
	 */
	public static void main(String[] args) throws Exception {
		ParsedArguments cmdLine = HELP_INFO.parse(args);

		ARPNetworkLayer arp = (ARPNetworkLayer) NetUtils.getNLM().getNetworkLayer(EthernetConstants.ETH_P_ARP);
		if (PARAM_DELETE.isSet(cmdLine)) {
			arp.getCache().clear();
			System.out.println("Cleared the ARP cache");
		} else {
			for (Iterator i = arp.getCache().entries().iterator(); i.hasNext();) {
				System.out.println(i.next());
			}
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?