public class sun.jvm.hotspot.ui.FindInHeapPanel extends javax.swing.JPanel
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.ui.FindInHeapPanel
super_class: javax.swing.JPanel
{
private sun.jvm.hotspot.oops.RawHeapVisitor iterator;
descriptor: Lsun/jvm/hotspot/oops/RawHeapVisitor;
flags: (0x0002) ACC_PRIVATE
private long addressSize;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long usedSize;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long iterated;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.debugger.Address value;
descriptor: Lsun/jvm/hotspot/debugger/Address;
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.ui.ProgressBarPanel progressBar;
descriptor: Lsun/jvm/hotspot/ui/ProgressBarPanel;
flags: (0x0002) ACC_PRIVATE
private sun.jvm.hotspot.ui.HistoryComboBox addressField;
descriptor: Lsun/jvm/hotspot/ui/HistoryComboBox;
flags: (0x0002) ACC_PRIVATE
private javax.swing.JButton findButton;
descriptor: Ljavax/swing/JButton;
flags: (0x0002) ACC_PRIVATE
private javax.swing.JTextArea textArea;
descriptor: Ljavax/swing/JTextArea;
flags: (0x0002) ACC_PRIVATE
private java.util.ArrayList updates;
descriptor: Ljava/util/ArrayList;
flags: (0x0002) ACC_PRIVATE
private double lastFrac;
descriptor: D
flags: (0x0002) ACC_PRIVATE
static final double minUpdateFraction;
descriptor: D
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0.05
private boolean pendingUpdate;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=1
start local 0 0: aload 0
invokespecial javax.swing.JPanel.<init>:()V
1: aload 0
iconst_0
putfield sun.jvm.hotspot.ui.FindInHeapPanel.pendingUpdate:Z
2: aload 0
new java.awt.BorderLayout
dup
invokespecial java.awt.BorderLayout.<init>:()V
invokevirtual sun.jvm.hotspot.ui.FindInHeapPanel.setLayout:(Ljava/awt/LayoutManager;)V
3: new javax.swing.JPanel
dup
invokespecial javax.swing.JPanel.<init>:()V
astore 1
start local 1 4: aload 1
new javax.swing.BoxLayout
dup
aload 1
iconst_1
invokespecial javax.swing.BoxLayout.<init>:(Ljava/awt/Container;I)V
invokevirtual javax.swing.JPanel.setLayout:(Ljava/awt/LayoutManager;)V
5: new javax.swing.JPanel
dup
invokespecial javax.swing.JPanel.<init>:()V
astore 2
start local 2 6: aload 2
new javax.swing.BoxLayout
dup
aload 2
iconst_0
invokespecial javax.swing.BoxLayout.<init>:(Ljava/awt/Container;I)V
invokevirtual javax.swing.JPanel.setLayout:(Ljava/awt/LayoutManager;)V
7: aload 2
new javax.swing.JLabel
dup
ldc "Address to search for:"
invokespecial javax.swing.JLabel.<init>:(Ljava/lang/String;)V
invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
pop
8: aload 0
new sun.jvm.hotspot.ui.HistoryComboBox
dup
invokespecial sun.jvm.hotspot.ui.HistoryComboBox.<init>:()V
putfield sun.jvm.hotspot.ui.FindInHeapPanel.addressField:Lsun/jvm/hotspot/ui/HistoryComboBox;
9: aload 2
aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.addressField:Lsun/jvm/hotspot/ui/HistoryComboBox;
invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
pop
10: aload 0
invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getAddressSize:()J
putfield sun.jvm.hotspot.ui.FindInHeapPanel.addressSize:J
11: aload 0
new sun.jvm.hotspot.ui.FindInHeapPanel$1
dup
aload 0
invokespecial sun.jvm.hotspot.ui.FindInHeapPanel$1.<init>:(Lsun/jvm/hotspot/ui/FindInHeapPanel;)V
putfield sun.jvm.hotspot.ui.FindInHeapPanel.iterator:Lsun/jvm/hotspot/oops/RawHeapVisitor;
12: aload 0
new javax.swing.JButton
dup
ldc "Find"
invokespecial javax.swing.JButton.<init>:(Ljava/lang/String;)V
putfield sun.jvm.hotspot.ui.FindInHeapPanel.findButton:Ljavax/swing/JButton;
13: new sun.jvm.hotspot.ui.FindInHeapPanel$2
dup
aload 0
invokespecial sun.jvm.hotspot.ui.FindInHeapPanel$2.<init>:(Lsun/jvm/hotspot/ui/FindInHeapPanel;)V
astore 3
start local 3 14: aload 2
aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.findButton:Ljavax/swing/JButton;
invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
pop
15: aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.findButton:Ljavax/swing/JButton;
aload 3
invokevirtual javax.swing.JButton.addActionListener:(Ljava/awt/event/ActionListener;)V
16: aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.addressField:Lsun/jvm/hotspot/ui/HistoryComboBox;
aload 3
invokevirtual sun.jvm.hotspot.ui.HistoryComboBox.addActionListener:(Ljava/awt/event/ActionListener;)V
17: aload 1
aload 2
invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
pop
18: aload 0
new sun.jvm.hotspot.ui.ProgressBarPanel
dup
iconst_1
ldc "Search progress:"
invokespecial sun.jvm.hotspot.ui.ProgressBarPanel.<init>:(ILjava/lang/String;)V
putfield sun.jvm.hotspot.ui.FindInHeapPanel.progressBar:Lsun/jvm/hotspot/ui/ProgressBarPanel;
19: aload 1
aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.progressBar:Lsun/jvm/hotspot/ui/ProgressBarPanel;
invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
pop
20: aload 0
aload 1
ldc "North"
invokevirtual sun.jvm.hotspot.ui.FindInHeapPanel.add:(Ljava/awt/Component;Ljava/lang/Object;)V
21: aload 0
new javax.swing.JTextArea
dup
invokespecial javax.swing.JTextArea.<init>:()V
putfield sun.jvm.hotspot.ui.FindInHeapPanel.textArea:Ljavax/swing/JTextArea;
22: new javax.swing.JScrollPane
dup
aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.textArea:Ljavax/swing/JTextArea;
invokespecial javax.swing.JScrollPane.<init>:(Ljava/awt/Component;)V
astore 4
start local 4 23: aload 0
aload 4
ldc "Center"
invokevirtual sun.jvm.hotspot.ui.FindInHeapPanel.add:(Ljava/awt/Component;Ljava/lang/Object;)V
24: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lsun/jvm/hotspot/ui/FindInHeapPanel;
4 25 1 topPanel Ljavax/swing/JPanel;
6 25 2 panel Ljavax/swing/JPanel;
14 25 3 listener Ljava/awt/event/ActionListener;
23 25 4 scroller Ljavax/swing/JScrollPane;
private boolean reportResult(sun.jvm.hotspot.debugger.Address);
descriptor: (Lsun/jvm/hotspot/debugger/Address;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
dup
astore 2
monitorenter
1: aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.updates:Ljava/util/ArrayList;
new java.lang.StringBuilder
dup
ldc "found at "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
2: aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.pendingUpdate:Z
ifne 10
3: aload 0
iconst_1
putfield sun.jvm.hotspot.ui.FindInHeapPanel.pendingUpdate:Z
4: new sun.jvm.hotspot.ui.FindInHeapPanel$3
dup
aload 0
invokespecial sun.jvm.hotspot.ui.FindInHeapPanel$3.<init>:(Lsun/jvm/hotspot/ui/FindInHeapPanel;)V
invokestatic javax.swing.SwingUtilities.invokeLater:(Ljava/lang/Runnable;)V
5: goto 10
StackMap locals: sun.jvm.hotspot.ui.FindInHeapPanel sun.jvm.hotspot.debugger.Address sun.jvm.hotspot.ui.FindInHeapPanel
StackMap stack: java.lang.Throwable
6: astore 3
start local 3 7: aload 3
invokevirtual java.lang.Throwable.printStackTrace:()V
8: aload 2
monitorexit
9: iconst_1
ireturn
end local 3 10: StackMap locals:
StackMap stack:
aload 2
monitorexit
11: goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
12: aload 2
monitorexit
13: athrow
14: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/jvm/hotspot/ui/FindInHeapPanel;
0 15 1 addr Lsun/jvm/hotspot/debugger/Address;
7 10 3 t Ljava/lang/Throwable;
Exception table:
from to target type
1 5 6 Class java.lang.Throwable
1 9 12 any
10 11 12 any
12 13 12 any
MethodParameters:
Name Flags
addr final
private void clearResultWindow();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: new sun.jvm.hotspot.ui.FindInHeapPanel$4
dup
aload 0
invokespecial sun.jvm.hotspot.ui.FindInHeapPanel$4.<init>:(Lsun/jvm/hotspot/ui/FindInHeapPanel;)V
invokestatic javax.swing.SwingUtilities.invokeLater:(Ljava/lang/Runnable;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/ui/FindInHeapPanel;
private synchronized void updateResultWindow();
descriptor: ()V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.updates:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
ifle 6
1: aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.updates:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 1
start local 1 2: goto 4
3: StackMap locals: java.util.Iterator
StackMap stack:
aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.textArea:Ljavax/swing/JTextArea;
aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
invokevirtual javax.swing.JTextArea.append:(Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
5: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield sun.jvm.hotspot.ui.FindInHeapPanel.updates:Ljava/util/ArrayList;
end local 1 6: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.jvm.hotspot.ui.FindInHeapPanel.pendingUpdate:Z
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/jvm/hotspot/ui/FindInHeapPanel;
2 6 1 i Ljava/util/Iterator;
private void invokeInDispatchThread(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: invokestatic java.awt.EventQueue.isDispatchThread:()Z
ifeq 3
1: aload 1
invokeinterface java.lang.Runnable.run:()V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 1
invokestatic javax.swing.SwingUtilities.invokeLater:(Ljava/lang/Runnable;)V
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/jvm/hotspot/ui/FindInHeapPanel;
0 5 1 runnable Ljava/lang/Runnable;
MethodParameters:
Name Flags
runnable
private void updateProgressBar();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.iterated:J
l2d
aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.usedSize:J
l2d
ddiv
dstore 1
start local 1 1: dload 1
dconst_0
dcmpl
ifeq 2
dload 1
aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.lastFrac:D
dsub
ldc 0.05
dcmpl
ifle 6
2: StackMap locals: double
StackMap stack:
aload 0
dload 1
putfield sun.jvm.hotspot.ui.FindInHeapPanel.lastFrac:D
3: aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.iterated:J
aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.usedSize:J
lcmp
ifle 5
4: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "iterated "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.iterated:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " usedSize "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.jvm.hotspot.ui.FindInHeapPanel.usedSize:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
new sun.jvm.hotspot.ui.FindInHeapPanel$5
dup
aload 0
dload 1
invokespecial sun.jvm.hotspot.ui.FindInHeapPanel$5.<init>:(Lsun/jvm/hotspot/ui/FindInHeapPanel;D)V
invokestatic javax.swing.SwingUtilities.invokeLater:(Ljava/lang/Runnable;)V
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/jvm/hotspot/ui/FindInHeapPanel;
1 7 1 frac D
}
SourceFile: "FindInHeapPanel.java"
NestMembers:
sun.jvm.hotspot.ui.FindInHeapPanel$1 sun.jvm.hotspot.ui.FindInHeapPanel$2 sun.jvm.hotspot.ui.FindInHeapPanel$2$1 sun.jvm.hotspot.ui.FindInHeapPanel$2$1$1 sun.jvm.hotspot.ui.FindInHeapPanel$3 sun.jvm.hotspot.ui.FindInHeapPanel$4 sun.jvm.hotspot.ui.FindInHeapPanel$5
InnerClasses:
sun.jvm.hotspot.ui.FindInHeapPanel$1
sun.jvm.hotspot.ui.FindInHeapPanel$2
sun.jvm.hotspot.ui.FindInHeapPanel$3
sun.jvm.hotspot.ui.FindInHeapPanel$4
sun.jvm.hotspot.ui.FindInHeapPanel$5