📄 simplexmlparserdocumentnodeimpl.java
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space
// Source File Name: SimpleXMLParserDocumentNodeImpl.java
package org.gudy.azureus2.pluginsimpl.local.utils.xml.simpleparser;
import java.io.PrintWriter;
import java.util.Vector;
import org.gudy.azureus2.plugins.utils.xml.simpleparser.SimpleXMLParserDocumentAttribute;
import org.gudy.azureus2.plugins.utils.xml.simpleparser.SimpleXMLParserDocumentNode;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
// Referenced classes of package org.gudy.azureus2.pluginsimpl.local.utils.xml.simpleparser:
// SimpleXMLParserDocumentAttributeImpl, SimpleXMLParserDocumentImpl
public class SimpleXMLParserDocumentNodeImpl
implements SimpleXMLParserDocumentNode
{
protected SimpleXMLParserDocumentImpl document;
protected Node node;
protected SimpleXMLParserDocumentNode kids[];
protected SimpleXMLParserDocumentNodeImpl(SimpleXMLParserDocumentImpl _doc, Node _node)
{
document = _doc;
node = _node;
}
protected Node getNode()
{
return node;
}
public String getName()
{
return node.getLocalName();
}
public String getFullName()
{
return node.getNodeName();
}
public String getNameSpaceURI()
{
return node.getNamespaceURI();
}
public String getValue()
{
if (node.getNodeType() == 7)
return node.getNodeValue();
String res = "";
for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling())
{
int type = child.getNodeType();
if (type == 4 || type == 3 || type == 12)
{
String str = child.getNodeValue();
res = (new StringBuilder()).append(res).append(str).toString();
}
}
return res;
}
public SimpleXMLParserDocumentAttribute getAttribute(String name)
{
SimpleXMLParserDocumentAttribute attributes[] = getAttributes();
for (int i = 0; i < attributes.length; i++)
if (attributes[i].getName().equalsIgnoreCase(name))
return attributes[i];
return null;
}
public SimpleXMLParserDocumentAttribute[] getAttributes()
{
Vector v = new Vector();
if (node.getNodeType() == 1)
{
NamedNodeMap atts = node.getAttributes();
for (int i = 0; i < atts.getLength(); i++)
{
Node child = atts.item(i);
v.addElement(new SimpleXMLParserDocumentAttributeImpl(child.getNodeName(), child.getNodeValue()));
}
}
for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling())
{
int type = child.getNodeType();
if (type == 2)
v.addElement(new SimpleXMLParserDocumentAttributeImpl(child.getNodeName(), child.getNodeValue()));
}
SimpleXMLParserDocumentAttributeImpl res[] = new SimpleXMLParserDocumentAttributeImpl[v.size()];
v.copyInto(res);
return res;
}
public SimpleXMLParserDocumentNode[] getChildren()
{
if (kids == null)
kids = document.parseNode(node, true);
return kids;
}
public SimpleXMLParserDocumentNode getChild(String name)
{
SimpleXMLParserDocumentNode kids[] = getChildren();
for (int i = 0; i < kids.length; i++)
if (kids[i].getName().equalsIgnoreCase(name))
return kids[i];
return null;
}
public void print()
{
PrintWriter pw = new PrintWriter(System.out);
print(pw);
pw.flush();
}
public void print(PrintWriter pw)
{
print(pw, "");
}
protected void print(PrintWriter pw, String indent)
{
String attr_str = "";
SimpleXMLParserDocumentAttribute attrs[] = getAttributes();
for (int i = 0; i < attrs.length; i++)
attr_str = (new StringBuilder()).append(attr_str).append(i != 0 ? "," : "").append(attrs[i].getName()).append("=").append(attrs[i].getValue()).toString();
pw.println((new StringBuilder()).append(indent).append(getName()).append(":").append(attr_str).append(" -> ").append(getValue()).toString());
SimpleXMLParserDocumentNode kids[] = getChildren();
for (int i = 0; i < kids.length; i++)
((SimpleXMLParserDocumentNodeImpl)kids[i]).print(pw, (new StringBuilder()).append(indent).append(" ").toString());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -