networkinterfacetreenode.java
来自「java 开发的sip软电话 源码 jain sip」· Java 代码 · 共 72 行
JAVA
72 行
package net.java.mais.plugin.addressselector;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.util.Enumeration;
import javax.swing.tree.DefaultMutableTreeNode;
import net.java.mais.common.NetworkAddressManager;
/**
* <p>Title: SIP Communicator</p>
* <p>Description: A SIP UA</p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: Network Research Team, Louis Pasteur University</p>
* @author Emil Ivov
* @version 1.0
*/
class NetworkInterfaceTreeNode
extends DefaultMutableTreeNode
{
private boolean includeOnlyRoutableAddresses = false;
public NetworkInterfaceTreeNode(NetworkInterface netInterface,
boolean includeOnlyRoutableAddresses)
{
super(netInterface);
this.includeOnlyRoutableAddresses = includeOnlyRoutableAddresses;
setUserObject(netInterface);
}
/**
* Resets the user object of the receiver to <code>object</code>.
*
* @param object Object
* @todo Implement this javax.swing.tree.MutableTreeNode method
*/
public void setUserObject(Object object)
{
super.setUserObject(object);
setChildren((NetworkInterface)object);
}
private void setChildren(NetworkInterface iface)
{
Enumeration inetAddresses = iface.getInetAddresses();
while (inetAddresses.hasMoreElements()) {
InetAddress addr = (InetAddress) inetAddresses.nextElement();
if(!(includeOnlyRoutableAddresses
&& !NetworkAddressManager.isRoutable(addr)))
add(new NetworkAddressTreeNode(addr));
}
}
/**
* Returns a string representation of the object.
*
* @return a string representation of the object.
*/
public String toString()
{
return ((NetworkInterface)getUserObject()).getDisplayName();
}
public boolean isLeaf()
{
return false;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?