1 Clazz.declarePackage ("swingjs");
\r
2 Clazz.load (["org.xml.sax.helpers.DefaultHandler"], "swingjs.JSSAXContentHandler", ["JU.PT", "$.SB", "swingjs.JSSAXAttributes"], function () {
\r
3 c$ = Clazz.declareType (swingjs, "JSSAXContentHandler", org.xml.sax.helpers.DefaultHandler);
\r
4 Clazz.overrideMethod (c$, "processingInstruction",
\r
5 function (target, data) {
\r
6 System.out.println ("<?" + target + ' ' + data + "?>");
\r
8 Clazz.overrideMethod (c$, "startDocument",
\r
10 System.out.println ("Start document");
\r
12 Clazz.overrideMethod (c$, "startElement",
\r
13 function (uri, localName, nodeName, atts) {
\r
14 localName = this.fixXerces (localName, nodeName);
\r
15 var sb = new JU.SB ();
\r
16 sb.append ("Start element: " + swingjs.JSSAXAttributes.getFullName (uri, localName, nodeName));
\r
17 for (var i = 0; i < atts.getLength (); i++) sb.append ("\n " + swingjs.JSSAXAttributes.getFullName (atts.getURI (i), atts.getLocalName (i), atts.getQName (i)) + " = \"" + atts.getValue (i) + "\"");
\r
19 System.out.println (sb.toString ());
\r
20 }, "~S,~S,~S,org.xml.sax.Attributes");
\r
21 Clazz.overrideMethod (c$, "characters",
\r
22 function (ch, start, length) {
\r
24 for (var i = start; i < start + length; i++) s += ch[i];
\r
26 System.out.println ("Characters: " + JU.PT.esc (s));
\r
28 Clazz.overrideMethod (c$, "endElement",
\r
29 function (uri, localName, nodeName) {
\r
30 localName = this.fixXerces (localName, nodeName);
\r
31 System.out.println ("End element: " + swingjs.JSSAXAttributes.getFullName (uri, localName, nodeName));
\r
33 Clazz.overrideMethod (c$, "endDocument",
\r
35 System.out.println ("End document");
\r
37 Clazz.defineMethod (c$, "fixXerces",
\r
38 function (localName, nodeName) {
\r
39 if (localName != null && localName.length > 0 || nodeName == null || nodeName.length == 0) return (localName == null ? "" : localName);
\r
40 var pt = nodeName.indexOf (":");
\r
41 return (pt < 0 ? nodeName : nodeName.substring (0, pt));
\r