class com.sun.tools.example.debug.gui.LaunchTool
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.example.debug.gui.LaunchTool
super_class: java.lang.Object
{
private final com.sun.tools.example.debug.bdi.ExecutionManager runtime;
descriptor: Lcom/sun/tools/example/debug/bdi/ExecutionManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private void <init>(com.sun.tools.example.debug.bdi.ExecutionManager);
descriptor: (Lcom/sun/tools/example/debug/bdi/ExecutionManager;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.sun.tools.example.debug.gui.LaunchTool.runtime:Lcom/sun/tools/example/debug/bdi/ExecutionManager;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/example/debug/gui/LaunchTool;
0 3 1 runtime Lcom/sun/tools/example/debug/bdi/ExecutionManager;
MethodParameters:
Name Flags
runtime
private com.sun.jdi.connect.Connector selectConnector();
descriptor: ()Lcom/sun/jdi/connect/Connector;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=11, args_size=1
start local 0 0: new javax.swing.JDialog
dup
invokespecial javax.swing.JDialog.<init>:()V
astore 1
start local 1 1: aload 1
invokevirtual javax.swing.JDialog.getContentPane:()Ljava/awt/Container;
astore 2
start local 2 2: new javax.swing.JPanel
dup
invokespecial javax.swing.JPanel.<init>:()V
astore 3
start local 3 3: new javax.swing.ButtonGroup
dup
invokespecial javax.swing.ButtonGroup.<init>:()V
astore 4
start local 4 4: invokestatic com.sun.jdi.Bootstrap.virtualMachineManager:()Lcom/sun/jdi/VirtualMachineManager;
astore 5
start local 5 5: aload 5
invokeinterface com.sun.jdi.VirtualMachineManager.allConnectors:()Ljava/util/List;
astore 6
start local 6 6: new java.util.HashMap
dup
aload 6
invokeinterface java.util.List.size:()I
ldc 0.5
invokespecial java.util.HashMap.<init>:(IF)V
astore 7
start local 7 7: aload 1
iconst_1
invokevirtual javax.swing.JDialog.setModal:(Z)V
8: aload 1
ldc "Select Connector Type"
invokevirtual javax.swing.JDialog.setTitle:(Ljava/lang/String;)V
9: aload 3
new javax.swing.BoxLayout
dup
aload 3
iconst_1
invokespecial javax.swing.BoxLayout.<init>:(Ljava/awt/Container;I)V
invokevirtual javax.swing.JPanel.setLayout:(Ljava/awt/LayoutManager;)V
10: aload 6
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 16
StackMap locals: com.sun.tools.example.debug.gui.LaunchTool javax.swing.JDialog java.awt.Container javax.swing.JPanel javax.swing.ButtonGroup com.sun.jdi.VirtualMachineManager java.util.List java.util.Map top java.util.Iterator
StackMap stack:
11: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.jdi.connect.Connector
astore 8
start local 8 12: new javax.swing.JRadioButton
dup
aload 8
invokeinterface com.sun.jdi.connect.Connector.description:()Ljava/lang/String;
invokespecial javax.swing.JRadioButton.<init>:(Ljava/lang/String;)V
astore 10
start local 10 13: aload 7
aload 10
invokevirtual javax.swing.JRadioButton.getModel:()Ljavax/swing/ButtonModel;
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
14: aload 3
aload 10
invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
pop
15: aload 4
aload 10
invokevirtual javax.swing.ButtonGroup.add:(Ljavax/swing/AbstractButton;)V
end local 10 end local 8 16: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
17: aload 2
aload 3
invokevirtual java.awt.Container.add:(Ljava/awt/Component;)Ljava/awt/Component;
pop
18: iconst_1
newarray 4
astore 8
start local 8 19: aload 0
aload 1
new com.sun.tools.example.debug.gui.LaunchTool$1
dup
aload 0
aload 4
aload 1
aload 8
invokespecial com.sun.tools.example.debug.gui.LaunchTool$1.<init>:(Lcom/sun/tools/example/debug/gui/LaunchTool;Ljavax/swing/ButtonGroup;Ljavax/swing/JDialog;[Z)V
invokevirtual com.sun.tools.example.debug.gui.LaunchTool.okCancel:(Ljavax/swing/JDialog;Ljava/awt/event/ActionListener;)Ljavax/swing/JPanel;
astore 9
start local 9 20: aload 2
ldc "South"
aload 9
invokevirtual java.awt.Container.add:(Ljava/lang/String;Ljava/awt/Component;)Ljava/awt/Component;
pop
21: aload 1
invokevirtual javax.swing.JDialog.pack:()V
22: aload 1
iconst_1
invokevirtual javax.swing.JDialog.setVisible:(Z)V
23: aload 8
iconst_0
baload
ifeq 25
24: aload 7
aload 4
invokevirtual javax.swing.ButtonGroup.getSelection:()Ljavax/swing/ButtonModel;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.jdi.connect.Connector
goto 26
25: StackMap locals: com.sun.tools.example.debug.gui.LaunchTool javax.swing.JDialog java.awt.Container javax.swing.JPanel javax.swing.ButtonGroup com.sun.jdi.VirtualMachineManager java.util.List java.util.Map boolean[] javax.swing.JPanel
StackMap stack:
aconst_null
26: StackMap locals:
StackMap stack: com.sun.jdi.connect.Connector
areturn
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/sun/tools/example/debug/gui/LaunchTool;
1 27 1 dialog Ljavax/swing/JDialog;
2 27 2 content Ljava/awt/Container;
3 27 3 radioPanel Ljavax/swing/JPanel;
4 27 4 radioGroup Ljavax/swing/ButtonGroup;
5 27 5 manager Lcom/sun/jdi/VirtualMachineManager;
6 27 6 all Ljava/util/List<Lcom/sun/jdi/connect/Connector;>;
7 27 7 modelToConnector Ljava/util/Map<Ljavax/swing/ButtonModel;Lcom/sun/jdi/connect/Connector;>;
12 16 8 connector Lcom/sun/jdi/connect/Connector;
13 16 10 radio Ljavax/swing/JRadioButton;
19 27 8 oked [Z
20 27 9 buttonPanel Ljavax/swing/JPanel;
private void configureAndConnect(com.sun.jdi.connect.Connector);
descriptor: (Lcom/sun/jdi/connect/Connector;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=11, args_size=2
start local 0 start local 1 0: new javax.swing.JDialog
dup
invokespecial javax.swing.JDialog.<init>:()V
astore 2
start local 2 1: aload 1
invokeinterface com.sun.jdi.connect.Connector.defaultArguments:()Ljava/util/Map;
astore 3
start local 3 2: aload 2
iconst_1
invokevirtual javax.swing.JDialog.setModal:(Z)V
3: aload 2
ldc "Connector Arguments"
invokevirtual javax.swing.JDialog.setTitle:(Ljava/lang/String;)V
4: aload 2
invokevirtual javax.swing.JDialog.getContentPane:()Ljava/awt/Container;
astore 4
start local 4 5: new javax.swing.JPanel
dup
invokespecial javax.swing.JPanel.<init>:()V
astore 5
start local 5 6: invokestatic javax.swing.BorderFactory.createEtchedBorder:()Ljavax/swing/border/Border;
astore 6
start local 6 7: aload 6
8: aload 1
invokeinterface com.sun.jdi.connect.Connector.description:()Ljava/lang/String;
9: iconst_1
iconst_2
10: invokestatic javax.swing.BorderFactory.createTitledBorder:(Ljavax/swing/border/Border;Ljava/lang/String;II)Ljavax/swing/border/TitledBorder;
pop
11: aload 5
aload 6
invokevirtual javax.swing.JPanel.setBorder:(Ljavax/swing/border/Border;)V
12: aload 5
new javax.swing.BoxLayout
dup
aload 5
iconst_1
invokespecial javax.swing.BoxLayout.<init>:(Ljava/awt/Container;I)V
invokevirtual javax.swing.JPanel.setLayout:(Ljava/awt/LayoutManager;)V
13: new java.util.ArrayList
dup
aload 3
invokeinterface java.util.Map.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 7
start local 7 14: aload 3
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 9
goto 21
StackMap locals: com.sun.tools.example.debug.gui.LaunchTool com.sun.jdi.connect.Connector javax.swing.JDialog java.util.Map java.awt.Container javax.swing.JPanel javax.swing.border.Border java.util.List top java.util.Iterator
StackMap stack:
15: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.jdi.connect.Connector$Argument
astore 8
start local 8 16: aload 8
instanceof com.sun.jdi.connect.Connector$BooleanArgument
ifeq 19
17: new com.sun.tools.example.debug.gui.LaunchTool$BooleanArgRep
dup
aload 0
aload 8
checkcast com.sun.jdi.connect.Connector$BooleanArgument
aload 5
invokespecial com.sun.tools.example.debug.gui.LaunchTool$BooleanArgRep.<init>:(Lcom/sun/tools/example/debug/gui/LaunchTool;Lcom/sun/jdi/connect/Connector$BooleanArgument;Ljavax/swing/JPanel;)V
astore 10
start local 10 18: goto 20
end local 10 19: StackMap locals: com.sun.tools.example.debug.gui.LaunchTool com.sun.jdi.connect.Connector javax.swing.JDialog java.util.Map java.awt.Container javax.swing.JPanel javax.swing.border.Border java.util.List com.sun.jdi.connect.Connector$Argument java.util.Iterator
StackMap stack:
new com.sun.tools.example.debug.gui.LaunchTool$StringArgRep
dup
aload 0
aload 8
aload 5
invokespecial com.sun.tools.example.debug.gui.LaunchTool$StringArgRep.<init>:(Lcom/sun/tools/example/debug/gui/LaunchTool;Lcom/sun/jdi/connect/Connector$Argument;Ljavax/swing/JPanel;)V
astore 10
start local 10 20: StackMap locals: com.sun.tools.example.debug.gui.LaunchTool$ArgRep
StackMap stack:
aload 7
aload 10
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 10 end local 8 21: StackMap locals: com.sun.tools.example.debug.gui.LaunchTool com.sun.jdi.connect.Connector javax.swing.JDialog java.util.Map java.awt.Container javax.swing.JPanel javax.swing.border.Border java.util.List top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
22: aload 4
aload 5
invokevirtual java.awt.Container.add:(Ljava/awt/Component;)Ljava/awt/Component;
pop
23: aload 0
aload 2
new com.sun.tools.example.debug.gui.LaunchTool$2
dup
aload 0
aload 7
aload 2
aload 1
aload 3
invokespecial com.sun.tools.example.debug.gui.LaunchTool$2.<init>:(Lcom/sun/tools/example/debug/gui/LaunchTool;Ljava/util/List;Ljavax/swing/JDialog;Lcom/sun/jdi/connect/Connector;Ljava/util/Map;)V
invokevirtual com.sun.tools.example.debug.gui.LaunchTool.okCancel:(Ljavax/swing/JDialog;Ljava/awt/event/ActionListener;)Ljavax/swing/JPanel;
astore 8
start local 8 24: aload 4
ldc "South"
aload 8
invokevirtual java.awt.Container.add:(Ljava/lang/String;Ljava/awt/Component;)Ljava/awt/Component;
pop
25: aload 2
invokevirtual javax.swing.JDialog.pack:()V
26: aload 2
iconst_1
invokevirtual javax.swing.JDialog.setVisible:(Z)V
27: return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lcom/sun/tools/example/debug/gui/LaunchTool;
0 28 1 connector Lcom/sun/jdi/connect/Connector;
1 28 2 dialog Ljavax/swing/JDialog;
2 28 3 args Ljava/util/Map<Ljava/lang/String;Lcom/sun/jdi/connect/Connector$Argument;>;
5 28 4 content Ljava/awt/Container;
6 28 5 guts Ljavax/swing/JPanel;
7 28 6 etched Ljavax/swing/border/Border;
14 28 7 argReps Ljava/util/List<Lcom/sun/tools/example/debug/gui/LaunchTool$ArgRep;>;
16 21 8 arg Lcom/sun/jdi/connect/Connector$Argument;
18 19 10 ar Lcom/sun/tools/example/debug/gui/LaunchTool$ArgRep;
20 21 10 ar Lcom/sun/tools/example/debug/gui/LaunchTool$ArgRep;
24 28 8 buttonPanel Ljavax/swing/JPanel;
MethodParameters:
Name Flags
connector final
private javax.swing.JPanel okCancel(javax.swing.JDialog, java.awt.event.ActionListener);
descriptor: (Ljavax/swing/JDialog;Ljava/awt/event/ActionListener;)Ljavax/swing/JPanel;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: new javax.swing.JPanel
dup
invokespecial javax.swing.JPanel.<init>:()V
astore 3
start local 3 1: new javax.swing.JButton
dup
ldc "OK"
invokespecial javax.swing.JButton.<init>:(Ljava/lang/String;)V
astore 4
start local 4 2: new javax.swing.JButton
dup
ldc "Cancel"
invokespecial javax.swing.JButton.<init>:(Ljava/lang/String;)V
astore 5
start local 5 3: aload 3
aload 4
invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
pop
4: aload 3
aload 5
invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
pop
5: aload 4
aload 2
invokevirtual javax.swing.JButton.addActionListener:(Ljava/awt/event/ActionListener;)V
6: aload 5
new com.sun.tools.example.debug.gui.LaunchTool$3
dup
aload 0
aload 1
invokespecial com.sun.tools.example.debug.gui.LaunchTool$3.<init>:(Lcom/sun/tools/example/debug/gui/LaunchTool;Ljavax/swing/JDialog;)V
invokevirtual javax.swing.JButton.addActionListener:(Ljava/awt/event/ActionListener;)V
7: aload 3
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/example/debug/gui/LaunchTool;
0 8 1 dialog Ljavax/swing/JDialog;
0 8 2 okListener Ljava/awt/event/ActionListener;
1 8 3 buttonPanel Ljavax/swing/JPanel;
2 8 4 ok Ljavax/swing/JButton;
3 8 5 cancel Ljavax/swing/JButton;
MethodParameters:
Name Flags
dialog final
okListener
static void queryAndLaunchVM(com.sun.tools.example.debug.bdi.ExecutionManager);
descriptor: (Lcom/sun/tools/example/debug/bdi/ExecutionManager;)V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: new com.sun.tools.example.debug.gui.LaunchTool
dup
aload 0
invokespecial com.sun.tools.example.debug.gui.LaunchTool.<init>:(Lcom/sun/tools/example/debug/bdi/ExecutionManager;)V
astore 1
start local 1 1: aload 1
invokevirtual com.sun.tools.example.debug.gui.LaunchTool.selectConnector:()Lcom/sun/jdi/connect/Connector;
astore 2
start local 2 2: aload 2
ifnull 4
3: aload 1
aload 2
invokevirtual com.sun.tools.example.debug.gui.LaunchTool.configureAndConnect:(Lcom/sun/jdi/connect/Connector;)V
4: StackMap locals: com.sun.tools.example.debug.gui.LaunchTool com.sun.jdi.connect.Connector
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 runtime Lcom/sun/tools/example/debug/bdi/ExecutionManager;
1 5 1 lt Lcom/sun/tools/example/debug/gui/LaunchTool;
2 5 2 connector Lcom/sun/jdi/connect/Connector;
Exceptions:
throws com.sun.tools.example.debug.bdi.VMLaunchFailureException
MethodParameters:
Name Flags
runtime
}
SourceFile: "LaunchTool.java"
NestMembers:
com.sun.tools.example.debug.gui.LaunchTool$1 com.sun.tools.example.debug.gui.LaunchTool$2 com.sun.tools.example.debug.gui.LaunchTool$3 com.sun.tools.example.debug.gui.LaunchTool$ArgRep com.sun.tools.example.debug.gui.LaunchTool$BooleanArgRep com.sun.tools.example.debug.gui.LaunchTool$StringArgRep
InnerClasses:
public abstract Argument = com.sun.jdi.connect.Connector$Argument of com.sun.jdi.connect.Connector
public abstract BooleanArgument = com.sun.jdi.connect.Connector$BooleanArgument of com.sun.jdi.connect.Connector
com.sun.tools.example.debug.gui.LaunchTool$1
com.sun.tools.example.debug.gui.LaunchTool$2
com.sun.tools.example.debug.gui.LaunchTool$3
private abstract ArgRep = com.sun.tools.example.debug.gui.LaunchTool$ArgRep of com.sun.tools.example.debug.gui.LaunchTool
private BooleanArgRep = com.sun.tools.example.debug.gui.LaunchTool$BooleanArgRep of com.sun.tools.example.debug.gui.LaunchTool
private StringArgRep = com.sun.tools.example.debug.gui.LaunchTool$StringArgRep of com.sun.tools.example.debug.gui.LaunchTool