1 c$=Clazz.decorateAsClass(function(){
2 this.detailMessage=null;
5 Clazz.instantialize(this,arguments);
6 },java.lang,"Throwable",null,java.io.Serializable);
7 Clazz.prepareFields(c$,function(){
10 Clazz.makeConstructor(c$,
12 this.fillInStackTrace();
14 Clazz.makeConstructor(c$,
16 this.fillInStackTrace();
17 this.detailMessage=message;
19 Clazz.makeConstructor(c$,
20 function(message,cause){
21 this.fillInStackTrace();
22 this.detailMessage=message;
25 Clazz.makeConstructor(c$,
27 this.fillInStackTrace();
28 this.detailMessage=(cause==null?null:cause.toString());
31 Clazz.defineMethod(c$,"getMessage",
34 if(typeof this.message!="undefined"){
37 }return this.detailMessage;
39 Clazz.defineMethod(c$,"getLocalizedMessage",
41 return this.getMessage();
43 Clazz.defineMethod(c$,"getCause",
45 return(this.cause===this?null:this.cause);
47 Clazz.defineMethod(c$,"initCause",
49 if(this.cause!==this)throw new IllegalStateException("Can't overwrite cause");
50 if(cause===this)throw new IllegalArgumentException("Self-causation not permitted");
54 Clazz.overrideMethod(c$,"toString",
56 var s=this.getClass().getName();
57 var message=this.getLocalizedMessage();
58 return(message!=null)?(s+": "+message):s;
60 Clazz.defineMethod(c$,"printStackTrace",
62 System.err.println(this);
63 for(var i=0;i<this.stackTrace.length;i++){
64 var t=this.stackTrace[i];
65 var x=t.methodName.indexOf("(");
66 var n=t.methodName.substring(0,x).replace(/\s+/g,"");
67 if(n!="construct"||t.nativeClazz==null
68 ||Clazz.getInheritedLevel(t.nativeClazz,Throwable)<0){
69 System.err.println(t);
73 Clazz.defineMethod(c$,"printStackTrace",
75 this.printStackTrace();
76 },"java.io.PrintStream");
77 Clazz.defineMethod(c$,"printStackTrace",
79 this.printStackTrace();
80 },"java.io.PrintWriter");
81 Clazz.defineMethod(c$,"fillInStackTrace",
83 this.stackTrace=new Array();
84 var caller=arguments.callee.caller;
86 var callerList=new Array();
87 var index=Clazz.callingStackTraces.length-1;
89 while(index>-1||caller!=null){
92 if(!noLooping||caller==Clazz.tryToSearchAndExecute||caller==Clazz.superCall||caller==null){
97 superCaller=Clazz.callingStackTraces[index].caller;
98 nativeClazz=Clazz.callingStackTraces[index].owner;
102 if(superCaller.claxxOwner!=null){
103 nativeClazz=superCaller.claxxOwner;
104 }else if(superCaller.exClazz!=null){
105 nativeClazz=superCaller.exClazz;
108 var st=new StackTraceElement(
109 ((nativeClazz!=null&&nativeClazz.__CLASS_NAME__.length!=0)?
110 nativeClazz.__CLASS_NAME__:"anonymous"),
111 ((superCaller.exName==null)?"anonymous":superCaller.exName)
112 +" ("+Clazz.getParamsType(superCaller.arguments)+")",
114 st.nativeClazz=nativeClazz;
115 this.stackTrace[this.stackTrace.length]=st;
116 for(var i=0;i<callerList.length;i++){
117 if(callerList[i]==superCaller){
119 var st=new StackTraceElement("lost","missing",null,-3);
121 this.stackTrace[this.stackTrace.length]=st;
126 if(superCaller!=null){
127 callerList[callerList.length]=superCaller;
129 caller=superCaller.arguments.callee.caller;
131 Clazz.initializingException=false;
134 Clazz.defineMethod(c$,"setStackTrace",
135 function(stackTrace){
136 var defensiveCopy=stackTrace.clone();
137 for(var i=0;i<defensiveCopy.length;i++)if(defensiveCopy[i]==null)throw new NullPointerException("stackTrace["+i+"]");
139 this.stackTrace=defensiveCopy;
142 c$=Clazz.decorateAsClass(function(){
143 this.declaringClass=null;
144 this.methodName=null;
147 Clazz.instantialize(this,arguments);
148 },java.lang,"StackTraceElement",null,java.io.Serializable);
149 Clazz.makeConstructor(c$,
150 function(cls,method,file,line){
151 if(cls==null||method==null){
152 throw new NullPointerException();
153 }this.declaringClass=cls;
154 this.methodName=method;
156 this.lineNumber=line;
158 Clazz.overrideMethod(c$,"equals",
160 if(!(Clazz.instanceOf(obj,StackTraceElement))){
163 if((this.methodName==null)||(castObj.methodName==null)){
165 }if(!this.getMethodName().equals(castObj.getMethodName())){
167 }if(!this.getClassName().equals(castObj.getClassName())){
169 }var localFileName=this.getFileName();
170 if(localFileName==null){
171 if(castObj.getFileName()!=null){
174 if(!localFileName.equals(castObj.getFileName())){
176 }}if(this.getLineNumber()!=castObj.getLineNumber()){
180 Clazz.defineMethod(c$,"getClassName",
182 return(this.declaringClass==null)?"<unknown class>":this.declaringClass;
184 Clazz.defineMethod(c$,"getFileName",
186 return this.fileName;
188 Clazz.defineMethod(c$,"getLineNumber",
190 return this.lineNumber;
192 Clazz.defineMethod(c$,"getMethodName",
194 return(this.methodName==null)?"<unknown method>":this.methodName;
196 Clazz.overrideMethod(c$,"hashCode",
198 if(this.methodName==null){
200 }return this.methodName.hashCode()^this.declaringClass.hashCode();
202 Clazz.defineMethod(c$,"isNativeMethod",
204 return this.lineNumber==-2;
206 Clazz.overrideMethod(c$,"toString",
208 var buf=new StringBuilder(80);
209 buf.append(this.getClassName());
211 buf.append(this.getMethodName());
212 if(this.isNativeMethod()){
213 buf.append("(Native Method)");
215 var fName=this.getFileName();
217 buf.append("(Unknown Source)");
219 var lineNum=this.getLineNumber();
226 }}return buf.toString();
229 c$=Clazz.declareType(java.lang,"Error",Throwable);
231 c$=Clazz.declareType(java.lang,"LinkageError",Error);
233 c$=Clazz.declareType(java.lang,"IncompatibleClassChangeError",LinkageError);
235 c$=Clazz.declareType(java.lang,"AbstractMethodError",IncompatibleClassChangeError);
237 c$=Clazz.declareType(java.lang,"AssertionError",Error);
238 Clazz.makeConstructor(c$,
239 function(detailMessage){
240 Clazz.superConstructor(this,AssertionError,[String.valueOf(detailMessage),(Clazz.instanceOf(detailMessage,Throwable)?detailMessage:null)]);
242 Clazz.makeConstructor(c$,
243 function(detailMessage){
244 this.construct(String.valueOf(detailMessage));
246 Clazz.makeConstructor(c$,
247 function(detailMessage){
248 this.construct(String.valueOf(detailMessage));
250 Clazz.makeConstructor(c$,
251 function(detailMessage){
252 this.construct(Integer.toString(detailMessage));
254 Clazz.makeConstructor(c$,
255 function(detailMessage){
256 this.construct(Long.toString(detailMessage));
258 Clazz.makeConstructor(c$,
259 function(detailMessage){
260 this.construct(Float.toString(detailMessage));
262 Clazz.makeConstructor(c$,
263 function(detailMessage){
264 this.construct(Double.toString(detailMessage));
267 c$=Clazz.declareType(java.lang,"ClassCircularityError",LinkageError);
269 c$=Clazz.declareType(java.lang,"ClassFormatError",LinkageError);
271 c$=Clazz.decorateAsClass(function(){
273 Clazz.instantialize(this,arguments);
274 },java.lang,"ExceptionInInitializerError",LinkageError);
275 Clazz.makeConstructor(c$,
277 Clazz.superConstructor(this,ExceptionInInitializerError);
278 this.initCause(null);
280 Clazz.makeConstructor(c$,
281 function(detailMessage){
282 Clazz.superConstructor(this,ExceptionInInitializerError,[detailMessage]);
283 this.initCause(null);
285 Clazz.makeConstructor(c$,
287 Clazz.superConstructor(this,ExceptionInInitializerError);
288 this.exception=exception;
289 this.initCause(exception);
291 Clazz.defineMethod(c$,"getException",
293 return this.exception;
295 Clazz.overrideMethod(c$,"getCause",
297 return this.exception;
300 c$=Clazz.declareType(java.lang,"IllegalAccessError",IncompatibleClassChangeError);
302 c$=Clazz.declareType(java.lang,"InstantiationError",IncompatibleClassChangeError);
304 c$=Clazz.declareType(java.lang,"VirtualMachineError",Error);
306 c$=Clazz.declareType(java.lang,"InternalError",VirtualMachineError);
308 c$=Clazz.declareType(java.lang,"NoClassDefFoundError",LinkageError);
310 c$=Clazz.declareType(java.lang,"NoSuchFieldError",IncompatibleClassChangeError);
312 c$=Clazz.declareType(java.lang,"NoSuchMethodError",IncompatibleClassChangeError);
314 c$=Clazz.declareType(java.lang,"OutOfMemoryError",VirtualMachineError);
316 c$=Clazz.declareType(java.lang,"StackOverflowError",VirtualMachineError);
318 c$=Clazz.declareType(java.lang,"UnknownError",VirtualMachineError);
320 c$=Clazz.declareType(java.lang,"UnsatisfiedLinkError",LinkageError);
322 c$=Clazz.declareType(java.lang,"UnsupportedClassVersionError",ClassFormatError);
324 c$=Clazz.declareType(java.lang,"VerifyError",LinkageError);
326 c$=Clazz.declareType(java.lang,"ThreadDeath",Error);
327 Clazz.makeConstructor(c$,
329 Clazz.superConstructor(this,ThreadDeath,[]);
332 c$=Clazz.declareType(java.lang,"Exception",Throwable);
334 c$=Clazz.declareType(java.lang,"RuntimeException",Exception);
336 c$=Clazz.declareType(java.lang,"ArithmeticException",RuntimeException);
338 c$=Clazz.declareType(java.lang,"IndexOutOfBoundsException",RuntimeException);
340 c$=Clazz.declareType(java.lang,"ArrayIndexOutOfBoundsException",IndexOutOfBoundsException);
341 Clazz.makeConstructor(c$,
343 Clazz.superConstructor(this,ArrayIndexOutOfBoundsException,["Array index out of range: "+index]);
346 c$=Clazz.declareType(java.lang,"ArrayStoreException",RuntimeException);
348 c$=Clazz.declareType(java.lang,"ClassCastException",RuntimeException);
350 c$=Clazz.decorateAsClass(function(){
352 Clazz.instantialize(this,arguments);
353 },java.lang,"ClassNotFoundException",Exception);
354 Clazz.makeConstructor(c$,
356 Clazz.superConstructor(this,ClassNotFoundException,[Clazz.castNullAs("Throwable")]);
358 Clazz.makeConstructor(c$,
359 function(detailMessage){
360 Clazz.superConstructor(this,ClassNotFoundException,[detailMessage,null]);
362 Clazz.makeConstructor(c$,
363 function(detailMessage,exception){
364 Clazz.superConstructor(this,ClassNotFoundException,[detailMessage]);
367 Clazz.defineMethod(c$,"getException",
371 Clazz.overrideMethod(c$,"getCause",
376 c$=Clazz.declareType(java.lang,"CloneNotSupportedException",Exception);
378 c$=Clazz.declareType(java.lang,"IllegalAccessException",Exception);
380 c$=Clazz.declareType(java.lang,"IllegalArgumentException",RuntimeException);
381 Clazz.makeConstructor(c$,
383 Clazz.superConstructor(this,IllegalArgumentException,[(cause==null?null:cause.toString()),cause]);
386 c$=Clazz.declareType(java.lang,"IllegalMonitorStateException",RuntimeException);
388 c$=Clazz.declareType(java.lang,"IllegalStateException",RuntimeException);
389 Clazz.makeConstructor(c$,
391 Clazz.superConstructor(this,IllegalStateException,[(cause==null?null:cause.toString()),cause]);
394 c$=Clazz.declareType(java.lang,"IllegalThreadStateException",IllegalArgumentException);
396 c$=Clazz.declareType(java.lang,"InstantiationException",Exception);
398 c$=Clazz.declareType(java.lang,"InterruptedException",Exception);
400 c$=Clazz.declareType(java.lang,"NegativeArraySizeException",RuntimeException);
402 c$=Clazz.declareType(java.lang,"NoSuchFieldException",Exception);
404 c$=Clazz.declareType(java.lang,"NoSuchMethodException",Exception);
406 c$=Clazz.declareType(java.lang,"NullPointerException",RuntimeException);
408 c$=Clazz.declareType(java.lang,"NumberFormatException",IllegalArgumentException);
410 c$=Clazz.declareType(java.lang,"SecurityException",RuntimeException);
411 Clazz.makeConstructor(c$,
413 Clazz.superConstructor(this,SecurityException,[(cause==null?null:cause.toString()),cause]);
416 c$=Clazz.declareType(java.lang,"StringIndexOutOfBoundsException",IndexOutOfBoundsException);
417 Clazz.makeConstructor(c$,
419 Clazz.superConstructor(this,StringIndexOutOfBoundsException,["String index out of range: "+index]);
422 c$=Clazz.declareType(java.lang,"UnsupportedOperationException",RuntimeException);
423 Clazz.makeConstructor(c$,
425 Clazz.superConstructor(this,UnsupportedOperationException,[]);
427 Clazz.makeConstructor(c$,
429 Clazz.superConstructor(this,UnsupportedOperationException,[(cause==null?null:cause.toString()),cause]);
432 c$=Clazz.decorateAsClass(function(){
434 Clazz.instantialize(this,arguments);
435 },java.lang.reflect,"InvocationTargetException",Exception);
436 Clazz.makeConstructor(c$,
438 Clazz.superConstructor(this,java.lang.reflect.InvocationTargetException,[Clazz.castNullAs("Throwable")]);
440 Clazz.makeConstructor(c$,
442 Clazz.superConstructor(this,java.lang.reflect.InvocationTargetException,[null,exception]);
443 this.target=exception;
445 Clazz.makeConstructor(c$,
446 function(exception,detailMessage){
447 Clazz.superConstructor(this,java.lang.reflect.InvocationTargetException,[detailMessage,exception]);
448 this.target=exception;
450 Clazz.defineMethod(c$,"getTargetException",
454 Clazz.overrideMethod(c$,"getCause",
459 c$=Clazz.decorateAsClass(function(){
460 this.undeclaredThrowable=null;
461 Clazz.instantialize(this,arguments);
462 },java.lang.reflect,"UndeclaredThrowableException",RuntimeException);
463 Clazz.makeConstructor(c$,
465 Clazz.superConstructor(this,java.lang.reflect.UndeclaredThrowableException);
466 this.undeclaredThrowable=exception;
467 this.initCause(exception);
469 Clazz.makeConstructor(c$,
470 function(exception,detailMessage){
471 Clazz.superConstructor(this,java.lang.reflect.UndeclaredThrowableException,[detailMessage]);
472 this.undeclaredThrowable=exception;
473 this.initCause(exception);
475 Clazz.defineMethod(c$,"getUndeclaredThrowable",
477 return this.undeclaredThrowable;
479 Clazz.overrideMethod(c$,"getCause",
481 return this.undeclaredThrowable;
484 c$=Clazz.declareType(java.io,"IOException",Exception);
486 c$=Clazz.declareType(java.io,"CharConversionException",java.io.IOException);
488 c$=Clazz.declareType(java.io,"EOFException",java.io.IOException);
490 c$=Clazz.declareType(java.io,"FileNotFoundException",java.io.IOException);
492 c$=Clazz.decorateAsClass(function(){
493 this.bytesTransferred=0;
494 Clazz.instantialize(this,arguments);
495 },java.io,"InterruptedIOException",java.io.IOException);
497 c$=Clazz.declareType(java.io,"ObjectStreamException",java.io.IOException);
499 c$=Clazz.decorateAsClass(function(){
501 Clazz.instantialize(this,arguments);
502 },java.io,"InvalidClassException",java.io.ObjectStreamException);
503 Clazz.makeConstructor(c$,
504 function(className,detailMessage){
505 Clazz.superConstructor(this,java.io.InvalidClassException,[detailMessage]);
506 this.classname=className;
508 Clazz.defineMethod(c$,"getMessage",
510 var msg=Clazz.superCall(this,java.io.InvalidClassException,"getMessage",[]);
511 if(this.classname!=null){
512 msg=this.classname+';' + ' '+msg;
516 c$=Clazz.declareType(java.io,"InvalidObjectException",java.io.ObjectStreamException);
518 c$=Clazz.declareType(java.io,"NotActiveException",java.io.ObjectStreamException);
520 c$=Clazz.declareType(java.io,"NotSerializableException",java.io.ObjectStreamException);
522 c$=Clazz.decorateAsClass(function(){
525 Clazz.instantialize(this,arguments);
526 },java.io,"OptionalDataException",java.io.ObjectStreamException);
528 c$=Clazz.declareType(java.io,"StreamCorruptedException",java.io.ObjectStreamException);
530 c$=Clazz.declareType(java.io,"SyncFailedException",java.io.IOException);
532 c$=Clazz.declareType(java.io,"UnsupportedEncodingException",java.io.IOException);
534 c$=Clazz.declareType(java.io,"UTFDataFormatException",java.io.IOException);
536 c$=Clazz.decorateAsClass(function(){
538 Clazz.instantialize(this,arguments);
539 },java.io,"WriteAbortedException",java.io.ObjectStreamException);
540 Clazz.makeConstructor(c$,
541 function(detailMessage,rootCause){
542 Clazz.superConstructor(this,java.io.WriteAbortedException,[detailMessage]);
543 this.detail=rootCause;
544 this.initCause(rootCause);
546 Clazz.defineMethod(c$,"getMessage",
548 var msg=Clazz.superCall(this,java.io.WriteAbortedException,"getMessage",[]);
549 if(this.detail!=null){
550 msg=msg+"; "+this.detail.toString();
553 Clazz.overrideMethod(c$,"getCause",
558 c$=Clazz.declareType(java.util,"ConcurrentModificationException",RuntimeException);
559 Clazz.makeConstructor(c$,
561 Clazz.superConstructor(this,java.util.ConcurrentModificationException,[]);
564 c$=Clazz.declareType(java.util,"EmptyStackException",RuntimeException);
566 c$=Clazz.decorateAsClass(function(){
569 Clazz.instantialize(this,arguments);
570 },java.util,"MissingResourceException",RuntimeException);
571 Clazz.makeConstructor(c$,
572 function(detailMessage,className,resourceName){
573 Clazz.superConstructor(this,java.util.MissingResourceException,[detailMessage]);
574 this.className=className;
575 this.key=resourceName;
577 Clazz.defineMethod(c$,"getClassName",
579 return this.className;
581 Clazz.defineMethod(c$,"getKey",
586 c$=Clazz.declareType(java.util,"NoSuchElementException",RuntimeException);
588 c$=Clazz.declareType(java.util,"TooManyListenersException",Exception);