1
2 package org.xwt.js;
3
4 import org.xwt.util.*;
5 import org.xwt.*;
6 import java.io.*;
7 import java.util.*;
8
9
10 public class JSExn extends Exception {
11 private Vec backtrace = new Vec();
12 private Object js = null;
13 public JSExn(Object js) { this.js = js; }
14 public String toString() { return "JSExn: " + js; }
15 public String getMessage() { return toString(); }
16 public Object getObject() { return js; }
17 public void addBacktrace(String sourceName, int lineNo) { backtrace.addElement(sourceName + ":" + lineNo); }
18 public String backtrace() {
19 StringBuffer sb = new StringBuffer(1024);
20 for(int i=0;i<backtrace.size();i++)
21 sb.append(" at " + (String) backtrace.elementAt(i) + "\n");
22 return sb.toString();
23 }
24 }
25
26
27 class JSRuntimeExn extends RuntimeException {
28 private Object js = null;
29 public JSRuntimeExn(Object js) { this.js = js; }
30 public String toString() { return "JSRuntimeExn: " + js; }
31 public String getMessage() { return toString(); }
32 public Object getObject() { return js; }
33 }
34
35