d58fce4636de7a75f8d31894103d3a107094f56d
[jalviewjs.git] / site / j2s / swingjs / JSSAXContentHandler.js
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
7 }, "~S,~S");\r
8 Clazz.overrideMethod (c$, "startDocument", \r
9 function () {\r
10 System.out.println ("Start document");\r
11 });\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
18 \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
23 var s = "";\r
24 for (var i = start; i < start + length; i++) s += ch[i];\r
25 \r
26 System.out.println ("Characters: " + JU.PT.esc (s));\r
27 }, "~A,~N,~N");\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
32 }, "~S,~S,~S");\r
33 Clazz.overrideMethod (c$, "endDocument", \r
34 function () {\r
35 System.out.println ("End document");\r
36 });\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
42 }, "~S,~S");\r
43 });\r