final class org.apache.axiom.truth.xml.DOMTraverser extends java.lang.Object implements org.apache.axiom.truth.xml.spi.Traverser
{
private final org.w3c.dom.Node root;
private final boolean dom;
private final boolean expandEntityReferences;
private org.w3c.dom.Node node;
private boolean descend;
void <init>(org.w3c.dom.Node, boolean, boolean)
{
short v;
org.w3c.dom.Node v;
org.apache.axiom.truth.xml.DOMTraverser v;
boolean v, v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v := @parameter: org.w3c.dom.Node;
v := @parameter: boolean;
v := @parameter: boolean;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node root> = v;
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean dom3> = v;
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean expandEntityReferences> = v;
v = interfaceinvoke v.<org.w3c.dom.Node: short getNodeType()>();
if v != 9 goto label;
v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node> = v;
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend> = 1;
label:
return;
}
public org.apache.axiom.truth.xml.spi.Event next()
{
java.lang.IllegalStateException v;
org.apache.axiom.truth.xml.spi.Event v, v, v, v, v, v, v, v;
short v;
org.w3c.dom.Node v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.axiom.truth.xml.DOMTraverser v;
boolean v, v, v, v, v, v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
label:
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
if v != null goto label;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node root>;
v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node> = v;
v = 0;
goto label;
label:
v = v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend>;
if v == 0 goto label;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.Node: org.w3c.dom.Node getFirstChild()>();
if v == null goto label;
v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node> = v;
v = 0;
goto label;
label:
v = 1;
goto label;
label:
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.Node: org.w3c.dom.Node getNextSibling()>();
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node root>;
if v != v goto label;
return null;
label:
if v == null goto label;
v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node> = v;
v = 0;
goto label;
label:
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.Node: org.w3c.dom.Node getParentNode()>();
v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node> = v;
v = 1;
label:
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.Node: short getNodeType()>();
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
case 10: goto label;
default: goto label;
};
label:
return null;
label:
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend> = 0;
v = <org.apache.axiom.truth.xml.spi.Event: org.apache.axiom.truth.xml.spi.Event DOCUMENT_TYPE>;
return v;
label:
if v != 0 goto label;
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend> = 1;
v = <org.apache.axiom.truth.xml.spi.Event: org.apache.axiom.truth.xml.spi.Event START_ELEMENT>;
return v;
label:
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend> = 0;
v = <org.apache.axiom.truth.xml.spi.Event: org.apache.axiom.truth.xml.spi.Event END_ELEMENT>;
return v;
label:
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend> = 0;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: boolean dom3>;
if v == 0 goto label;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.Text: boolean isElementContentWhitespace()>();
if v == 0 goto label;
v = <org.apache.axiom.truth.xml.spi.Event: org.apache.axiom.truth.xml.spi.Event WHITESPACE>;
goto label;
label:
v = <org.apache.axiom.truth.xml.spi.Event: org.apache.axiom.truth.xml.spi.Event TEXT>;
label:
return v;
label:
v = v.<org.apache.axiom.truth.xml.DOMTraverser: boolean expandEntityReferences>;
if v == 0 goto label;
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend> = v;
goto label;
label:
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend> = 0;
v = <org.apache.axiom.truth.xml.spi.Event: org.apache.axiom.truth.xml.spi.Event ENTITY_REFERENCE>;
return v;
label:
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend> = 0;
v = <org.apache.axiom.truth.xml.spi.Event: org.apache.axiom.truth.xml.spi.Event COMMENT>;
return v;
label:
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend> = 0;
v = <org.apache.axiom.truth.xml.spi.Event: org.apache.axiom.truth.xml.spi.Event CDATA_SECTION>;
return v;
label:
v.<org.apache.axiom.truth.xml.DOMTraverser: boolean descend> = 0;
v = <org.apache.axiom.truth.xml.spi.Event: org.apache.axiom.truth.xml.spi.Event PROCESSING_INSTRUCTION>;
return v;
label:
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>()>();
throw v;
}
public java.lang.String getRootName()
{
java.lang.String v;
org.apache.axiom.truth.xml.DOMTraverser v;
org.w3c.dom.Node v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.DocumentType: java.lang.String getName()>();
return v;
}
public java.lang.String getPublicId()
{
java.lang.String v;
org.apache.axiom.truth.xml.DOMTraverser v;
org.w3c.dom.Node v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.DocumentType: java.lang.String getPublicId()>();
return v;
}
public java.lang.String getSystemId()
{
java.lang.String v;
org.apache.axiom.truth.xml.DOMTraverser v;
org.w3c.dom.Node v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.DocumentType: java.lang.String getSystemId()>();
return v;
}
private static javax.xml.namespace.QName getQName(org.w3c.dom.Node)
{
org.w3c.dom.Node v;
java.lang.String v, v, v, v, v, v;
javax.xml.namespace.QName v, v;
v := @parameter: org.w3c.dom.Node;
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getLocalName()>();
if v != null goto label;
v = new javax.xml.namespace.QName;
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNodeName()>();
specialinvoke v.<javax.xml.namespace.QName: void <init>(java.lang.String)>(v);
return v;
label:
v = new javax.xml.namespace.QName;
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNamespaceURI()>();
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getLocalName()>();
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getPrefix()>();
v = staticinvoke <com.google.common.base.Strings: java.lang.String nullToEmpty(java.lang.String)>(v);
specialinvoke v.<javax.xml.namespace.QName: void <init>(java.lang.String,java.lang.String,java.lang.String)>(v, v, v);
return v;
}
public javax.xml.namespace.QName getQName()
{
javax.xml.namespace.QName v;
org.apache.axiom.truth.xml.DOMTraverser v;
org.w3c.dom.Node v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = staticinvoke <org.apache.axiom.truth.xml.DOMTraverser: javax.xml.namespace.QName getQName(org.w3c.dom.Node)>(v);
return v;
}
public java.util.Map getAttributes()
{
java.util.HashMap v, v;
org.w3c.dom.Node v, v;
int v, v;
org.w3c.dom.NamedNodeMap v;
java.lang.String v, v, v;
javax.xml.namespace.QName v;
org.apache.axiom.truth.xml.DOMTraverser v;
boolean v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v = null;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.Node: org.w3c.dom.NamedNodeMap getAttributes()>();
v = 0;
label:
v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: int getLength()>();
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: org.w3c.dom.Node item(int)>(v);
v = "http://www.w.org/2000/xmlns/";
v = interfaceinvoke v.<org.w3c.dom.Attr: java.lang.String getNamespaceURI()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
if v != null goto label;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = v;
label:
v = staticinvoke <org.apache.axiom.truth.xml.DOMTraverser: javax.xml.namespace.QName getQName(org.w3c.dom.Node)>(v);
v = interfaceinvoke v.<org.w3c.dom.Attr: java.lang.String getValue()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = v + 1;
goto label;
label:
return v;
}
public java.util.Map getNamespaces()
{
java.util.HashMap v, v, v;
org.w3c.dom.Node v, v;
int v, v;
org.w3c.dom.NamedNodeMap v;
java.lang.String v, v, v, v, v, v;
org.apache.axiom.truth.xml.DOMTraverser v;
boolean v, v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v = null;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.Node: org.w3c.dom.NamedNodeMap getAttributes()>();
v = 0;
label:
v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: int getLength()>();
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: org.w3c.dom.Node item(int)>(v);
v = "http://www.w.org/2000/xmlns/";
v = interfaceinvoke v.<org.w3c.dom.Attr: java.lang.String getNamespaceURI()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
if v != null goto label;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = v;
label:
v = interfaceinvoke v.<org.w3c.dom.Attr: java.lang.String getPrefix()>();
v = v;
v = "xmlns";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<org.w3c.dom.Attr: java.lang.String getLocalName()>();
goto label;
label:
v = "";
label:
v = interfaceinvoke v.<org.w3c.dom.Attr: java.lang.String getValue()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = v + 1;
goto label;
label:
return v;
}
public java.lang.String getText()
{
java.lang.String v;
org.apache.axiom.truth.xml.DOMTraverser v;
org.w3c.dom.Node v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNodeValue()>();
return v;
}
public java.lang.String getEntityName()
{
java.lang.String v;
org.apache.axiom.truth.xml.DOMTraverser v;
org.w3c.dom.Node v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNodeName()>();
return v;
}
public java.lang.String getPITarget()
{
java.lang.String v;
org.apache.axiom.truth.xml.DOMTraverser v;
org.w3c.dom.Node v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.ProcessingInstruction: java.lang.String getTarget()>();
return v;
}
public java.lang.String getPIData()
{
java.lang.String v;
org.apache.axiom.truth.xml.DOMTraverser v;
org.w3c.dom.Node v;
v := @this: org.apache.axiom.truth.xml.DOMTraverser;
v = v.<org.apache.axiom.truth.xml.DOMTraverser: org.w3c.dom.Node node>;
v = interfaceinvoke v.<org.w3c.dom.ProcessingInstruction: java.lang.String getData()>();
return v;
}
}