public abstract class sun.tools.jconsole.inspector.XOperations extends javax.swing.JPanel implements java.awt.event.ActionListener
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: sun.tools.jconsole.inspector.XOperations
  super_class: javax.swing.JPanel
{
  public static final java.lang.String OPERATION_INVOCATION_EVENT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "jam.xoperations.invoke.result"

  private java.util.List<javax.management.NotificationListener> notificationListenersList;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljavax/management/NotificationListener;>;

  private java.util.Hashtable<javax.swing.JButton, sun.tools.jconsole.inspector.OperationEntry> operationEntryTable;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Hashtable<Ljavax/swing/JButton;Lsun/tools/jconsole/inspector/OperationEntry;>;

  private sun.tools.jconsole.inspector.XMBean mbean;
    descriptor: Lsun/tools/jconsole/inspector/XMBean;
    flags: (0x0002) ACC_PRIVATE

  private javax.management.MBeanInfo mbeanInfo;
    descriptor: Ljavax/management/MBeanInfo;
    flags: (0x0002) ACC_PRIVATE

  private sun.tools.jconsole.MBeansTab mbeansTab;
    descriptor: Lsun/tools/jconsole/MBeansTab;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(sun.tools.jconsole.MBeansTab);
    descriptor: (Lsun/tools/jconsole/MBeansTab;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // sun.tools.jconsole.inspector.XOperations this
        start local 1 // sun.tools.jconsole.MBeansTab mbeansTab
         0: .line 53
            aload 0 /* this */
            new java.awt.GridLayout
            dup
            iconst_1
            iconst_1
            invokespecial java.awt.GridLayout.<init>:(II)V
            invokespecial javax.swing.JPanel.<init>:(Ljava/awt/LayoutManager;)V
         1: .line 54
            aload 0 /* this */
            aload 1 /* mbeansTab */
            putfield sun.tools.jconsole.inspector.XOperations.mbeansTab:Lsun/tools/jconsole/MBeansTab;
         2: .line 55
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield sun.tools.jconsole.inspector.XOperations.operationEntryTable:Ljava/util/Hashtable;
         3: .line 57
            new java.util.ArrayList
            dup
            iconst_1
            invokespecial java.util.ArrayList.<init>:(I)V
         4: .line 56
            astore 2 /* l */
        start local 2 // java.util.ArrayList l
         5: .line 58
            aload 0 /* this */
         6: .line 59
            aload 2 /* l */
            invokestatic java.util.Collections.synchronizedList:(Ljava/util/List;)Ljava/util/List;
         7: .line 58
            putfield sun.tools.jconsole.inspector.XOperations.notificationListenersList:Ljava/util/List;
         8: .line 60
            return
        end local 2 // java.util.ArrayList l
        end local 1 // sun.tools.jconsole.MBeansTab mbeansTab
        end local 0 // sun.tools.jconsole.inspector.XOperations this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lsun/tools/jconsole/inspector/XOperations;
            0    9     1  mbeansTab  Lsun/tools/jconsole/MBeansTab;
            5    9     2          l  Ljava/util/ArrayList<Ljavax/management/NotificationListener;>;
    MethodParameters:
           Name  Flags
      mbeansTab  

  public void removeOperations();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.tools.jconsole.inspector.XOperations this
         0: .line 64
            aload 0 /* this */
            invokevirtual sun.tools.jconsole.inspector.XOperations.removeAll:()V
         1: .line 65
            return
        end local 0 // sun.tools.jconsole.inspector.XOperations this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jconsole/inspector/XOperations;

  public void loadOperations(sun.tools.jconsole.inspector.XMBean, javax.management.MBeanInfo);
    descriptor: (Lsun/tools/jconsole/inspector/XMBean;Ljavax/management/MBeanInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=16, args_size=3
        start local 0 // sun.tools.jconsole.inspector.XOperations this
        start local 1 // sun.tools.jconsole.inspector.XMBean mbean
        start local 2 // javax.management.MBeanInfo mbeanInfo
         0: .line 69
            aload 0 /* this */
            aload 1 /* mbean */
            putfield sun.tools.jconsole.inspector.XOperations.mbean:Lsun/tools/jconsole/inspector/XMBean;
         1: .line 70
            aload 0 /* this */
            aload 2 /* mbeanInfo */
            putfield sun.tools.jconsole.inspector.XOperations.mbeanInfo:Ljavax/management/MBeanInfo;
         2: .line 72
            aload 2 /* mbeanInfo */
            invokevirtual javax.management.MBeanInfo.getOperations:()[Ljavax/management/MBeanOperationInfo;
            astore 3 /* operations */
        start local 3 // javax.management.MBeanOperationInfo[] operations
         3: .line 73
            aload 0 /* this */
            invokevirtual sun.tools.jconsole.inspector.XOperations.invalidate:()V
         4: .line 76
            aload 0 /* this */
            invokevirtual sun.tools.jconsole.inspector.XOperations.getComponents:()[Ljava/awt/Component;
            astore 4 /* listeners */
        start local 4 // java.awt.Component[] listeners
         5: .line 77
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 10
         7: .line 78
      StackMap locals: javax.management.MBeanOperationInfo[] java.awt.Component[] int
      StackMap stack:
            aload 4 /* listeners */
            iload 5 /* i */
            aaload
            instanceof javax.swing.JButton
            ifeq 9
         8: .line 79
            aload 4 /* listeners */
            iload 5 /* i */
            aaload
            checkcast javax.swing.JButton
            aload 0 /* this */
            invokevirtual javax.swing.JButton.removeActionListener:(Ljava/awt/event/ActionListener;)V
         9: .line 77
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            aload 4 /* listeners */
            arraylength
            if_icmplt 7
        end local 5 // int i
        11: .line 83
            aload 0 /* this */
            invokevirtual sun.tools.jconsole.inspector.XOperations.removeAll:()V
        12: .line 84
            aload 0 /* this */
            new java.awt.BorderLayout
            dup
            invokespecial java.awt.BorderLayout.<init>:()V
            invokevirtual sun.tools.jconsole.inspector.XOperations.setLayout:(Ljava/awt/LayoutManager;)V
        13: .line 90
            new javax.swing.JPanel
            dup
            new java.awt.GridLayout
            dup
            aload 3 /* operations */
            arraylength
            iconst_1
            invokespecial java.awt.GridLayout.<init>:(II)V
            invokespecial javax.swing.JPanel.<init>:(Ljava/awt/LayoutManager;)V
            astore 9 /* outerPanelLeft */
        start local 9 // javax.swing.JPanel outerPanelLeft
        14: .line 91
            new javax.swing.JPanel
            dup
            new java.awt.GridLayout
            dup
            aload 3 /* operations */
            arraylength
            iconst_1
            invokespecial java.awt.GridLayout.<init>:(II)V
            invokespecial javax.swing.JPanel.<init>:(Ljava/awt/LayoutManager;)V
            astore 10 /* outerPanelRight */
        start local 10 // javax.swing.JPanel outerPanelRight
        15: .line 93
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        16: goto 64
        17: .line 94
      StackMap locals: sun.tools.jconsole.inspector.XOperations sun.tools.jconsole.inspector.XMBean javax.management.MBeanInfo javax.management.MBeanOperationInfo[] java.awt.Component[] top top top top javax.swing.JPanel javax.swing.JPanel int
      StackMap stack:
            new javax.swing.JPanel
            dup
            new java.awt.FlowLayout
            dup
            iconst_2
            invokespecial java.awt.FlowLayout.<init>:(I)V
            invokespecial javax.swing.JPanel.<init>:(Ljava/awt/LayoutManager;)V
            astore 7 /* innerPanelLeft */
        start local 7 // javax.swing.JPanel innerPanelLeft
        18: .line 95
            new javax.swing.JPanel
            dup
            new java.awt.FlowLayout
            dup
            iconst_0
            invokespecial java.awt.FlowLayout.<init>:(I)V
            invokespecial javax.swing.JPanel.<init>:(Ljava/awt/LayoutManager;)V
            astore 8 /* innerPanelRight */
        start local 8 // javax.swing.JPanel innerPanelRight
        19: .line 96
            aload 3 /* operations */
            iload 11 /* i */
            aaload
            invokevirtual javax.management.MBeanOperationInfo.getReturnType:()Ljava/lang/String;
            astore 12 /* returnType */
        start local 12 // java.lang.String returnType
        20: .line 97
            aload 12 /* returnType */
            ifnonnull 30
        21: .line 98
            new javax.swing.JLabel
            dup
            ldc "null"
            iconst_4
            invokespecial javax.swing.JLabel.<init>:(Ljava/lang/String;I)V
            astore 6 /* methodLabel */
        start local 6 // javax.swing.JLabel methodLabel
        22: .line 99
            invokestatic sun.tools.jconsole.JConsole.isDebug:()Z
            ifeq 33
        23: .line 100
            getstatic java.lang.System.err:Ljava/io/PrintStream;
        24: .line 101
            new java.lang.StringBuilder
            dup
            ldc "WARNING: The operation's return type shouldn't be \"null\". Check how the MBeanOperationInfo for the \""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        25: .line 104
            aload 3 /* operations */
            iload 11 /* i */
            aaload
            invokevirtual javax.management.MBeanOperationInfo.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\" operation has "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        26: .line 105
            ldc "been defined in the MBean's implementation code."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        27: .line 101
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        28: .line 100
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        29: .line 107
            goto 33
        end local 6 // javax.swing.JLabel methodLabel
        30: .line 108
      StackMap locals: sun.tools.jconsole.inspector.XOperations sun.tools.jconsole.inspector.XMBean javax.management.MBeanInfo javax.management.MBeanOperationInfo[] java.awt.Component[] top top javax.swing.JPanel javax.swing.JPanel javax.swing.JPanel javax.swing.JPanel int java.lang.String
      StackMap stack:
            new javax.swing.JLabel
            dup
        31: .line 109
            aload 12 /* returnType */
            invokestatic sun.tools.jconsole.inspector.Utils.getReadableClassName:(Ljava/lang/String;)Ljava/lang/String;
            iconst_4
        32: .line 108
            invokespecial javax.swing.JLabel.<init>:(Ljava/lang/String;I)V
            astore 6 /* methodLabel */
        start local 6 // javax.swing.JLabel methodLabel
        33: .line 111
      StackMap locals: sun.tools.jconsole.inspector.XOperations sun.tools.jconsole.inspector.XMBean javax.management.MBeanInfo javax.management.MBeanOperationInfo[] java.awt.Component[] top javax.swing.JLabel javax.swing.JPanel javax.swing.JPanel javax.swing.JPanel javax.swing.JPanel int java.lang.String
      StackMap stack:
            aload 7 /* innerPanelLeft */
            aload 6 /* methodLabel */
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        34: .line 112
            aload 6 /* methodLabel */
            invokevirtual javax.swing.JLabel.getText:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            bipush 20
            if_icmple 42
        35: .line 113
            aload 6 /* methodLabel */
            aload 6 /* methodLabel */
            invokevirtual javax.swing.JLabel.getText:()Ljava/lang/String;
        36: .line 114
            aload 6 /* methodLabel */
            invokevirtual javax.swing.JLabel.getText:()Ljava/lang/String;
        37: .line 115
            ldc "."
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            iconst_1
        38: .line 114
            iadd
        39: .line 116
            aload 6 /* methodLabel */
            invokevirtual javax.swing.JLabel.getText:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
        40: .line 114
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
        41: .line 113
            invokevirtual javax.swing.JLabel.setText:(Ljava/lang/String;)V
        42: .line 119
      StackMap locals:
      StackMap stack:
            new javax.swing.JButton
            dup
            aload 3 /* operations */
            iload 11 /* i */
            aaload
            invokevirtual javax.management.MBeanOperationInfo.getName:()Ljava/lang/String;
            invokespecial javax.swing.JButton.<init>:(Ljava/lang/String;)V
            astore 5 /* methodButton */
        start local 5 // javax.swing.JButton methodButton
        43: .line 120
            aload 5 /* methodButton */
            aload 3 /* operations */
            iload 11 /* i */
            aaload
            invokevirtual javax.management.MBeanOperationInfo.getDescription:()Ljava/lang/String;
            invokevirtual javax.swing.JButton.setToolTipText:(Ljava/lang/String;)V
        44: .line 121
            aload 0 /* this */
            aload 3 /* operations */
            iload 11 /* i */
            aaload
            invokevirtual javax.management.MBeanOperationInfo.getSignature:()[Ljavax/management/MBeanParameterInfo;
            invokevirtual sun.tools.jconsole.inspector.XOperations.isCallable:([Ljavax/management/MBeanParameterInfo;)Z
            istore 13 /* callable */
        start local 13 // boolean callable
        45: .line 122
            iload 13 /* callable */
            ifeq 48
        46: .line 123
            aload 5 /* methodButton */
            aload 0 /* this */
            invokevirtual javax.swing.JButton.addActionListener:(Ljava/awt/event/ActionListener;)V
        47: .line 124
            goto 49
        48: .line 125
      StackMap locals: sun.tools.jconsole.inspector.XOperations sun.tools.jconsole.inspector.XMBean javax.management.MBeanInfo javax.management.MBeanOperationInfo[] java.awt.Component[] javax.swing.JButton javax.swing.JLabel javax.swing.JPanel javax.swing.JPanel javax.swing.JPanel javax.swing.JPanel int java.lang.String int
      StackMap stack:
            aload 5 /* methodButton */
            iconst_0
            invokevirtual javax.swing.JButton.setEnabled:(Z)V
        49: .line 128
      StackMap locals:
      StackMap stack:
            aload 3 /* operations */
            iload 11 /* i */
            aaload
            invokevirtual javax.management.MBeanOperationInfo.getSignature:()[Ljavax/management/MBeanParameterInfo;
            astore 14 /* signature */
        start local 14 // javax.management.MBeanParameterInfo[] signature
        50: .line 129
            new sun.tools.jconsole.inspector.OperationEntry
            dup
            aload 3 /* operations */
            iload 11 /* i */
            aaload
        51: .line 130
            iload 13 /* callable */
        52: .line 131
            aload 5 /* methodButton */
        53: .line 132
            aload 0 /* this */
        54: .line 129
            invokespecial sun.tools.jconsole.inspector.OperationEntry.<init>:(Ljavax/management/MBeanOperationInfo;ZLjavax/swing/JButton;Lsun/tools/jconsole/inspector/XOperations;)V
            astore 15 /* paramEntry */
        start local 15 // sun.tools.jconsole.inspector.OperationEntry paramEntry
        55: .line 133
            aload 0 /* this */
            getfield sun.tools.jconsole.inspector.XOperations.operationEntryTable:Ljava/util/Hashtable;
            aload 5 /* methodButton */
            aload 15 /* paramEntry */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        56: .line 134
            aload 8 /* innerPanelRight */
            aload 5 /* methodButton */
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        57: .line 135
            aload 14 /* signature */
            arraylength
            ifne 60
        58: .line 136
            aload 8 /* innerPanelRight */
            new javax.swing.JLabel
            dup
            ldc "( )"
            iconst_0
            invokespecial javax.swing.JLabel.<init>:(Ljava/lang/String;I)V
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        59: .line 137
            goto 61
        60: .line 138
      StackMap locals: javax.management.MBeanParameterInfo[] sun.tools.jconsole.inspector.OperationEntry
      StackMap stack:
            aload 8 /* innerPanelRight */
            aload 15 /* paramEntry */
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;)Ljava/awt/Component;
            pop
        61: .line 141
      StackMap locals:
      StackMap stack:
            aload 9 /* outerPanelLeft */
            aload 7 /* innerPanelLeft */
            ldc "West"
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;Ljava/lang/Object;)V
        62: .line 142
            aload 10 /* outerPanelRight */
            aload 8 /* innerPanelRight */
            ldc "Center"
            invokevirtual javax.swing.JPanel.add:(Ljava/awt/Component;Ljava/lang/Object;)V
        end local 15 // sun.tools.jconsole.inspector.OperationEntry paramEntry
        end local 14 // javax.management.MBeanParameterInfo[] signature
        end local 13 // boolean callable
        end local 12 // java.lang.String returnType
        63: .line 93
            iinc 11 /* i */ 1
        end local 8 // javax.swing.JPanel innerPanelRight
        end local 7 // javax.swing.JPanel innerPanelLeft
        end local 6 // javax.swing.JLabel methodLabel
        end local 5 // javax.swing.JButton methodButton
      StackMap locals: sun.tools.jconsole.inspector.XOperations sun.tools.jconsole.inspector.XMBean javax.management.MBeanInfo javax.management.MBeanOperationInfo[] java.awt.Component[] top top top top javax.swing.JPanel javax.swing.JPanel int
      StackMap stack:
        64: iload 11 /* i */
            aload 3 /* operations */
            arraylength
            if_icmplt 17
        end local 11 // int i
        65: .line 144
            aload 0 /* this */
            aload 9 /* outerPanelLeft */
            ldc "West"
            invokevirtual sun.tools.jconsole.inspector.XOperations.add:(Ljava/awt/Component;Ljava/lang/Object;)V
        66: .line 145
            aload 0 /* this */
            aload 10 /* outerPanelRight */
            ldc "Center"
            invokevirtual sun.tools.jconsole.inspector.XOperations.add:(Ljava/awt/Component;Ljava/lang/Object;)V
        67: .line 146
            aload 0 /* this */
            invokevirtual sun.tools.jconsole.inspector.XOperations.validate:()V
        68: .line 147
            return
        end local 10 // javax.swing.JPanel outerPanelRight
        end local 9 // javax.swing.JPanel outerPanelLeft
        end local 4 // java.awt.Component[] listeners
        end local 3 // javax.management.MBeanOperationInfo[] operations
        end local 2 // javax.management.MBeanInfo mbeanInfo
        end local 1 // sun.tools.jconsole.inspector.XMBean mbean
        end local 0 // sun.tools.jconsole.inspector.XOperations this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   69     0             this  Lsun/tools/jconsole/inspector/XOperations;
            0   69     1            mbean  Lsun/tools/jconsole/inspector/XMBean;
            0   69     2        mbeanInfo  Ljavax/management/MBeanInfo;
            3   69     3       operations  [Ljavax/management/MBeanOperationInfo;
            5   69     4        listeners  [Ljava/awt/Component;
            6   11     5                i  I
           43   64     5     methodButton  Ljavax/swing/JButton;
           22   30     6      methodLabel  Ljavax/swing/JLabel;
           33   64     6      methodLabel  Ljavax/swing/JLabel;
           18   64     7   innerPanelLeft  Ljavax/swing/JPanel;
           19   64     8  innerPanelRight  Ljavax/swing/JPanel;
           14   69     9   outerPanelLeft  Ljavax/swing/JPanel;
           15   69    10  outerPanelRight  Ljavax/swing/JPanel;
           16   65    11                i  I
           20   63    12       returnType  Ljava/lang/String;
           45   63    13         callable  Z
           50   63    14        signature  [Ljavax/management/MBeanParameterInfo;
           55   63    15       paramEntry  Lsun/tools/jconsole/inspector/OperationEntry;
    MethodParameters:
           Name  Flags
      mbean      
      mbeanInfo  

  private boolean isCallable(javax.management.MBeanParameterInfo[]);
    descriptor: ([Ljavax/management/MBeanParameterInfo;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.tools.jconsole.inspector.XOperations this
        start local 1 // javax.management.MBeanParameterInfo[] signature
         0: .line 150
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 151
      StackMap locals: int
      StackMap stack:
            aload 1 /* signature */
            iload 2 /* i */
            aaload
            invokevirtual javax.management.MBeanParameterInfo.getType:()Ljava/lang/String;
            invokestatic sun.tools.jconsole.inspector.Utils.isEditableType:(Ljava/lang/String;)Z
            ifne 4
         3: .line 152
            iconst_0
            ireturn
         4: .line 150
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 1 /* signature */
            arraylength
            if_icmplt 2
        end local 2 // int i
         6: .line 155
            iconst_1
            ireturn
        end local 1 // javax.management.MBeanParameterInfo[] signature
        end local 0 // sun.tools.jconsole.inspector.XOperations this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lsun/tools/jconsole/inspector/XOperations;
            0    7     1  signature  [Ljavax/management/MBeanParameterInfo;
            1    6     2          i  I
    MethodParameters:
           Name  Flags
      signature  

  public void actionPerformed(java.awt.event.ActionEvent);
    descriptor: (Ljava/awt/event/ActionEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.tools.jconsole.inspector.XOperations this
        start local 1 // java.awt.event.ActionEvent e
         0: .line 160
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual java.awt.event.ActionEvent.getSource:()Ljava/lang/Object;
            checkcast javax.swing.JButton
            invokevirtual sun.tools.jconsole.inspector.XOperations.performInvokeRequest:(Ljavax/swing/JButton;)V
         1: .line 161
            return
        end local 1 // java.awt.event.ActionEvent e
        end local 0 // sun.tools.jconsole.inspector.XOperations this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jconsole/inspector/XOperations;
            0    2     1     e  Ljava/awt/event/ActionEvent;
    MethodParameters:
      Name  Flags
      e     final

  void performInvokeRequest(javax.swing.JButton);
    descriptor: (Ljavax/swing/JButton;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // sun.tools.jconsole.inspector.XOperations this
        start local 1 // javax.swing.JButton button
         0: .line 164
            aload 0 /* this */
            getfield sun.tools.jconsole.inspector.XOperations.operationEntryTable:Ljava/util/Hashtable;
            aload 1 /* button */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.tools.jconsole.inspector.OperationEntry
            astore 2 /* entryIf */
        start local 2 // sun.tools.jconsole.inspector.OperationEntry entryIf
         1: .line 165
            new sun.tools.jconsole.inspector.XOperations$1
            dup
            aload 0 /* this */
            aload 1 /* button */
            aload 2 /* entryIf */
            invokespecial sun.tools.jconsole.inspector.XOperations$1.<init>:(Lsun/tools/jconsole/inspector/XOperations;Ljavax/swing/JButton;Lsun/tools/jconsole/inspector/OperationEntry;)V
         2: .line 201
            invokevirtual sun.tools.jconsole.inspector.XOperations$1.execute:()V
         3: .line 202
            return
        end local 2 // sun.tools.jconsole.inspector.OperationEntry entryIf
        end local 1 // javax.swing.JButton button
        end local 0 // sun.tools.jconsole.inspector.XOperations this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lsun/tools/jconsole/inspector/XOperations;
            0    4     1   button  Ljavax/swing/JButton;
            1    4     2  entryIf  Lsun/tools/jconsole/inspector/OperationEntry;
    MethodParameters:
        Name  Flags
      button  final

  public void addOperationsListener(javax.management.NotificationListener);
    descriptor: (Ljavax/management/NotificationListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.tools.jconsole.inspector.XOperations this
        start local 1 // javax.management.NotificationListener nl
         0: .line 205
            aload 0 /* this */
            getfield sun.tools.jconsole.inspector.XOperations.notificationListenersList:Ljava/util/List;
            aload 1 /* nl */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 206
            return
        end local 1 // javax.management.NotificationListener nl
        end local 0 // sun.tools.jconsole.inspector.XOperations this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jconsole/inspector/XOperations;
            0    2     1    nl  Ljavax/management/NotificationListener;
    MethodParameters:
      Name  Flags
      nl    

  public void removeOperationsListener(javax.management.NotificationListener);
    descriptor: (Ljavax/management/NotificationListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.tools.jconsole.inspector.XOperations this
        start local 1 // javax.management.NotificationListener nl
         0: .line 209
            aload 0 /* this */
            getfield sun.tools.jconsole.inspector.XOperations.notificationListenersList:Ljava/util/List;
            aload 1 /* nl */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
         1: .line 210
            return
        end local 1 // javax.management.NotificationListener nl
        end local 0 // sun.tools.jconsole.inspector.XOperations this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jconsole/inspector/XOperations;
            0    2     1    nl  Ljavax/management/NotificationListener;
    MethodParameters:
      Name  Flags
      nl    

  private void fireChangedNotification(java.lang.String, java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // sun.tools.jconsole.inspector.XOperations this
        start local 1 // java.lang.String type
        start local 2 // java.lang.Object source
        start local 3 // java.lang.Object handback
         0: .line 215
            new javax.management.Notification
            dup
            aload 1 /* type */
            aload 2 /* source */
            lconst_0
            invokespecial javax.management.Notification.<init>:(Ljava/lang/String;Ljava/lang/Object;J)V
            astore 4 /* n */
        start local 4 // javax.management.Notification n
         1: .line 216
            aload 0 /* this */
            getfield sun.tools.jconsole.inspector.XOperations.notificationListenersList:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 4
      StackMap locals: sun.tools.jconsole.inspector.XOperations java.lang.String java.lang.Object java.lang.Object javax.management.Notification top java.util.Iterator
      StackMap stack:
         2: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.NotificationListener
            astore 5 /* nl */
        start local 5 // javax.management.NotificationListener nl
         3: .line 217
            aload 5 /* nl */
            aload 4 /* n */
            aload 3 /* handback */
            invokeinterface javax.management.NotificationListener.handleNotification:(Ljavax/management/Notification;Ljava/lang/Object;)V
        end local 5 // javax.management.NotificationListener nl
         4: .line 216
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 219
            return
        end local 4 // javax.management.Notification n
        end local 3 // java.lang.Object handback
        end local 2 // java.lang.Object source
        end local 1 // java.lang.String type
        end local 0 // sun.tools.jconsole.inspector.XOperations this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lsun/tools/jconsole/inspector/XOperations;
            0    6     1      type  Ljava/lang/String;
            0    6     2    source  Ljava/lang/Object;
            0    6     3  handback  Ljava/lang/Object;
            1    6     4         n  Ljavax/management/Notification;
            3    4     5        nl  Ljavax/management/NotificationListener;
    MethodParameters:
          Name  Flags
      type      
      source    
      handback  

  protected abstract javax.management.MBeanOperationInfo[] updateOperations(javax.management.MBeanOperationInfo[]);
    descriptor: ([Ljavax/management/MBeanOperationInfo;)[Ljavax/management/MBeanOperationInfo;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
            Name  Flags
      operations  
}
SourceFile: "XOperations.java"
NestMembers:
  sun.tools.jconsole.inspector.XOperations$1
InnerClasses:
  sun.tools.jconsole.inspector.XOperations$1