6540b932598650c23248b93011310badc4721b74
[jalviewjs.git] / site / swingjs / j2s / org / xml / sax / demo / EntityDemo.js
1 Clazz.declarePackage ("org.xml.sax.demo");
2 Clazz.load (["org.xml.sax.demo.DemoHandler", "java.io.StringReader"], "org.xml.sax.demo.EntityDemo", ["java.net.MalformedURLException", "$.URL", "org.xml.sax.InputSource", "org.xml.sax.helpers.ParserFactory"], function () {
3 c$ = Clazz.decorateAsClass (function () {
4 this.reader = null;
5 Clazz.instantialize (this, arguments);
6 }, org.xml.sax.demo, "EntityDemo", org.xml.sax.demo.DemoHandler);
7 Clazz.prepareFields (c$, function () {
8 this.reader =  new java.io.StringReader ("Entity resolution works!");
9 });
10 c$.main = Clazz.defineMethod (c$, "main", 
11 function (args) {
12 var parser;
13 var handler;
14 if (args.length != 1) {
15 System.err.println ("Usage: java -Dorg.xml.sax.parser=<classname> EntityDemo <document>");
16 System.exit (2);
17 }parser = org.xml.sax.helpers.ParserFactory.makeParser ();
18 handler =  new org.xml.sax.demo.EntityDemo ();
19 parser.setEntityResolver (handler);
20 parser.setDTDHandler (handler);
21 parser.setDocumentHandler (handler);
22 parser.setErrorHandler (handler);
23 parser.parse (org.xml.sax.demo.EntityDemo.makeAbsoluteURL (args[0]));
24 }, "~A");
25 Clazz.overrideMethod (c$, "resolveEntity", 
26 function (publicId, systemId) {
27 if (publicId != null && publicId.equals ("-//megginson//TEXT Sample Entity//EN")) {
28 return  new org.xml.sax.InputSource (this.reader);
29 } else {
30 return null;
31 }}, "~S,~S");
32 c$.makeAbsoluteURL = Clazz.defineMethod (c$, "makeAbsoluteURL", 
33  function (url) {
34 var baseURL;
35 var currentDirectory = System.getProperty ("user.dir");
36 var fileSep = System.getProperty ("file.separator");
37 var file = currentDirectory.$replace (fileSep.charAt (0), '/') + '/';
38 if (file.charAt (0) != '/') {
39 file = "/" + file;
40 }baseURL =  new java.net.URL ("file", null, file);
41 return  new java.net.URL (baseURL, url).toString ();
42 }, "~S");
43 });