class com.sun.tools.hat.internal.server.ClassQuery extends com.sun.tools.hat.internal.server.QueryHandler
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.hat.internal.server.ClassQuery
super_class: com.sun.tools.hat.internal.server.QueryHandler
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // com.sun.tools.hat.internal.server.ClassQuery this
0: .line 50
aload 0 /* this */
invokespecial com.sun.tools.hat.internal.server.QueryHandler.<init>:()V
1: .line 51
return
end local 0 // com.sun.tools.hat.internal.server.ClassQuery this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/hat/internal/server/ClassQuery;
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 // com.sun.tools.hat.internal.server.ClassQuery this
0: .line 54
aload 0 /* this */
new java.lang.StringBuilder
dup
ldc "Class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.query:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.startHtml:(Ljava/lang/String;)V
1: .line 55
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.query:Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.model.Snapshot.findClass:(Ljava/lang/String;)Lcom/sun/tools/hat/internal/model/JavaClass;
astore 1 /* clazz */
start local 1 // com.sun.tools.hat.internal.model.JavaClass clazz
2: .line 56
aload 1 /* clazz */
ifnonnull 5
3: .line 57
aload 0 /* this */
new java.lang.StringBuilder
dup
ldc "class not found: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.query:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.error:(Ljava/lang/String;)V
4: .line 58
goto 6
5: .line 59
StackMap locals: com.sun.tools.hat.internal.model.JavaClass
StackMap stack:
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printFullClass:(Lcom/sun/tools/hat/internal/model/JavaClass;)V
6: .line 61
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.endHtml:()V
7: .line 62
return
end local 1 // com.sun.tools.hat.internal.model.JavaClass clazz
end local 0 // com.sun.tools.hat.internal.server.ClassQuery this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/hat/internal/server/ClassQuery;
2 8 1 clazz Lcom/sun/tools/hat/internal/model/JavaClass;
protected void printFullClass(com.sun.tools.hat.internal.model.JavaClass);
descriptor: (Lcom/sun/tools/hat/internal/model/JavaClass;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=6, args_size=2
start local 0 // com.sun.tools.hat.internal.server.ClassQuery this
start local 1 // com.sun.tools.hat.internal.model.JavaClass clazz
0: .line 65
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h1>"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
1: .line 66
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.model.JavaClass.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.print:(Ljava/lang/String;)V
2: .line 67
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "</h1>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
3: .line 69
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h2>Superclass:</h2>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
4: .line 70
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.model.JavaClass.getSuperclass:()Lcom/sun/tools/hat/internal/model/JavaClass;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printClass:(Lcom/sun/tools/hat/internal/model/JavaClass;)V
5: .line 72
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h2>Loader Details</h2>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
6: .line 73
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h3>ClassLoader:</h3>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
7: .line 74
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.model.JavaClass.getLoader:()Lcom/sun/tools/hat/internal/model/JavaThing;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printThing:(Lcom/sun/tools/hat/internal/model/JavaThing;)V
8: .line 76
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h3>Signers:</h3>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
9: .line 77
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.model.JavaClass.getSigners:()Lcom/sun/tools/hat/internal/model/JavaThing;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printThing:(Lcom/sun/tools/hat/internal/model/JavaThing;)V
10: .line 79
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h3>Protection Domain:</h3>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
11: .line 80
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.model.JavaClass.getProtectionDomain:()Lcom/sun/tools/hat/internal/model/JavaThing;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printThing:(Lcom/sun/tools/hat/internal/model/JavaThing;)V
12: .line 82
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h2>Subclasses:</h2>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
13: .line 83
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.model.JavaClass.getSubclasses:()[Lcom/sun/tools/hat/internal/model/JavaClass;
astore 2 /* sc */
start local 2 // com.sun.tools.hat.internal.model.JavaClass[] sc
14: .line 84
iconst_0
istore 3 /* i */
start local 3 // int i
15: goto 20
16: .line 85
StackMap locals: com.sun.tools.hat.internal.model.JavaClass[] int
StackMap stack:
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc " "
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
17: .line 86
aload 0 /* this */
aload 2 /* sc */
iload 3 /* i */
aaload
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printClass:(Lcom/sun/tools/hat/internal/model/JavaClass;)V
18: .line 87
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<br>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
19: .line 84
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
20: iload 3 /* i */
aload 2 /* sc */
arraylength
if_icmplt 16
end local 3 // int i
21: .line 90
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h2>Instance Data Members:</h2>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
22: .line 91
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.model.JavaClass.getFields:()[Lcom/sun/tools/hat/internal/model/JavaField;
invokevirtual com.sun.tools.hat.internal.model.JavaField[].clone:()Ljava/lang/Object;
checkcast com.sun.tools.hat.internal.model.JavaField[]
astore 3 /* ff */
start local 3 // com.sun.tools.hat.internal.model.JavaField[] ff
23: .line 92
aload 3 /* ff */
new com.sun.tools.hat.internal.server.ClassQuery$1
dup
aload 0 /* this */
invokespecial com.sun.tools.hat.internal.server.ClassQuery$1.<init>:(Lcom/sun/tools/hat/internal/server/ClassQuery;)V
invokestatic com.sun.tools.hat.internal.util.ArraySorter.sort:([Ljava/lang/Object;Lcom/sun/tools/hat/internal/util/Comparer;)V
24: .line 99
iconst_0
istore 4 /* i */
start local 4 // int i
25: goto 30
26: .line 100
StackMap locals: com.sun.tools.hat.internal.server.ClassQuery com.sun.tools.hat.internal.model.JavaClass com.sun.tools.hat.internal.model.JavaClass[] com.sun.tools.hat.internal.model.JavaField[] int
StackMap stack:
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc " "
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
27: .line 101
aload 0 /* this */
aload 3 /* ff */
iload 4 /* i */
aaload
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printField:(Lcom/sun/tools/hat/internal/model/JavaField;)V
28: .line 102
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<br>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
29: .line 99
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
30: iload 4 /* i */
aload 3 /* ff */
arraylength
if_icmplt 26
end local 4 // int i
31: .line 105
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h2>Static Data Members:</h2>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
32: .line 106
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.model.JavaClass.getStatics:()[Lcom/sun/tools/hat/internal/model/JavaStatic;
astore 4 /* ss */
start local 4 // com.sun.tools.hat.internal.model.JavaStatic[] ss
33: .line 107
iconst_0
istore 5 /* i */
start local 5 // int i
34: goto 38
35: .line 108
StackMap locals: com.sun.tools.hat.internal.server.ClassQuery com.sun.tools.hat.internal.model.JavaClass com.sun.tools.hat.internal.model.JavaClass[] com.sun.tools.hat.internal.model.JavaField[] com.sun.tools.hat.internal.model.JavaStatic[] int
StackMap stack:
aload 0 /* this */
aload 4 /* ss */
iload 5 /* i */
aaload
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printStatic:(Lcom/sun/tools/hat/internal/model/JavaStatic;)V
36: .line 109
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<br>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
37: .line 107
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
38: iload 5 /* i */
aload 4 /* ss */
arraylength
if_icmplt 35
end local 5 // int i
39: .line 112
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h2>Instances</h2>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
40: .line 114
aload 0 /* this */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printAnchorStart:()V
41: .line 115
aload 0 /* this */
new java.lang.StringBuilder
dup
ldc "instances/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.encodeForURL:(Lcom/sun/tools/hat/internal/model/JavaClass;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.print:(Ljava/lang/String;)V
42: .line 116
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "\">"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
43: .line 117
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "Exclude subclasses</a><br>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
44: .line 119
aload 0 /* this */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printAnchorStart:()V
45: .line 120
aload 0 /* this */
new java.lang.StringBuilder
dup
ldc "allInstances/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.encodeForURL:(Lcom/sun/tools/hat/internal/model/JavaClass;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.print:(Ljava/lang/String;)V
46: .line 121
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "\">"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
47: .line 122
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "Include subclasses</a><br>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
48: .line 125
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
invokevirtual com.sun.tools.hat.internal.model.Snapshot.getHasNewSet:()Z
ifeq 58
49: .line 126
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h2>New Instances</h2>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
50: .line 128
aload 0 /* this */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printAnchorStart:()V
51: .line 129
aload 0 /* this */
new java.lang.StringBuilder
dup
ldc "newInstances/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.encodeForURL:(Lcom/sun/tools/hat/internal/model/JavaClass;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.print:(Ljava/lang/String;)V
52: .line 130
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "\">"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
53: .line 131
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "Exclude subclasses</a><br>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
54: .line 133
aload 0 /* this */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printAnchorStart:()V
55: .line 134
aload 0 /* this */
new java.lang.StringBuilder
dup
ldc "allNewInstances/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.encodeForURL:(Lcom/sun/tools/hat/internal/model/JavaClass;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.print:(Ljava/lang/String;)V
56: .line 135
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "\">"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
57: .line 136
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "Include subclasses</a><br>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
58: .line 139
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h2>References summary by Type</h2>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
59: .line 140
aload 0 /* this */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printAnchorStart:()V
60: .line 141
aload 0 /* this */
new java.lang.StringBuilder
dup
ldc "refsByType/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.encodeForURL:(Lcom/sun/tools/hat/internal/model/JavaClass;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.print:(Ljava/lang/String;)V
61: .line 142
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "\">"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
62: .line 143
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "References summary by type</a>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
63: .line 145
aload 0 /* this */
aload 1 /* clazz */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printReferencesTo:(Lcom/sun/tools/hat/internal/model/JavaHeapObject;)V
64: .line 146
return
end local 4 // com.sun.tools.hat.internal.model.JavaStatic[] ss
end local 3 // com.sun.tools.hat.internal.model.JavaField[] ff
end local 2 // com.sun.tools.hat.internal.model.JavaClass[] sc
end local 1 // com.sun.tools.hat.internal.model.JavaClass clazz
end local 0 // com.sun.tools.hat.internal.server.ClassQuery this
LocalVariableTable:
Start End Slot Name Signature
0 65 0 this Lcom/sun/tools/hat/internal/server/ClassQuery;
0 65 1 clazz Lcom/sun/tools/hat/internal/model/JavaClass;
14 65 2 sc [Lcom/sun/tools/hat/internal/model/JavaClass;
15 21 3 i I
23 65 3 ff [Lcom/sun/tools/hat/internal/model/JavaField;
25 31 4 i I
33 65 4 ss [Lcom/sun/tools/hat/internal/model/JavaStatic;
34 39 5 i I
MethodParameters:
Name Flags
clazz
protected void printReferencesTo(com.sun.tools.hat.internal.model.JavaHeapObject);
descriptor: (Lcom/sun/tools/hat/internal/model/JavaHeapObject;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=5, args_size=2
start local 0 // com.sun.tools.hat.internal.server.ClassQuery this
start local 1 // com.sun.tools.hat.internal.model.JavaHeapObject obj
0: .line 149
aload 1 /* obj */
invokevirtual com.sun.tools.hat.internal.model.JavaHeapObject.getId:()J
ldc -1
lcmp
ifne 2
1: .line 150
return
2: .line 152
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h2>References to this object:</h2>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
3: .line 153
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
4: .line 154
aload 1 /* obj */
invokevirtual com.sun.tools.hat.internal.model.JavaHeapObject.getReferers:()Ljava/util/Enumeration;
astore 2 /* referers */
start local 2 // java.util.Enumeration referers
5: .line 155
goto 10
6: .line 156
StackMap locals: java.util.Enumeration
StackMap stack:
aload 2 /* referers */
invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
checkcast com.sun.tools.hat.internal.model.JavaHeapObject
astore 3 /* ref */
start local 3 // com.sun.tools.hat.internal.model.JavaHeapObject ref
7: .line 157
aload 0 /* this */
aload 3 /* ref */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printThing:(Lcom/sun/tools/hat/internal/model/JavaThing;)V
8: .line 158
aload 0 /* this */
new java.lang.StringBuilder
dup
ldc " : "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3 /* ref */
aload 1 /* obj */
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.snapshot:Lcom/sun/tools/hat/internal/model/Snapshot;
invokevirtual com.sun.tools.hat.internal.model.JavaHeapObject.describeReferenceTo:(Lcom/sun/tools/hat/internal/model/JavaThing;Lcom/sun/tools/hat/internal/model/Snapshot;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.print:(Ljava/lang/String;)V
9: .line 161
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<br>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
end local 3 // com.sun.tools.hat.internal.model.JavaHeapObject ref
10: .line 155
StackMap locals:
StackMap stack:
aload 2 /* referers */
invokeinterface java.util.Enumeration.hasMoreElements:()Z
ifne 6
11: .line 164
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<h2>Other Queries</h2>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
12: .line 165
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "Reference Chains from Rootset"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
13: .line 166
aload 1 /* obj */
invokevirtual com.sun.tools.hat.internal.model.JavaHeapObject.getId:()J
lstore 3 /* id */
start local 3 // long id
14: .line 168
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<ul><li>"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
15: .line 169
aload 0 /* this */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printAnchorStart:()V
16: .line 170
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "roots/"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
17: .line 171
aload 0 /* this */
lload 3 /* id */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printHex:(J)V
18: .line 172
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "\">"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
19: .line 173
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "Exclude weak refs</a>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
20: .line 175
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "<li>"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
21: .line 176
aload 0 /* this */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printAnchorStart:()V
22: .line 177
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "allRoots/"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
23: .line 178
aload 0 /* this */
lload 3 /* id */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printHex:(J)V
24: .line 179
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "\">"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
25: .line 180
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "Include weak refs</a></ul>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
26: .line 182
aload 0 /* this */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printAnchorStart:()V
27: .line 183
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "reachableFrom/"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
28: .line 184
aload 0 /* this */
lload 3 /* id */
invokevirtual com.sun.tools.hat.internal.server.ClassQuery.printHex:(J)V
29: .line 185
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "\">"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
30: .line 186
aload 0 /* this */
getfield com.sun.tools.hat.internal.server.ClassQuery.out:Ljava/io/PrintWriter;
ldc "Objects reachable from here</a><br>"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
31: .line 187
return
end local 3 // long id
end local 2 // java.util.Enumeration referers
end local 1 // com.sun.tools.hat.internal.model.JavaHeapObject obj
end local 0 // com.sun.tools.hat.internal.server.ClassQuery this
LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lcom/sun/tools/hat/internal/server/ClassQuery;
0 32 1 obj Lcom/sun/tools/hat/internal/model/JavaHeapObject;
5 32 2 referers Ljava/util/Enumeration;
7 10 3 ref Lcom/sun/tools/hat/internal/model/JavaHeapObject;
14 32 3 id J
MethodParameters:
Name Flags
obj
}
SourceFile: "ClassQuery.java"
NestMembers:
com.sun.tools.hat.internal.server.ClassQuery$1
InnerClasses:
com.sun.tools.hat.internal.server.ClassQuery$1