JAL-1807 includes ?j2sdebug flag and DebugJS._(msg)
[jalviewjs.git] / bin / jalview / jsdev / GenericFileAdapter.js
1 Clazz.declarePackage ("jalview.jsdev");
2 Clazz.load (["jalview.io.AlignFile"], "jalview.jsdev.GenericFileAdapter", ["jalview.datamodel.AlignmentI", "jalview.io.FileParse", "java.io.BufferedReader", "$.InputStreamReader", "java.net.URL"], function () {
3 c$ = Clazz.declareType (jalview.jsdev, "GenericFileAdapter", jalview.io.AlignFile);
4 c$.getFile = Clazz.defineMethod (c$, "getFile", 
5 function (fileType, params) {
6 var cl = null;
7 try {
8 cl = Class.forName ("jalview.io." + fileType);
9 } catch (e) {
10 if (Clazz.exceptionOf (e, ClassNotFoundException)) {
11 System.err.println ("did not find file jalview.io." + fileType);
12 return null;
13 } else {
14 throw e;
15 }
16 }
17 var m;
18 var ex = null;
19 try {
20 switch (params.length) {
21 case 0:
22 return cl.newInstance ();
23 case 1:
24 m = (Clazz.instanceOf (params[0], jalview.io.FileParse) ? cl.getConstructor ([jalview.io.FileParse]) : cl.getConstructor ([jalview.datamodel.AlignmentI]));
25 break;
26 case 2:
27 m = cl.getConstructor ([String, String]);
28 break;
29 default:
30 return null;
31 }
32 return m.newInstance (params);
33 } catch (e$$) {
34 if (Clazz.exceptionOf (e$$, InstantiationException)) {
35 var e = e$$;
36 {
37 ex = e;
38 }
39 } else if (Clazz.exceptionOf (e$$, IllegalAccessException)) {
40 var e = e$$;
41 {
42 ex = e;
43 }
44 } else if (Clazz.exceptionOf (e$$, NoSuchMethodException)) {
45 var e = e$$;
46 {
47 ex = e;
48 }
49 } else if (Clazz.exceptionOf (e$$, SecurityException)) {
50 var e = e$$;
51 {
52 ex = e;
53 }
54 } else if (Clazz.exceptionOf (e$$, IllegalArgumentException)) {
55 var e = e$$;
56 {
57 ex = e;
58 }
59 } else if (Clazz.exceptionOf (e$$, java.lang.reflect.InvocationTargetException)) {
60 var e = e$$;
61 {
62 ex = e;
63 }
64 } else {
65 throw e$$;
66 }
67 }
68 if (ex != null) {
69 System.err.println ("Error in GenericFileAdapter: " + ex);
70 {
71 alert(ex)
72 }}return null;
73 }, "~S,~A");
74 c$.isJS = Clazz.defineMethod (c$, "isJS", 
75 function () {
76 {
77 return true;
78 }});
79 c$.getReader = Clazz.defineMethod (c$, "getReader", 
80 function (fileName, forceURL) {
81 if (!forceURL && !jalview.jsdev.GenericFileAdapter.isJS ()) return  new java.io.BufferedReader ( new java.io.FileReader (fileName));
82 if (fileName.indexOf ("//") < 0) fileName = "file://" + fileName;
83 return  new java.io.BufferedReader ( new java.io.InputStreamReader ( new java.net.URL (fileName).openStream ()));
84 }, "~S,~B");
85 });