b740cc3adcc568be499d4d08ac4e9ce3e95b99f3
[jalviewjs.git] / site / j2s / java / lang / StackTraceElement.js
1 Clazz.load(null,"java.lang.StackTraceElement",["java.lang.NullPointerException","$.StringBuilder"],function(){\r
2 c$=Clazz.decorateAsClass(function(){\r
3 this.declaringClass=null;\r
4 this.methodName=null;\r
5 this.fileName=null;\r
6 this.lineNumber=0;\r
7 Clazz.instantialize(this,arguments);\r
8 },java.lang,"StackTraceElement",null,java.io.Serializable);\r
9 Clazz.makeConstructor(c$,\r
10 function(cls,method,file,line){\r
11 if(cls==null||method==null){\r
12 throw new NullPointerException();\r
13 }this.declaringClass=cls;\r
14 this.methodName=method;\r
15 this.fileName=file;\r
16 this.lineNumber=line;\r
17 },"~S,~S,~S,~N");\r
18 Clazz.overrideMethod(c$,"equals",\r
19 function(obj){\r
20 if(!(Clazz.instanceOf(obj,StackTraceElement))){\r
21 return false;\r
22 }var castObj=obj;\r
23 if((this.methodName==null)||(castObj.methodName==null)){\r
24 return false;\r
25 }if(!this.getMethodName().equals(castObj.getMethodName())){\r
26 return false;\r
27 }if(!this.getClassName().equals(castObj.getClassName())){\r
28 return false;\r
29 }var localFileName=this.getFileName();\r
30 if(localFileName==null){\r
31 if(castObj.getFileName()!=null){\r
32 return false;\r
33 }}else{\r
34 if(!localFileName.equals(castObj.getFileName())){\r
35 return false;\r
36 }}if(this.getLineNumber()!=castObj.getLineNumber()){\r
37 return false;\r
38 }return true;\r
39 },"~O");\r
40 Clazz.defineMethod(c$,"getClassName",\r
41 function(){\r
42 return(this.declaringClass==null)?"<unknown class>":this.declaringClass;\r
43 });\r
44 Clazz.defineMethod(c$,"getFileName",\r
45 function(){\r
46 return this.fileName;\r
47 });\r
48 Clazz.defineMethod(c$,"getLineNumber",\r
49 function(){\r
50 return this.lineNumber;\r
51 });\r
52 Clazz.defineMethod(c$,"getMethodName",\r
53 function(){\r
54 return(this.methodName==null)?"<unknown method>":this.methodName;\r
55 });\r
56 Clazz.overrideMethod(c$,"hashCode",\r
57 function(){\r
58 if(this.methodName==null){\r
59 return 0;\r
60 }return this.methodName.hashCode()^this.declaringClass.hashCode();\r
61 });\r
62 Clazz.defineMethod(c$,"isNativeMethod",\r
63 function(){\r
64 return this.lineNumber==-2;\r
65 });\r
66 Clazz.overrideMethod(c$,"toString",\r
67 function(){\r
68 var buf=new StringBuilder(80);\r
69 buf.append(this.getClassName());\r
70 buf.append('.');\r
71 buf.append(this.getMethodName());\r
72 if(this.isNativeMethod()){\r
73 buf.append("(Native Method)");\r
74 }else{\r
75 var fName=this.getFileName();\r
76 if(fName==null){\r
77 buf.append("(Unknown Source)");\r
78 }else{\r
79 var lineNum=this.getLineNumber();\r
80 buf.append('(');\r
81 buf.append(fName);\r
82 if(lineNum>=0){\r
83 buf.append(':');\r
84 buf.append(lineNum);\r
85 }buf.append(')');\r
86 }}return buf.toString();\r
87 });\r
88 });\r