public abstract class com.sun.jmx.remote.security.MBeanServerAccessController implements javax.management.remote.MBeanServerForwarder
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.sun.jmx.remote.security.MBeanServerAccessController
  super_class: java.lang.Object
{
  private javax.management.MBeanServer mbs;
    descriptor: Ljavax/management/MBeanServer;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
         0: .line 86
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;

  public javax.management.MBeanServer getMBeanServer();
    descriptor: ()Ljavax/management/MBeanServer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
         0: .line 90
            aload 0 /* this */
            getfield com.sun.jmx.remote.security.MBeanServerAccessController.mbs:Ljavax/management/MBeanServer;
            areturn
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;

  public void setMBeanServer(javax.management.MBeanServer);
    descriptor: (Ljavax/management/MBeanServer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.MBeanServer mbs
         0: .line 94
            aload 1 /* mbs */
            ifnonnull 2
         1: .line 95
            new java.lang.IllegalArgumentException
            dup
            ldc "Null MBeanServer"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 96
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.remote.security.MBeanServerAccessController.mbs:Ljavax/management/MBeanServer;
            ifnull 4
         3: .line 97
            new java.lang.IllegalArgumentException
            dup
            ldc "MBeanServer object already initialized"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 99
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* mbs */
            putfield com.sun.jmx.remote.security.MBeanServerAccessController.mbs:Ljavax/management/MBeanServer;
         5: .line 100
            return
        end local 1 // javax.management.MBeanServer mbs
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    6     1   mbs  Ljavax/management/MBeanServer;
    MethodParameters:
      Name  Flags
      mbs   

  protected abstract void checkRead();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected abstract void checkWrite();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected void checkCreate(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
         0: .line 119
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkWrite:()V
         1: .line 120
            return
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  className  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      className  

  protected void checkUnregister(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
         0: .line 127
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkWrite:()V
         1: .line 128
            return
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  name  Ljavax/management/ObjectName;
    MethodParameters:
      Name  Flags
      name  

  public void addNotificationListener(javax.management.ObjectName, javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.NotificationListener listener
        start local 3 // javax.management.NotificationFilter filter
        start local 4 // java.lang.Object handback
         0: .line 147
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 148
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* listener */
         2: .line 149
            aload 3 /* filter */
            aload 4 /* handback */
         3: .line 148
            invokeinterface javax.management.MBeanServer.addNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
         4: .line 150
            return
        end local 4 // java.lang.Object handback
        end local 3 // javax.management.NotificationFilter filter
        end local 2 // javax.management.NotificationListener listener
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    5     1      name  Ljavax/management/ObjectName;
            0    5     2  listener  Ljavax/management/NotificationListener;
            0    5     3    filter  Ljavax/management/NotificationFilter;
            0    5     4  handback  Ljava/lang/Object;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
          Name  Flags
      name      
      listener  
      filter    
      handback  

  public void addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, javax.management.NotificationFilter, java.lang.Object);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/ObjectName;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.ObjectName listener
        start local 3 // javax.management.NotificationFilter filter
        start local 4 // java.lang.Object handback
         0: .line 161
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 162
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* listener */
         2: .line 163
            aload 3 /* filter */
            aload 4 /* handback */
         3: .line 162
            invokeinterface javax.management.MBeanServer.addNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/ObjectName;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
         4: .line 164
            return
        end local 4 // java.lang.Object handback
        end local 3 // javax.management.NotificationFilter filter
        end local 2 // javax.management.ObjectName listener
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    5     1      name  Ljavax/management/ObjectName;
            0    5     2  listener  Ljavax/management/ObjectName;
            0    5     3    filter  Ljavax/management/NotificationFilter;
            0    5     4  handback  Ljava/lang/Object;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
          Name  Flags
      name      
      listener  
      filter    
      handback  

  public javax.management.ObjectInstance createMBean(java.lang.String, javax.management.ObjectName);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
        start local 2 // javax.management.ObjectName name
         0: .line 177
            aload 0 /* this */
            aload 1 /* className */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkCreate:(Ljava/lang/String;)V
         1: .line 178
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 3 /* sm */
        start local 3 // java.lang.SecurityManager sm
         2: .line 179
            aload 3 /* sm */
            ifnonnull 6
         3: .line 180
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            invokeinterface javax.management.MBeanServer.instantiate:(Ljava/lang/String;)Ljava/lang/Object;
            astore 4 /* object */
        start local 4 // java.lang.Object object
         4: .line 181
            aload 0 /* this */
            aload 4 /* object */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkClassLoader:(Ljava/lang/Object;)V
         5: .line 182
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 4 /* object */
            aload 2 /* name */
            invokeinterface javax.management.MBeanServer.registerMBean:(Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 4 // java.lang.Object object
         6: .line 184
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            aload 2 /* name */
            invokeinterface javax.management.MBeanServer.createMBean:(Ljava/lang/String;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 3 // java.lang.SecurityManager sm
        end local 2 // javax.management.ObjectName name
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    7     1  className  Ljava/lang/String;
            0    7     2       name  Ljavax/management/ObjectName;
            2    7     3         sm  Ljava/lang/SecurityManager;
            4    6     4     object  Ljava/lang/Object;
    Exceptions:
      throws javax.management.ReflectionException, javax.management.InstanceAlreadyExistsException, javax.management.MBeanRegistrationException, javax.management.MBeanException, javax.management.NotCompliantMBeanException
    MethodParameters:
           Name  Flags
      className  
      name       

  public javax.management.ObjectInstance createMBean(java.lang.String, javax.management.ObjectName, java.lang.Object[], java.lang.String[]);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;[Ljava/lang/Object;[Ljava/lang/String;)Ljavax/management/ObjectInstance;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
        start local 2 // javax.management.ObjectName name
        start local 3 // java.lang.Object[] params
        start local 4 // java.lang.String[] signature
         0: .line 200
            aload 0 /* this */
            aload 1 /* className */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkCreate:(Ljava/lang/String;)V
         1: .line 201
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 5 /* sm */
        start local 5 // java.lang.SecurityManager sm
         2: .line 202
            aload 5 /* sm */
            ifnonnull 9
         3: .line 203
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
         4: .line 204
            aload 3 /* params */
         5: .line 205
            aload 4 /* signature */
         6: .line 203
            invokeinterface javax.management.MBeanServer.instantiate:(Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
            astore 6 /* object */
        start local 6 // java.lang.Object object
         7: .line 206
            aload 0 /* this */
            aload 6 /* object */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkClassLoader:(Ljava/lang/Object;)V
         8: .line 207
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 6 /* object */
            aload 2 /* name */
            invokeinterface javax.management.MBeanServer.registerMBean:(Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 6 // java.lang.Object object
         9: .line 209
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            aload 2 /* name */
        10: .line 210
            aload 3 /* params */
            aload 4 /* signature */
        11: .line 209
            invokeinterface javax.management.MBeanServer.createMBean:(Ljava/lang/String;Ljavax/management/ObjectName;[Ljava/lang/Object;[Ljava/lang/String;)Ljavax/management/ObjectInstance;
            areturn
        end local 5 // java.lang.SecurityManager sm
        end local 4 // java.lang.String[] signature
        end local 3 // java.lang.Object[] params
        end local 2 // javax.management.ObjectName name
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0   12     1  className  Ljava/lang/String;
            0   12     2       name  Ljavax/management/ObjectName;
            0   12     3     params  [Ljava/lang/Object;
            0   12     4  signature  [Ljava/lang/String;
            2   12     5         sm  Ljava/lang/SecurityManager;
            7    9     6     object  Ljava/lang/Object;
    Exceptions:
      throws javax.management.ReflectionException, javax.management.InstanceAlreadyExistsException, javax.management.MBeanRegistrationException, javax.management.MBeanException, javax.management.NotCompliantMBeanException
    MethodParameters:
           Name  Flags
      className  
      name       
      params     
      signature  

  public javax.management.ObjectInstance createMBean(java.lang.String, javax.management.ObjectName, javax.management.ObjectName);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
        start local 2 // javax.management.ObjectName name
        start local 3 // javax.management.ObjectName loaderName
         0: .line 228
            aload 0 /* this */
            aload 1 /* className */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkCreate:(Ljava/lang/String;)V
         1: .line 229
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 4 /* sm */
        start local 4 // java.lang.SecurityManager sm
         2: .line 230
            aload 4 /* sm */
            ifnonnull 8
         3: .line 231
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
         4: .line 232
            aload 3 /* loaderName */
         5: .line 231
            invokeinterface javax.management.MBeanServer.instantiate:(Ljava/lang/String;Ljavax/management/ObjectName;)Ljava/lang/Object;
            astore 5 /* object */
        start local 5 // java.lang.Object object
         6: .line 233
            aload 0 /* this */
            aload 5 /* object */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkClassLoader:(Ljava/lang/Object;)V
         7: .line 234
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 5 /* object */
            aload 2 /* name */
            invokeinterface javax.management.MBeanServer.registerMBean:(Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 5 // java.lang.Object object
         8: .line 236
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            aload 2 /* name */
            aload 3 /* loaderName */
            invokeinterface javax.management.MBeanServer.createMBean:(Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 4 // java.lang.SecurityManager sm
        end local 3 // javax.management.ObjectName loaderName
        end local 2 // javax.management.ObjectName name
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    9     1   className  Ljava/lang/String;
            0    9     2        name  Ljavax/management/ObjectName;
            0    9     3  loaderName  Ljavax/management/ObjectName;
            2    9     4          sm  Ljava/lang/SecurityManager;
            6    8     5      object  Ljava/lang/Object;
    Exceptions:
      throws javax.management.ReflectionException, javax.management.InstanceAlreadyExistsException, javax.management.MBeanRegistrationException, javax.management.MBeanException, javax.management.NotCompliantMBeanException, javax.management.InstanceNotFoundException
    MethodParameters:
            Name  Flags
      className   
      name        
      loaderName  

  public javax.management.ObjectInstance createMBean(java.lang.String, javax.management.ObjectName, javax.management.ObjectName, java.lang.Object[], java.lang.String[]);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/ObjectName;[Ljava/lang/Object;[Ljava/lang/String;)Ljavax/management/ObjectInstance;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=6
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
        start local 2 // javax.management.ObjectName name
        start local 3 // javax.management.ObjectName loaderName
        start local 4 // java.lang.Object[] params
        start local 5 // java.lang.String[] signature
         0: .line 256
            aload 0 /* this */
            aload 1 /* className */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkCreate:(Ljava/lang/String;)V
         1: .line 257
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 6 /* sm */
        start local 6 // java.lang.SecurityManager sm
         2: .line 258
            aload 6 /* sm */
            ifnonnull 10
         3: .line 259
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
         4: .line 260
            aload 3 /* loaderName */
         5: .line 261
            aload 4 /* params */
         6: .line 262
            aload 5 /* signature */
         7: .line 259
            invokeinterface javax.management.MBeanServer.instantiate:(Ljava/lang/String;Ljavax/management/ObjectName;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
            astore 7 /* object */
        start local 7 // java.lang.Object object
         8: .line 263
            aload 0 /* this */
            aload 7 /* object */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkClassLoader:(Ljava/lang/Object;)V
         9: .line 264
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 7 /* object */
            aload 2 /* name */
            invokeinterface javax.management.MBeanServer.registerMBean:(Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 7 // java.lang.Object object
        10: .line 266
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            aload 2 /* name */
            aload 3 /* loaderName */
        11: .line 267
            aload 4 /* params */
            aload 5 /* signature */
        12: .line 266
            invokeinterface javax.management.MBeanServer.createMBean:(Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/ObjectName;[Ljava/lang/Object;[Ljava/lang/String;)Ljavax/management/ObjectInstance;
            areturn
        end local 6 // java.lang.SecurityManager sm
        end local 5 // java.lang.String[] signature
        end local 4 // java.lang.Object[] params
        end local 3 // javax.management.ObjectName loaderName
        end local 2 // javax.management.ObjectName name
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0   13     1   className  Ljava/lang/String;
            0   13     2        name  Ljavax/management/ObjectName;
            0   13     3  loaderName  Ljavax/management/ObjectName;
            0   13     4      params  [Ljava/lang/Object;
            0   13     5   signature  [Ljava/lang/String;
            2   13     6          sm  Ljava/lang/SecurityManager;
            8   10     7      object  Ljava/lang/Object;
    Exceptions:
      throws javax.management.ReflectionException, javax.management.InstanceAlreadyExistsException, javax.management.MBeanRegistrationException, javax.management.MBeanException, javax.management.NotCompliantMBeanException, javax.management.InstanceNotFoundException
    MethodParameters:
            Name  Flags
      className   
      name        
      loaderName  
      params      
      signature   

  public java.io.ObjectInputStream deserialize(javax.management.ObjectName, byte[]);
    descriptor: (Ljavax/management/ObjectName;[B)Ljava/io/ObjectInputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // byte[] data
         0: .line 278
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 279
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* data */
            invokeinterface javax.management.MBeanServer.deserialize:(Ljavax/management/ObjectName;[B)Ljava/io/ObjectInputStream;
            areturn
        end local 2 // byte[] data
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  name  Ljavax/management/ObjectName;
            0    2     2  data  [B
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.OperationsException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      name  
      data  

  public java.io.ObjectInputStream deserialize(java.lang.String, byte[]);
    descriptor: (Ljava/lang/String;[B)Ljava/io/ObjectInputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
        start local 2 // byte[] data
         0: .line 289
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 290
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            aload 2 /* data */
            invokeinterface javax.management.MBeanServer.deserialize:(Ljava/lang/String;[B)Ljava/io/ObjectInputStream;
            areturn
        end local 2 // byte[] data
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  className  Ljava/lang/String;
            0    2     2       data  [B
    Exceptions:
      throws javax.management.OperationsException, javax.management.ReflectionException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
           Name  Flags
      className  
      data       

  public java.io.ObjectInputStream deserialize(java.lang.String, javax.management.ObjectName, byte[]);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;[B)Ljava/io/ObjectInputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
        start local 2 // javax.management.ObjectName loaderName
        start local 3 // byte[] data
         0: .line 305
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 306
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            aload 2 /* loaderName */
            aload 3 /* data */
            invokeinterface javax.management.MBeanServer.deserialize:(Ljava/lang/String;Ljavax/management/ObjectName;[B)Ljava/io/ObjectInputStream;
            areturn
        end local 3 // byte[] data
        end local 2 // javax.management.ObjectName loaderName
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1   className  Ljava/lang/String;
            0    2     2  loaderName  Ljavax/management/ObjectName;
            0    2     3        data  [B
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.OperationsException, javax.management.ReflectionException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      className   
      loaderName  
      data        

  public java.lang.Object getAttribute(javax.management.ObjectName, java.lang.String);
    descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // java.lang.String attribute
         0: .line 319
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 320
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* attribute */
            invokeinterface javax.management.MBeanServer.getAttribute:(Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.String attribute
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1       name  Ljavax/management/ObjectName;
            0    2     2  attribute  Ljava/lang/String;
    Exceptions:
      throws javax.management.MBeanException, javax.management.AttributeNotFoundException, javax.management.InstanceNotFoundException, javax.management.ReflectionException
    MethodParameters:
           Name  Flags
      name       
      attribute  

  public javax.management.AttributeList getAttributes(javax.management.ObjectName, java.lang.String[]);
    descriptor: (Ljavax/management/ObjectName;[Ljava/lang/String;)Ljavax/management/AttributeList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // java.lang.String[] attributes
         0: .line 329
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 330
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* attributes */
            invokeinterface javax.management.MBeanServer.getAttributes:(Ljavax/management/ObjectName;[Ljava/lang/String;)Ljavax/management/AttributeList;
            areturn
        end local 2 // java.lang.String[] attributes
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1        name  Ljavax/management/ObjectName;
            0    2     2  attributes  [Ljava/lang/String;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.ReflectionException
    MethodParameters:
            Name  Flags
      name        
      attributes  

  public java.lang.ClassLoader getClassLoader(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljava/lang/ClassLoader;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName loaderName
         0: .line 339
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 340
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* loaderName */
            invokeinterface javax.management.MBeanServer.getClassLoader:(Ljavax/management/ObjectName;)Ljava/lang/ClassLoader;
            areturn
        end local 1 // javax.management.ObjectName loaderName
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  loaderName  Ljavax/management/ObjectName;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
            Name  Flags
      loaderName  

  public java.lang.ClassLoader getClassLoaderFor(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljava/lang/ClassLoader;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName mbeanName
         0: .line 349
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 350
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* mbeanName */
            invokeinterface javax.management.MBeanServer.getClassLoaderFor:(Ljavax/management/ObjectName;)Ljava/lang/ClassLoader;
            areturn
        end local 1 // javax.management.ObjectName mbeanName
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  mbeanName  Ljavax/management/ObjectName;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
           Name  Flags
      mbeanName  

  public javax.management.loading.ClassLoaderRepository getClassLoaderRepository();
    descriptor: ()Ljavax/management/loading/ClassLoaderRepository;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
         0: .line 358
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 359
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            invokeinterface javax.management.MBeanServer.getClassLoaderRepository:()Ljavax/management/loading/ClassLoaderRepository;
            areturn
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;

  public java.lang.String getDefaultDomain();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
         0: .line 367
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 368
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            invokeinterface javax.management.MBeanServer.getDefaultDomain:()Ljava/lang/String;
            areturn
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;

  public java.lang.String[] getDomains();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
         0: .line 376
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 377
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            invokeinterface javax.management.MBeanServer.getDomains:()[Ljava/lang/String;
            areturn
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;

  public java.lang.Integer getMBeanCount();
    descriptor: ()Ljava/lang/Integer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
         0: .line 385
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 386
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            invokeinterface javax.management.MBeanServer.getMBeanCount:()Ljava/lang/Integer;
            areturn
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;

  public javax.management.MBeanInfo getMBeanInfo(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljavax/management/MBeanInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
         0: .line 398
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 399
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            invokeinterface javax.management.MBeanServer.getMBeanInfo:(Ljavax/management/ObjectName;)Ljavax/management/MBeanInfo;
            areturn
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  name  Ljavax/management/ObjectName;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.IntrospectionException, javax.management.ReflectionException
    MethodParameters:
      Name  Flags
      name  

  public javax.management.ObjectInstance getObjectInstance(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
         0: .line 408
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 409
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            invokeinterface javax.management.MBeanServer.getObjectInstance:(Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  name  Ljavax/management/ObjectName;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
      Name  Flags
      name  

  public java.lang.Object instantiate(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
         0: .line 418
            aload 0 /* this */
            aload 1 /* className */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkCreate:(Ljava/lang/String;)V
         1: .line 419
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            invokeinterface javax.management.MBeanServer.instantiate:(Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  className  Ljava/lang/String;
    Exceptions:
      throws javax.management.ReflectionException, javax.management.MBeanException
    MethodParameters:
           Name  Flags
      className  

  public java.lang.Object instantiate(java.lang.String, java.lang.Object[], java.lang.String[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
        start local 2 // java.lang.Object[] params
        start local 3 // java.lang.String[] signature
         0: .line 430
            aload 0 /* this */
            aload 1 /* className */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkCreate:(Ljava/lang/String;)V
         1: .line 431
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            aload 2 /* params */
            aload 3 /* signature */
            invokeinterface javax.management.MBeanServer.instantiate:(Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 3 // java.lang.String[] signature
        end local 2 // java.lang.Object[] params
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  className  Ljava/lang/String;
            0    2     2     params  [Ljava/lang/Object;
            0    2     3  signature  [Ljava/lang/String;
    Exceptions:
      throws javax.management.ReflectionException, javax.management.MBeanException
    MethodParameters:
           Name  Flags
      className  
      params     
      signature  

  public java.lang.Object instantiate(java.lang.String, javax.management.ObjectName);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
        start local 2 // javax.management.ObjectName loaderName
         0: .line 440
            aload 0 /* this */
            aload 1 /* className */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkCreate:(Ljava/lang/String;)V
         1: .line 441
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            aload 2 /* loaderName */
            invokeinterface javax.management.MBeanServer.instantiate:(Ljava/lang/String;Ljavax/management/ObjectName;)Ljava/lang/Object;
            areturn
        end local 2 // javax.management.ObjectName loaderName
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1   className  Ljava/lang/String;
            0    2     2  loaderName  Ljavax/management/ObjectName;
    Exceptions:
      throws javax.management.ReflectionException, javax.management.MBeanException, javax.management.InstanceNotFoundException
    MethodParameters:
            Name  Flags
      className   
      loaderName  

  public java.lang.Object instantiate(java.lang.String, javax.management.ObjectName, java.lang.Object[], java.lang.String[]);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.String className
        start local 2 // javax.management.ObjectName loaderName
        start local 3 // java.lang.Object[] params
        start local 4 // java.lang.String[] signature
         0: .line 451
            aload 0 /* this */
            aload 1 /* className */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkCreate:(Ljava/lang/String;)V
         1: .line 452
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* className */
            aload 2 /* loaderName */
         2: .line 453
            aload 3 /* params */
            aload 4 /* signature */
         3: .line 452
            invokeinterface javax.management.MBeanServer.instantiate:(Ljava/lang/String;Ljavax/management/ObjectName;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 4 // java.lang.String[] signature
        end local 3 // java.lang.Object[] params
        end local 2 // javax.management.ObjectName loaderName
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    4     1   className  Ljava/lang/String;
            0    4     2  loaderName  Ljavax/management/ObjectName;
            0    4     3      params  [Ljava/lang/Object;
            0    4     4   signature  [Ljava/lang/String;
    Exceptions:
      throws javax.management.ReflectionException, javax.management.MBeanException, javax.management.InstanceNotFoundException
    MethodParameters:
            Name  Flags
      className   
      loaderName  
      params      
      signature   

  public java.lang.Object invoke(javax.management.ObjectName, java.lang.String, java.lang.Object[], java.lang.String[]);
    descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // java.lang.String operationName
        start local 3 // java.lang.Object[] params
        start local 4 // java.lang.String[] signature
         0: .line 466
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkWrite:()V
         1: .line 467
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* operationName */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkMLetMethods:(Ljavax/management/ObjectName;Ljava/lang/String;)V
         2: .line 468
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* operationName */
            aload 3 /* params */
            aload 4 /* signature */
            invokeinterface javax.management.MBeanServer.invoke:(Ljavax/management/ObjectName;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 4 // java.lang.String[] signature
        end local 3 // java.lang.Object[] params
        end local 2 // java.lang.String operationName
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    3     1           name  Ljavax/management/ObjectName;
            0    3     2  operationName  Ljava/lang/String;
            0    3     3         params  [Ljava/lang/Object;
            0    3     4      signature  [Ljava/lang/String;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.MBeanException, javax.management.ReflectionException
    MethodParameters:
               Name  Flags
      name           
      operationName  
      params         
      signature      

  public boolean isInstanceOf(javax.management.ObjectName, java.lang.String);
    descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // java.lang.String className
         0: .line 477
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 478
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* className */
            invokeinterface javax.management.MBeanServer.isInstanceOf:(Ljavax/management/ObjectName;Ljava/lang/String;)Z
            ireturn
        end local 2 // java.lang.String className
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1       name  Ljavax/management/ObjectName;
            0    2     2  className  Ljava/lang/String;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
           Name  Flags
      name       
      className  

  public boolean isRegistered(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
         0: .line 486
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 487
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            invokeinterface javax.management.MBeanServer.isRegistered:(Ljavax/management/ObjectName;)Z
            ireturn
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  name  Ljavax/management/ObjectName;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Set<javax.management.ObjectInstance> queryMBeans(javax.management.ObjectName, javax.management.QueryExp);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.QueryExp query
         0: .line 495
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 496
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* query */
            invokeinterface javax.management.MBeanServer.queryMBeans:(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
            areturn
        end local 2 // javax.management.QueryExp query
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1   name  Ljavax/management/ObjectName;
            0    2     2  query  Ljavax/management/QueryExp;
    Signature: (Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set<Ljavax/management/ObjectInstance;>;
    MethodParameters:
       Name  Flags
      name   
      query  

  public java.util.Set<javax.management.ObjectName> queryNames(javax.management.ObjectName, javax.management.QueryExp);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.QueryExp query
         0: .line 504
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 505
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* query */
            invokeinterface javax.management.MBeanServer.queryNames:(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
            areturn
        end local 2 // javax.management.QueryExp query
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1   name  Ljavax/management/ObjectName;
            0    2     2  query  Ljavax/management/QueryExp;
    Signature: (Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set<Ljavax/management/ObjectName;>;
    MethodParameters:
       Name  Flags
      name   
      query  

  public javax.management.ObjectInstance registerMBean(java.lang.Object, javax.management.ObjectName);
    descriptor: (Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.Object object
        start local 2 // javax.management.ObjectName name
         0: .line 517
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkWrite:()V
         1: .line 518
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* object */
            aload 2 /* name */
            invokeinterface javax.management.MBeanServer.registerMBean:(Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 2 // javax.management.ObjectName name
        end local 1 // java.lang.Object object
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1  object  Ljava/lang/Object;
            0    2     2    name  Ljavax/management/ObjectName;
    Exceptions:
      throws javax.management.InstanceAlreadyExistsException, javax.management.MBeanRegistrationException, javax.management.NotCompliantMBeanException
    MethodParameters:
        Name  Flags
      object  
      name    

  public void removeNotificationListener(javax.management.ObjectName, javax.management.NotificationListener);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/NotificationListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.NotificationListener listener
         0: .line 528
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 529
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* listener */
            invokeinterface javax.management.MBeanServer.removeNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/NotificationListener;)V
         2: .line 530
            return
        end local 2 // javax.management.NotificationListener listener
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    3     1      name  Ljavax/management/ObjectName;
            0    3     2  listener  Ljavax/management/NotificationListener;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      name      
      listener  

  public void removeNotificationListener(javax.management.ObjectName, javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.NotificationListener listener
        start local 3 // javax.management.NotificationFilter filter
        start local 4 // java.lang.Object handback
         0: .line 541
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 542
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* listener */
         2: .line 543
            aload 3 /* filter */
            aload 4 /* handback */
         3: .line 542
            invokeinterface javax.management.MBeanServer.removeNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
         4: .line 544
            return
        end local 4 // java.lang.Object handback
        end local 3 // javax.management.NotificationFilter filter
        end local 2 // javax.management.NotificationListener listener
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    5     1      name  Ljavax/management/ObjectName;
            0    5     2  listener  Ljavax/management/NotificationListener;
            0    5     3    filter  Ljavax/management/NotificationFilter;
            0    5     4  handback  Ljava/lang/Object;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      name      
      listener  
      filter    
      handback  

  public void removeNotificationListener(javax.management.ObjectName, javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/ObjectName;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.ObjectName listener
         0: .line 553
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 554
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* listener */
            invokeinterface javax.management.MBeanServer.removeNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/ObjectName;)V
         2: .line 555
            return
        end local 2 // javax.management.ObjectName listener
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    3     1      name  Ljavax/management/ObjectName;
            0    3     2  listener  Ljavax/management/ObjectName;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      name      
      listener  

  public void removeNotificationListener(javax.management.ObjectName, javax.management.ObjectName, javax.management.NotificationFilter, java.lang.Object);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/ObjectName;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.ObjectName listener
        start local 3 // javax.management.NotificationFilter filter
        start local 4 // java.lang.Object handback
         0: .line 566
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkRead:()V
         1: .line 567
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* listener */
         2: .line 568
            aload 3 /* filter */
            aload 4 /* handback */
         3: .line 567
            invokeinterface javax.management.MBeanServer.removeNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/ObjectName;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
         4: .line 569
            return
        end local 4 // java.lang.Object handback
        end local 3 // javax.management.NotificationFilter filter
        end local 2 // javax.management.ObjectName listener
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    5     1      name  Ljavax/management/ObjectName;
            0    5     2  listener  Ljavax/management/ObjectName;
            0    5     3    filter  Ljavax/management/NotificationFilter;
            0    5     4  handback  Ljava/lang/Object;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      name      
      listener  
      filter    
      handback  

  public void setAttribute(javax.management.ObjectName, javax.management.Attribute);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/Attribute;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.Attribute attribute
         0: .line 582
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkWrite:()V
         1: .line 583
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* attribute */
            invokeinterface javax.management.MBeanServer.setAttribute:(Ljavax/management/ObjectName;Ljavax/management/Attribute;)V
         2: .line 584
            return
        end local 2 // javax.management.Attribute attribute
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    3     1       name  Ljavax/management/ObjectName;
            0    3     2  attribute  Ljavax/management/Attribute;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.AttributeNotFoundException, javax.management.InvalidAttributeValueException, javax.management.MBeanException, javax.management.ReflectionException
    MethodParameters:
           Name  Flags
      name       
      attribute  

  public javax.management.AttributeList setAttributes(javax.management.ObjectName, javax.management.AttributeList);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/AttributeList;)Ljavax/management/AttributeList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.AttributeList attributes
         0: .line 593
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkWrite:()V
         1: .line 594
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 2 /* attributes */
            invokeinterface javax.management.MBeanServer.setAttributes:(Ljavax/management/ObjectName;Ljavax/management/AttributeList;)Ljavax/management/AttributeList;
            areturn
        end local 2 // javax.management.AttributeList attributes
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    2     1        name  Ljavax/management/ObjectName;
            0    2     2  attributes  Ljavax/management/AttributeList;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.ReflectionException
    MethodParameters:
            Name  Flags
      name        
      attributes  

  public void unregisterMBean(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
         0: .line 603
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.checkUnregister:(Ljavax/management/ObjectName;)V
         1: .line 604
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
            invokeinterface javax.management.MBeanServer.unregisterMBean:(Ljavax/management/ObjectName;)V
         2: .line 605
            return
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    3     1  name  Ljavax/management/ObjectName;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.MBeanRegistrationException
    MethodParameters:
      Name  Flags
      name  

  private void checkClassLoader(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // java.lang.Object object
         0: .line 612
            aload 1 /* object */
            instanceof java.lang.ClassLoader
            ifeq 2
         1: .line 613
            new java.lang.SecurityException
            dup
            ldc "Access denied! Creating an MBean that is a ClassLoader is forbidden unless a security manager is installed."
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 617
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object object
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0    3     1  object  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      object  

  private void checkMLetMethods(javax.management.ObjectName, java.lang.String);
    descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
        start local 1 // javax.management.ObjectName name
        start local 2 // java.lang.String operation
         0: .line 622
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 3 /* sm */
        start local 3 // java.lang.SecurityManager sm
         1: .line 623
            aload 3 /* sm */
            ifnull 3
         2: .line 624
            return
         3: .line 627
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 2 /* operation */
            ldc "addURL"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
         4: .line 628
            aload 2 /* operation */
            ldc "getMBeansFromURL"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
         5: .line 629
            return
         6: .line 632
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.remote.security.MBeanServerAccessController.getMBeanServer:()Ljavax/management/MBeanServer;
            aload 1 /* name */
         7: .line 633
            ldc "javax.management.loading.MLet"
         8: .line 632
            invokeinterface javax.management.MBeanServer.isInstanceOf:(Ljavax/management/ObjectName;Ljava/lang/String;)Z
         9: .line 633
            ifne 11
        10: .line 634
            return
        11: .line 637
      StackMap locals:
      StackMap stack:
            aload 2 /* operation */
            ldc "addURL"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 638
            new java.lang.SecurityException
            dup
            ldc "Access denied! MLet method addURL cannot be invoked unless a security manager is installed."
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 647
      StackMap locals:
      StackMap stack:
            new com.sun.jmx.mbeanserver.GetPropertyAction
            dup
            ldc "jmx.remote.x.mlet.allow.getMBeansFromURL"
            invokespecial com.sun.jmx.mbeanserver.GetPropertyAction.<init>:(Ljava/lang/String;)V
            astore 4 /* propAction */
        start local 4 // com.sun.jmx.mbeanserver.GetPropertyAction propAction
        14: .line 648
            aload 4 /* propAction */
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* propValue */
        start local 5 // java.lang.String propValue
        15: .line 649
            ldc "true"
            aload 5 /* propValue */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            istore 6 /* allowGetMBeansFromURL */
        start local 6 // boolean allowGetMBeansFromURL
        16: .line 650
            iload 6 /* allowGetMBeansFromURL */
            ifne 18
        17: .line 651
            new java.lang.SecurityException
            dup
            ldc "Access denied! MLet method getMBeansFromURL cannot be invoked unless a security manager is installed or the system property -Djmx.remote.x.mlet.allow.getMBeansFromURL=true is specified."
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // boolean allowGetMBeansFromURL
        end local 5 // java.lang.String propValue
        end local 4 // com.sun.jmx.mbeanserver.GetPropertyAction propAction
        18: .line 658
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.SecurityManager sm
        end local 2 // java.lang.String operation
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.remote.security.MBeanServerAccessController this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   19     0                   this  Lcom/sun/jmx/remote/security/MBeanServerAccessController;
            0   19     1                   name  Ljavax/management/ObjectName;
            0   19     2              operation  Ljava/lang/String;
            1   19     3                     sm  Ljava/lang/SecurityManager;
           14   18     4             propAction  Lcom/sun/jmx/mbeanserver/GetPropertyAction;
           15   18     5              propValue  Ljava/lang/String;
           16   18     6  allowGetMBeansFromURL  Z
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
           Name  Flags
      name       
      operation  
}
SourceFile: "MBeanServerAccessController.java"