public class com.sun.jmx.interceptor.DefaultMBeanServerInterceptor implements com.sun.jmx.interceptor.MBeanServerInterceptor
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor
  super_class: java.lang.Object
{
  private final transient com.sun.jmx.mbeanserver.MBeanInstantiator instantiator;
    descriptor: Lcom/sun/jmx/mbeanserver/MBeanInstantiator;
    flags: (0x0092) ACC_PRIVATE, ACC_FINAL, ACC_TRANSIENT

  private transient javax.management.MBeanServer server;
    descriptor: Ljavax/management/MBeanServer;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private final transient javax.management.MBeanServerDelegate delegate;
    descriptor: Ljavax/management/MBeanServerDelegate;
    flags: (0x0092) ACC_PRIVATE, ACC_FINAL, ACC_TRANSIENT

  private final transient com.sun.jmx.mbeanserver.Repository repository;
    descriptor: Lcom/sun/jmx/mbeanserver/Repository;
    flags: (0x0092) ACC_PRIVATE, ACC_FINAL, ACC_TRANSIENT

  private final transient java.util.WeakHashMap<com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper, java.lang.ref.WeakReference<com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper>> listenerWrappers;
    descriptor: Ljava/util/WeakHashMap;
    flags: (0x0092) ACC_PRIVATE, ACC_FINAL, ACC_TRANSIENT
    Signature: Ljava/util/WeakHashMap<Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor$ListenerWrapper;Ljava/lang/ref/WeakReference<Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor$ListenerWrapper;>;>;

  private final java.lang.String domain;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean queryByRepo;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private final java.util.Set<javax.management.ObjectName> beingUnregistered;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Ljavax/management/ObjectName;>;

  public void <init>(javax.management.MBeanServer, javax.management.MBeanServerDelegate, com.sun.jmx.mbeanserver.MBeanInstantiator, com.sun.jmx.mbeanserver.Repository);
    descriptor: (Ljavax/management/MBeanServer;Ljavax/management/MBeanServerDelegate;Lcom/sun/jmx/mbeanserver/MBeanInstantiator;Lcom/sun/jmx/mbeanserver/Repository;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.MBeanServer outer
        start local 2 // javax.management.MBeanServerDelegate delegate
        start local 3 // com.sun.jmx.mbeanserver.MBeanInstantiator instantiator
        start local 4 // com.sun.jmx.mbeanserver.Repository repository
         0: .line 165
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 123
            aload 0 /* this */
            aconst_null
            putfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
         2: .line 136
            aload 0 /* this */
         3: .line 137
            new java.util.WeakHashMap
            dup
            invokespecial java.util.WeakHashMap.<init>:()V
            putfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.listenerWrappers:Ljava/util/WeakHashMap;
         4: .line 356
            aload 0 /* this */
         5: .line 357
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
         6: .line 169
            aload 1 /* outer */
            ifnonnull 9
         7: .line 170
            new java.lang.IllegalArgumentException
            dup
            ldc "outer MBeanServer cannot be null"
         8: .line 169
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 171
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.MBeanServer javax.management.MBeanServerDelegate com.sun.jmx.mbeanserver.MBeanInstantiator com.sun.jmx.mbeanserver.Repository
      StackMap stack:
            aload 2 /* delegate */
            ifnonnull 12
        10: .line 172
            new java.lang.IllegalArgumentException
            dup
            ldc "MBeanServerDelegate cannot be null"
        11: .line 171
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 173
      StackMap locals:
      StackMap stack:
            aload 3 /* instantiator */
            ifnonnull 15
        13: .line 174
            new java.lang.IllegalArgumentException
            dup
            ldc "MBeanInstantiator cannot be null"
        14: .line 173
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 175
      StackMap locals:
      StackMap stack:
            aload 4 /* repository */
            ifnonnull 18
        16: .line 176
            new java.lang.IllegalArgumentException
            dup
            ldc "Repository cannot be null"
        17: .line 175
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        18: .line 178
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* outer */
            putfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
        19: .line 179
            aload 0 /* this */
            aload 2 /* delegate */
            putfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.delegate:Ljavax/management/MBeanServerDelegate;
        20: .line 180
            aload 0 /* this */
            aload 3 /* instantiator */
            putfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.instantiator:Lcom/sun/jmx/mbeanserver/MBeanInstantiator;
        21: .line 181
            aload 0 /* this */
            aload 4 /* repository */
            putfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.repository:Lcom/sun/jmx/mbeanserver/Repository;
        22: .line 182
            aload 0 /* this */
            aload 4 /* repository */
            invokevirtual com.sun.jmx.mbeanserver.Repository.getDefaultDomain:()Ljava/lang/String;
            putfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.domain:Ljava/lang/String;
        23: .line 183
            return
        end local 4 // com.sun.jmx.mbeanserver.Repository repository
        end local 3 // com.sun.jmx.mbeanserver.MBeanInstantiator instantiator
        end local 2 // javax.management.MBeanServerDelegate delegate
        end local 1 // javax.management.MBeanServer outer
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   24     0          this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   24     1         outer  Ljavax/management/MBeanServer;
            0   24     2      delegate  Ljavax/management/MBeanServerDelegate;
            0   24     3  instantiator  Lcom/sun/jmx/mbeanserver/MBeanInstantiator;
            0   24     4    repository  Lcom/sun/jmx/mbeanserver/Repository;
    MethodParameters:
              Name  Flags
      outer         
      delegate      
      instantiator  
      repository    

  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=5, locals=3, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // java.lang.String className
        start local 2 // javax.management.ObjectName name
         0: .line 190
            aload 0 /* this */
            aload 1 /* className */
            aload 2 /* name */
            aconst_null
            aconst_null
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.createMBean:(Ljava/lang/String;Ljavax/management/ObjectName;[Ljava/lang/Object;[Ljava/lang/String;)Ljavax/management/ObjectInstance;
            areturn
        end local 2 // javax.management.ObjectName name
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    1     1  className  Ljava/lang/String;
            0    1     2       name  Ljavax/management/ObjectName;
    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, javax.management.ObjectName);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // java.lang.String className
        start local 2 // javax.management.ObjectName name
        start local 3 // javax.management.ObjectName loaderName
         0: .line 200
            aload 0 /* this */
            aload 1 /* className */
            aload 2 /* name */
            aload 3 /* loaderName */
            aconst_null
         1: .line 201
            aconst_null
         2: .line 200
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.createMBean:(Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/ObjectName;[Ljava/lang/Object;[Ljava/lang/String;)Ljavax/management/ObjectInstance;
            areturn
        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.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    3     1   className  Ljava/lang/String;
            0    3     2        name  Ljavax/management/ObjectName;
            0    3     3  loaderName  Ljavax/management/ObjectName;
    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, 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=7, locals=6, args_size=5
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor 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 211
            aload 0 /* this */
            aload 1 /* className */
            aload 2 /* name */
            aconst_null
            iconst_1
         1: .line 212
            aload 3 /* params */
            aload 4 /* signature */
         2: .line 211
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.createMBean:(Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/ObjectName;Z[Ljava/lang/Object;[Ljava/lang/String;)Ljavax/management/ObjectInstance;
         3: areturn
         4: .line 213
      StackMap locals:
      StackMap stack: javax.management.InstanceNotFoundException
            astore 5 /* e */
        start local 5 // javax.management.InstanceNotFoundException e
         5: .line 217
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unexpected exception: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            aload 5 /* e */
         6: .line 216
            invokestatic com.sun.jmx.remote.util.EnvHelp.initCause:(Ljava/lang/Throwable;Ljava/lang/Throwable;)Ljava/lang/Throwable;
            checkcast java.lang.IllegalArgumentException
            athrow
        end local 5 // javax.management.InstanceNotFoundException e
        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.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    7     1  className  Ljava/lang/String;
            0    7     2       name  Ljavax/management/ObjectName;
            0    7     3     params  [Ljava/lang/Object;
            0    7     4  signature  [Ljava/lang/String;
            5    7     5          e  Ljavax/management/InstanceNotFoundException;
      Exception table:
        from    to  target  type
           0     3       4  Class javax.management.InstanceNotFoundException
    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, 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=7, locals=6, args_size=6
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor 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 228
            aload 0 /* this */
            aload 1 /* className */
            aload 2 /* name */
            aload 3 /* loaderName */
            iconst_0
         1: .line 229
            aload 4 /* params */
            aload 5 /* signature */
         2: .line 228
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.createMBean:(Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/ObjectName;Z[Ljava/lang/Object;[Ljava/lang/String;)Ljavax/management/ObjectInstance;
            areturn
        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.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    3     1   className  Ljava/lang/String;
            0    3     2        name  Ljavax/management/ObjectName;
            0    3     3  loaderName  Ljavax/management/ObjectName;
            0    3     4      params  [Ljava/lang/Object;
            0    3     5   signature  [Ljava/lang/String;
    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   

  private javax.management.ObjectInstance createMBean(java.lang.String, javax.management.ObjectName, javax.management.ObjectName, boolean, java.lang.Object[], java.lang.String[]);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;Ljavax/management/ObjectName;Z[Ljava/lang/Object;[Ljava/lang/String;)Ljavax/management/ObjectInstance;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=10, args_size=7
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor 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 // boolean withDefaultLoaderRepository
        start local 5 // java.lang.Object[] params
        start local 6 // java.lang.String[] signature
         0: .line 243
            aload 1 /* className */
            ifnonnull 6
         1: .line 245
            new java.lang.IllegalArgumentException
            dup
            ldc "The class name cannot be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         2: .line 244
            astore 8 /* wrapped */
        start local 8 // java.lang.RuntimeException wrapped
         3: .line 246
            new javax.management.RuntimeOperationsException
            dup
            aload 8 /* wrapped */
         4: .line 247
            ldc "Exception occurred during MBean creation"
         5: .line 246
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 8 // java.lang.RuntimeException wrapped
         6: .line 250
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            ifnull 14
         7: .line 251
            aload 2 /* name */
            invokevirtual javax.management.ObjectName.isPattern:()Z
            ifeq 13
         8: .line 253
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid name->"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         9: .line 254
            aload 2 /* name */
            invokevirtual javax.management.ObjectName.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 253
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
        11: .line 252
            astore 8 /* wrapped */
        start local 8 // java.lang.RuntimeException wrapped
        12: .line 256
            new javax.management.RuntimeOperationsException
            dup
            aload 8 /* wrapped */
            ldc "Exception occurred during MBean creation"
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 8 // java.lang.RuntimeException wrapped
        13: .line 259
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 2 /* name */
        14: .line 262
      StackMap locals:
      StackMap stack:
            aload 1 /* className */
            aconst_null
            aconst_null
            ldc "instantiate"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        15: .line 263
            aload 1 /* className */
            aconst_null
            aload 2 /* name */
            ldc "registerMBean"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        16: .line 266
            iload 4 /* withDefaultLoaderRepository */
            ifeq 26
        17: .line 267
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 23
        18: .line 268
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
        19: .line 269
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        20: .line 270
            ldc "createMBean"
        21: .line 271
            new java.lang.StringBuilder
            dup
            ldc "ClassName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* className */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ", ObjectName = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        22: .line 268
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        23: .line 274
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.instantiator:Lcom/sun/jmx/mbeanserver/MBeanInstantiator;
            aload 1 /* className */
            invokevirtual com.sun.jmx.mbeanserver.MBeanInstantiator.findClassWithDefaultLoaderRepository:(Ljava/lang/String;)Ljava/lang/Class;
        24: .line 273
            astore 7 /* theClass */
        start local 7 // java.lang.Class theClass
        25: .line 275
            goto 46
        end local 7 // java.lang.Class theClass
      StackMap locals:
      StackMap stack:
        26: aload 3 /* loaderName */
            ifnonnull 37
        27: .line 276
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 33
        28: .line 277
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
        29: .line 278
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        30: .line 279
            ldc "createMBean"
            new java.lang.StringBuilder
            dup
            ldc "ClassName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* className */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        31: .line 280
            ldc ", ObjectName = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ", Loader name = null"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        32: .line 277
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        33: .line 283
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.instantiator:Lcom/sun/jmx/mbeanserver/MBeanInstantiator;
            aload 1 /* className */
        34: .line 284
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
        35: .line 283
            invokevirtual com.sun.jmx.mbeanserver.MBeanInstantiator.findClass:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
            astore 7 /* theClass */
        start local 7 // java.lang.Class theClass
        36: .line 285
            goto 46
        end local 7 // java.lang.Class theClass
        37: .line 286
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* loaderName */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 3 /* loaderName */
        38: .line 288
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 45
        39: .line 289
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
        40: .line 290
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        41: .line 291
            ldc "createMBean"
            new java.lang.StringBuilder
            dup
            ldc "ClassName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* className */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        42: .line 292
            ldc ", ObjectName = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        43: .line 293
            ldc ", Loader name = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* loaderName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        44: .line 289
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        45: .line 296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.instantiator:Lcom/sun/jmx/mbeanserver/MBeanInstantiator;
            aload 1 /* className */
            aload 3 /* loaderName */
            invokevirtual com.sun.jmx.mbeanserver.MBeanInstantiator.findClass:(Ljava/lang/String;Ljavax/management/ObjectName;)Ljava/lang/Class;
            astore 7 /* theClass */
        start local 7 // java.lang.Class theClass
        46: .line 299
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 7 /* theClass */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanTrustPermission:(Ljava/lang/Class;)V
        47: .line 302
            aload 7 /* theClass */
            invokestatic com.sun.jmx.mbeanserver.Introspector.testCreation:(Ljava/lang/Class;)V
        48: .line 305
            aload 7 /* theClass */
            invokestatic com.sun.jmx.mbeanserver.Introspector.checkCompliance:(Ljava/lang/Class;)V
        49: .line 307
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.instantiator:Lcom/sun/jmx/mbeanserver/MBeanInstantiator;
            aload 7 /* theClass */
            aload 5 /* params */
            aload 6 /* signature */
        50: .line 308
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
        51: .line 307
            invokevirtual com.sun.jmx.mbeanserver.MBeanInstantiator.instantiate:(Ljava/lang/Class;[Ljava/lang/Object;[Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Object;
            astore 8 /* moi */
        start local 8 // java.lang.Object moi
        52: .line 310
            aload 8 /* moi */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getNewMBeanClassName:(Ljava/lang/Object;)Ljava/lang/String;
            astore 9 /* infoClassName */
        start local 9 // java.lang.String infoClassName
        53: .line 312
            aload 0 /* this */
            aload 9 /* infoClassName */
            aload 8 /* moi */
            aload 2 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject:(Ljava/lang/String;Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 9 // java.lang.String infoClassName
        end local 8 // java.lang.Object moi
        end local 7 // java.lang.Class theClass
        end local 6 // java.lang.String[] signature
        end local 5 // java.lang.Object[] params
        end local 4 // boolean withDefaultLoaderRepository
        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.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0   54     0                         this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   54     1                    className  Ljava/lang/String;
            0   54     2                         name  Ljavax/management/ObjectName;
            0   54     3                   loaderName  Ljavax/management/ObjectName;
            0   54     4  withDefaultLoaderRepository  Z
            0   54     5                       params  [Ljava/lang/Object;
            0   54     6                    signature  [Ljava/lang/String;
           25   26     7                     theClass  Ljava/lang/Class;
           36   37     7                     theClass  Ljava/lang/Class;
           46   54     7                     theClass  Ljava/lang/Class;
            3    6     8                      wrapped  Ljava/lang/RuntimeException;
           12   13     8                      wrapped  Ljava/lang/RuntimeException;
           52   54     8                          moi  Ljava/lang/Object;
           53   54     9                infoClassName  Ljava/lang/String;
    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                   
      withDefaultLoaderRepository  
      params                       
      signature                    

  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=4, locals=5, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // java.lang.Object object
        start local 2 // javax.management.ObjectName name
         0: .line 321
            aload 1 /* object */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 3 /* theClass */
        start local 3 // java.lang.Class theClass
         1: .line 323
            aload 3 /* theClass */
            invokestatic com.sun.jmx.mbeanserver.Introspector.checkCompliance:(Ljava/lang/Class;)V
         2: .line 325
            aload 1 /* object */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getNewMBeanClassName:(Ljava/lang/Object;)Ljava/lang/String;
            astore 4 /* infoClassName */
        start local 4 // java.lang.String infoClassName
         3: .line 327
            aload 4 /* infoClassName */
            aconst_null
            aload 2 /* name */
            ldc "registerMBean"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         4: .line 328
            aload 3 /* theClass */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanTrustPermission:(Ljava/lang/Class;)V
         5: .line 330
            aload 0 /* this */
            aload 4 /* infoClassName */
            aload 1 /* object */
            aload 2 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject:(Ljava/lang/String;Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 4 // java.lang.String infoClassName
        end local 3 // java.lang.Class theClass
        end local 2 // javax.management.ObjectName name
        end local 1 // java.lang.Object object
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    6     1         object  Ljava/lang/Object;
            0    6     2           name  Ljavax/management/ObjectName;
            1    6     3       theClass  Ljava/lang/Class;
            3    6     4  infoClassName  Ljava/lang/String;
    Exceptions:
      throws javax.management.InstanceAlreadyExistsException, javax.management.MBeanRegistrationException, javax.management.NotCompliantMBeanException
    MethodParameters:
        Name  Flags
      object  
      name    

  private static java.lang.String getNewMBeanClassName(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // java.lang.Object mbeanToRegister
         0: .line 335
            aload 0 /* mbeanToRegister */
            instanceof javax.management.DynamicMBean
            ifeq 12
         1: .line 336
            aload 0 /* mbeanToRegister */
            checkcast javax.management.DynamicMBean
            astore 1 /* mbean */
        start local 1 // javax.management.DynamicMBean mbean
         2: .line 339
            aload 1 /* mbean */
            invokeinterface javax.management.DynamicMBean.getMBeanInfo:()Ljavax/management/MBeanInfo;
            invokevirtual javax.management.MBeanInfo.getClassName:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         3: .line 340
            goto 9
        end local 2 // java.lang.String name
      StackMap locals: java.lang.Object javax.management.DynamicMBean
      StackMap stack: java.lang.Exception
         4: astore 3 /* e */
        start local 3 // java.lang.Exception e
         5: .line 343
            new javax.management.NotCompliantMBeanException
            dup
            ldc "Bad getMBeanInfo()"
            invokespecial javax.management.NotCompliantMBeanException.<init>:(Ljava/lang/String;)V
         6: .line 342
            astore 4 /* ncmbe */
        start local 4 // javax.management.NotCompliantMBeanException ncmbe
         7: .line 344
            aload 4 /* ncmbe */
            aload 3 /* e */
            invokevirtual javax.management.NotCompliantMBeanException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
         8: .line 345
            aload 4 /* ncmbe */
            athrow
        end local 4 // javax.management.NotCompliantMBeanException ncmbe
        end local 3 // java.lang.Exception e
        start local 2 // java.lang.String name
         9: .line 347
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* name */
            ifnonnull 11
        10: .line 349
            new javax.management.NotCompliantMBeanException
            dup
            ldc "MBeanInfo has null class name"
            invokespecial javax.management.NotCompliantMBeanException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 351
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            areturn
        end local 2 // java.lang.String name
        end local 1 // javax.management.DynamicMBean mbean
        12: .line 353
      StackMap locals:
      StackMap stack:
            aload 0 /* mbeanToRegister */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.Object mbeanToRegister
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   13     0  mbeanToRegister  Ljava/lang/Object;
            2   12     1            mbean  Ljavax/management/DynamicMBean;
            3    4     2             name  Ljava/lang/String;
            9   12     2             name  Ljava/lang/String;
            5    9     3                e  Ljava/lang/Exception;
            7    9     4            ncmbe  Ljavax/management/NotCompliantMBeanException;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Exception
    Exceptions:
      throws javax.management.NotCompliantMBeanException
    MethodParameters:
                 Name  Flags
      mbeanToRegister  

  public void unregisterMBean(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
         0: .line 362
            aload 1 /* name */
            ifnonnull 6
         1: .line 364
            new java.lang.IllegalArgumentException
            dup
            ldc "Object name cannot be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         2: .line 363
            astore 2 /* wrapped */
        start local 2 // java.lang.RuntimeException wrapped
         3: .line 365
            new javax.management.RuntimeOperationsException
            dup
            aload 2 /* wrapped */
         4: .line 366
            ldc "Exception occurred trying to unregister the MBean"
         5: .line 365
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.RuntimeException wrapped
         6: .line 369
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 1 /* name */
         7: .line 407
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
            dup
            astore 2
            monitorenter
         8: .line 408
            goto 13
         9: .line 410
      StackMap locals: java.util.Set
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
            invokevirtual java.lang.Object.wait:()V
        10: .line 411
            goto 13
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        11: astore 3 /* e */
        start local 3 // java.lang.InterruptedException e
        12: .line 412
            new javax.management.MBeanRegistrationException
            dup
            aload 3 /* e */
            aload 3 /* e */
            invokevirtual java.lang.InterruptedException.toString:()Ljava/lang/String;
            invokespecial javax.management.MBeanRegistrationException.<init>:(Ljava/lang/Exception;Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.InterruptedException e
        13: .line 408
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
            aload 1 /* name */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 9
        14: .line 417
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
            aload 1 /* name */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        15: .line 407
            aload 2
            monitorexit
        16: goto 19
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: aload 2
            monitorexit
        18: athrow
        19: .line 421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.exclusiveUnregisterMBean:(Ljavax/management/ObjectName;)V
        20: .line 422
            goto 30
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: astore 2
        22: .line 423
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
            dup
            astore 3
            monitorenter
        23: .line 424
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
            aload 1 /* name */
            invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
            pop
        24: .line 425
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
            invokevirtual java.lang.Object.notifyAll:()V
        25: .line 423
            aload 3
            monitorexit
        26: goto 29
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName java.lang.Throwable java.util.Set
      StackMap stack: java.lang.Throwable
        27: aload 3
            monitorexit
        28: athrow
        29: .line 427
      StackMap locals:
      StackMap stack:
            aload 2
            athrow
        30: .line 423
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
            dup
            astore 3
            monitorenter
        31: .line 424
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
            aload 1 /* name */
            invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
            pop
        32: .line 425
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.beingUnregistered:Ljava/util/Set;
            invokevirtual java.lang.Object.notifyAll:()V
        33: .line 423
            aload 3
            monitorexit
        34: goto 37
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName top java.util.Set
      StackMap stack: java.lang.Throwable
        35: aload 3
            monitorexit
        36: athrow
        37: .line 428
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName
      StackMap stack:
            return
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   38     0     this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   38     1     name  Ljavax/management/ObjectName;
            3    6     2  wrapped  Ljava/lang/RuntimeException;
           12   13     3        e  Ljava/lang/InterruptedException;
      Exception table:
        from    to  target  type
           9    10      11  Class java.lang.InterruptedException
           8    16      17  any
          17    18      17  any
          19    21      21  any
          23    26      27  any
          27    28      27  any
          31    34      35  any
          35    36      35  any
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.MBeanRegistrationException
    MethodParameters:
      Name  Flags
      name  

  private void exclusiveUnregisterMBean(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=2
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
         0: .line 433
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 2 /* instance */
        start local 2 // javax.management.DynamicMBean instance
         1: .line 436
            aload 2 /* instance */
            aconst_null
            aload 1 /* name */
            ldc "unregisterMBean"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         2: .line 438
            aload 2 /* instance */
            instanceof javax.management.MBeanRegistration
            ifeq 4
         3: .line 439
            aload 2 /* instance */
            checkcast javax.management.MBeanRegistration
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.preDeregisterInvoke:(Ljavax/management/MBeanRegistration;)V
         4: .line 441
      StackMap locals: javax.management.DynamicMBean
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.repository:Lcom/sun/jmx/mbeanserver/Repository;
            aload 1 /* name */
            invokevirtual com.sun.jmx.mbeanserver.Repository.remove:(Ljavax/management/ObjectName;)V
         5: .line 449
            aload 2 /* instance */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getResource:(Ljavax/management/DynamicMBean;)Ljava/lang/Object;
            astore 3 /* resource */
        start local 3 // java.lang.Object resource
         6: .line 450
            aload 3 /* resource */
            instanceof java.lang.ClassLoader
            ifeq 10
         7: .line 451
            aload 3 /* resource */
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            if_acmpeq 10
         8: .line 452
            aload 0 /* this */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getInstantiatorCLR:()Lcom/sun/jmx/mbeanserver/ModifiableClassLoaderRepository;
            astore 4 /* clr */
        start local 4 // com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository clr
         9: .line 453
            aload 4 /* clr */
            ifnull 10
            aload 4 /* clr */
            aload 1 /* name */
            invokeinterface com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository.removeClassLoader:(Ljavax/management/ObjectName;)V
        end local 4 // com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository clr
        10: .line 459
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 16
        11: .line 460
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
        12: .line 461
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        13: .line 462
            ldc "unregisterMBean"
            new java.lang.StringBuilder
            dup
            ldc "Send delete notification of object "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        14: .line 463
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.getCanonicalName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        15: .line 460
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        16: .line 465
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "JMX.mbean.unregistered"
        17: .line 466
            aload 1 /* name */
        18: .line 465
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.sendNotification:(Ljava/lang/String;Ljavax/management/ObjectName;)V
        19: .line 468
            aload 2 /* instance */
            instanceof javax.management.MBeanRegistration
            ifeq 21
        20: .line 469
            aload 2 /* instance */
            checkcast javax.management.MBeanRegistration
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.postDeregisterInvoke:(Ljavax/management/MBeanRegistration;)V
        21: .line 470
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.Object resource
        end local 2 // javax.management.DynamicMBean instance
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   22     0      this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   22     1      name  Ljavax/management/ObjectName;
            1   22     2  instance  Ljavax/management/DynamicMBean;
            6   22     3  resource  Ljava/lang/Object;
            9   10     4       clr  Lcom/sun/jmx/mbeanserver/ModifiableClassLoaderRepository;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.MBeanRegistrationException
    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=4, locals=4, args_size=2
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
         0: .line 475
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 1 /* name */
         1: .line 476
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 2 /* instance */
        start local 2 // javax.management.DynamicMBean instance
         2: .line 478
            aload 2 /* instance */
            aconst_null
            aload 1 /* name */
            ldc "getObjectInstance"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         3: .line 480
            aload 2 /* instance */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getClassName:(Ljavax/management/DynamicMBean;)Ljava/lang/String;
            astore 3 /* className */
        start local 3 // java.lang.String className
         4: .line 482
            new javax.management.ObjectInstance
            dup
            aload 1 /* name */
            aload 3 /* className */
            invokespecial javax.management.ObjectInstance.<init>:(Ljavax/management/ObjectName;Ljava/lang/String;)V
            areturn
        end local 3 // java.lang.String className
        end local 2 // javax.management.DynamicMBean instance
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    5     1       name  Ljavax/management/ObjectName;
            2    5     2   instance  Ljavax/management/DynamicMBean;
            4    5     3  className  Ljava/lang/String;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    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=4, locals=8, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.QueryExp query
         0: .line 486
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 3 /* sm */
        start local 3 // java.lang.SecurityManager sm
         1: .line 487
            aload 3 /* sm */
            ifnull 16
         2: .line 490
            aconst_null
            aconst_null
            aconst_null
            ldc "queryMBeans"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         3: .line 494
            aload 0 /* this */
            aload 1 /* name */
            aconst_null
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryMBeansImpl:(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
            astore 4 /* list */
        start local 4 // java.util.Set list
         4: .line 500
            new java.util.HashSet
            dup
            aload 4 /* list */
            invokeinterface java.util.Set.size:()I
            invokespecial java.util.HashSet.<init>:(I)V
         5: .line 499
            astore 5 /* allowedList */
        start local 5 // java.util.Set allowedList
         6: .line 501
            aload 4 /* list */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 14
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.QueryExp java.lang.SecurityManager java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
         7: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.ObjectInstance
            astore 6 /* oi */
        start local 6 // javax.management.ObjectInstance oi
         8: .line 503
            aload 6 /* oi */
            invokevirtual javax.management.ObjectInstance.getClassName:()Ljava/lang/String;
            aconst_null
         9: .line 504
            aload 6 /* oi */
            invokevirtual javax.management.ObjectInstance.getObjectName:()Ljavax/management/ObjectName;
            ldc "queryMBeans"
        10: .line 503
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        11: .line 505
            aload 5 /* allowedList */
            aload 6 /* oi */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        12: .line 506
            goto 14
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.QueryExp java.lang.SecurityManager java.util.Set java.util.Set javax.management.ObjectInstance java.util.Iterator
      StackMap stack: java.lang.SecurityException
        13: pop
        end local 6 // javax.management.ObjectInstance oi
        14: .line 501
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.QueryExp java.lang.SecurityManager java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        15: .line 513
            aload 0 /* this */
            aload 5 /* allowedList */
            aload 2 /* query */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.filterListOfObjectInstances:(Ljava/util/Set;Ljavax/management/QueryExp;)Ljava/util/Set;
            areturn
        end local 5 // java.util.Set allowedList
        end local 4 // java.util.Set list
        16: .line 517
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.QueryExp java.lang.SecurityManager
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* query */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryMBeansImpl:(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
            areturn
        end local 3 // java.lang.SecurityManager sm
        end local 2 // javax.management.QueryExp query
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   17     1         name  Ljavax/management/ObjectName;
            0   17     2        query  Ljavax/management/QueryExp;
            1   17     3           sm  Ljava/lang/SecurityManager;
            4   16     4         list  Ljava/util/Set<Ljavax/management/ObjectInstance;>;
            6   16     5  allowedList  Ljava/util/Set<Ljavax/management/ObjectInstance;>;
            8   14     6           oi  Ljavax/management/ObjectInstance;
      Exception table:
        from    to  target  type
           8    12      13  Class java.lang.SecurityException
    Signature: (Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set<Ljavax/management/ObjectInstance;>;
    MethodParameters:
       Name  Flags
      name   
      query  

  private java.util.Set<javax.management.ObjectInstance> queryMBeansImpl(javax.management.ObjectName, javax.management.QueryExp);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.QueryExp query
         0: .line 525
            aconst_null
            astore 3 /* list */
        start local 3 // java.util.Set list
         1: .line 526
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.repository:Lcom/sun/jmx/mbeanserver/Repository;
            aload 1 /* name */
            aload 2 /* query */
            invokevirtual com.sun.jmx.mbeanserver.Repository.query:(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
            astore 3 /* list */
         2: .line 528
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryByRepo:Z
            ifeq 4
         3: .line 530
            aconst_null
            astore 2 /* query */
         4: .line 533
      StackMap locals: java.util.Set
      StackMap stack:
            aload 0 /* this */
            aload 3 /* list */
            aload 2 /* query */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.objectInstancesFromFilteredNamedObjects:(Ljava/util/Set;Ljavax/management/QueryExp;)Ljava/util/Set;
            areturn
        end local 3 // java.util.Set list
        end local 2 // javax.management.QueryExp query
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    5     1   name  Ljavax/management/ObjectName;
            0    5     2  query  Ljavax/management/QueryExp;
            1    5     3   list  Ljava/util/Set<Lcom/sun/jmx/mbeanserver/NamedObject;>;
    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=4, locals=10, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.QueryExp query
         0: .line 538
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 4 /* sm */
        start local 4 // java.lang.SecurityManager sm
         1: .line 539
            aload 4 /* sm */
            ifnull 23
         2: .line 542
            aconst_null
            aconst_null
            aconst_null
            ldc "queryNames"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         3: .line 546
            aload 0 /* this */
            aload 1 /* name */
            aconst_null
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryMBeansImpl:(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
            astore 5 /* list */
        start local 5 // java.util.Set list
         4: .line 552
            new java.util.HashSet
            dup
            aload 5 /* list */
            invokeinterface java.util.Set.size:()I
            invokespecial java.util.HashSet.<init>:(I)V
         5: .line 551
            astore 6 /* allowedList */
        start local 6 // java.util.Set allowedList
         6: .line 553
            aload 5 /* list */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8
            goto 14
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.QueryExp top java.lang.SecurityManager java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
         7: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.ObjectInstance
            astore 7 /* oi */
        start local 7 // javax.management.ObjectInstance oi
         8: .line 555
            aload 7 /* oi */
            invokevirtual javax.management.ObjectInstance.getClassName:()Ljava/lang/String;
            aconst_null
         9: .line 556
            aload 7 /* oi */
            invokevirtual javax.management.ObjectInstance.getObjectName:()Ljavax/management/ObjectName;
            ldc "queryNames"
        10: .line 555
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        11: .line 557
            aload 6 /* allowedList */
            aload 7 /* oi */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        12: .line 558
            goto 14
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.QueryExp top java.lang.SecurityManager java.util.Set java.util.Set javax.management.ObjectInstance java.util.Iterator
      StackMap stack: java.lang.SecurityException
        13: pop
        end local 7 // javax.management.ObjectInstance oi
        14: .line 553
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.QueryExp top java.lang.SecurityManager java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        15: .line 566
            aload 0 /* this */
            aload 6 /* allowedList */
            aload 2 /* query */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.filterListOfObjectInstances:(Ljava/util/Set;Ljavax/management/QueryExp;)Ljava/util/Set;
        16: .line 565
            astore 7 /* queryObjectInstanceList */
        start local 7 // java.util.Set queryObjectInstanceList
        17: .line 567
            new java.util.HashSet
            dup
            aload 7 /* queryObjectInstanceList */
            invokeinterface java.util.Set.size:()I
            invokespecial java.util.HashSet.<init>:(I)V
            astore 3 /* queryList */
        start local 3 // java.util.Set queryList
        18: .line 568
            aload 7 /* queryObjectInstanceList */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 9
            goto 21
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.QueryExp java.util.Set java.lang.SecurityManager java.util.Set java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
        19: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.ObjectInstance
            astore 8 /* oi */
        start local 8 // javax.management.ObjectInstance oi
        20: .line 569
            aload 3 /* queryList */
            aload 8 /* oi */
            invokevirtual javax.management.ObjectInstance.getObjectName:()Ljavax/management/ObjectName;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // javax.management.ObjectInstance oi
        21: .line 568
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        end local 7 // java.util.Set queryObjectInstanceList
        end local 6 // java.util.Set allowedList
        end local 5 // java.util.Set list
        22: .line 571
            goto 24
        end local 3 // java.util.Set queryList
        23: .line 574
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.QueryExp top java.lang.SecurityManager
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* query */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryNamesImpl:(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
            astore 3 /* queryList */
        start local 3 // java.util.Set queryList
        24: .line 576
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.QueryExp java.util.Set java.lang.SecurityManager
      StackMap stack:
            aload 3 /* queryList */
            areturn
        end local 4 // java.lang.SecurityManager sm
        end local 3 // java.util.Set queryList
        end local 2 // javax.management.QueryExp query
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   25     0                     this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   25     1                     name  Ljavax/management/ObjectName;
            0   25     2                    query  Ljavax/management/QueryExp;
           18   23     3                queryList  Ljava/util/Set<Ljavax/management/ObjectName;>;
           24   25     3                queryList  Ljava/util/Set<Ljavax/management/ObjectName;>;
            1   25     4                       sm  Ljava/lang/SecurityManager;
            4   22     5                     list  Ljava/util/Set<Ljavax/management/ObjectInstance;>;
            6   22     6              allowedList  Ljava/util/Set<Ljavax/management/ObjectInstance;>;
            8   14     7                       oi  Ljavax/management/ObjectInstance;
           17   22     7  queryObjectInstanceList  Ljava/util/Set<Ljavax/management/ObjectInstance;>;
           20   21     8                       oi  Ljavax/management/ObjectInstance;
      Exception table:
        from    to  target  type
           8    12      13  Class java.lang.SecurityException
    Signature: (Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set<Ljavax/management/ObjectName;>;
    MethodParameters:
       Name  Flags
      name   
      query  

  private java.util.Set<javax.management.ObjectName> queryNamesImpl(javax.management.ObjectName, javax.management.QueryExp);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.QueryExp query
         0: .line 582
            aconst_null
            astore 3 /* list */
        start local 3 // java.util.Set list
         1: .line 583
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.repository:Lcom/sun/jmx/mbeanserver/Repository;
            aload 1 /* name */
            aload 2 /* query */
            invokevirtual com.sun.jmx.mbeanserver.Repository.query:(Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set;
            astore 3 /* list */
         2: .line 585
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryByRepo:Z
            ifeq 4
         3: .line 587
            aconst_null
            astore 2 /* query */
         4: .line 590
      StackMap locals: java.util.Set
      StackMap stack:
            aload 0 /* this */
            aload 3 /* list */
            aload 2 /* query */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.objectNamesFromFilteredNamedObjects:(Ljava/util/Set;Ljavax/management/QueryExp;)Ljava/util/Set;
            areturn
        end local 3 // java.util.Set list
        end local 2 // javax.management.QueryExp query
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    5     1   name  Ljavax/management/ObjectName;
            0    5     2  query  Ljavax/management/QueryExp;
            1    5     3   list  Ljava/util/Set<Lcom/sun/jmx/mbeanserver/NamedObject;>;
    Signature: (Ljavax/management/ObjectName;Ljavax/management/QueryExp;)Ljava/util/Set<Ljavax/management/ObjectName;>;
    MethodParameters:
       Name  Flags
      name   
      query  

  public boolean isRegistered(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
         0: .line 594
            aload 1 /* name */
            ifnonnull 5
         1: .line 595
            new javax.management.RuntimeOperationsException
            dup
         2: .line 596
            new java.lang.IllegalArgumentException
            dup
            ldc "Object name cannot be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         3: .line 597
            ldc "Object name cannot be null"
         4: .line 595
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
         5: .line 600
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 1 /* name */
         6: .line 605
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.repository:Lcom/sun/jmx/mbeanserver/Repository;
            aload 1 /* name */
            invokevirtual com.sun.jmx.mbeanserver.Repository.contains:(Ljavax/management/ObjectName;)Z
            ireturn
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    7     1  name  Ljavax/management/ObjectName;
    MethodParameters:
      Name  Flags
      name  

  public java.lang.String[] getDomains();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=1
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
         0: .line 609
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 1 /* sm */
        start local 1 // java.lang.SecurityManager sm
         1: .line 610
            aload 1 /* sm */
            ifnull 26
         2: .line 613
            aconst_null
            aconst_null
            aconst_null
            ldc "getDomains"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         3: .line 617
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.repository:Lcom/sun/jmx/mbeanserver/Repository;
            invokevirtual com.sun.jmx.mbeanserver.Repository.getDomains:()[Ljava/lang/String;
            astore 2 /* domains */
        start local 2 // java.lang.String[] domains
         4: .line 622
            new java.util.ArrayList
            dup
            aload 2 /* domains */
            arraylength
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 3 /* result */
        start local 3 // java.util.List result
         5: .line 623
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 24
         7: .line 625
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.lang.SecurityManager java.lang.String[] java.util.List int
      StackMap stack:
            new javax.management.ObjectName
            dup
            new java.lang.StringBuilder
            dup
            aload 2 /* domains */
            iload 4 /* i */
            aaload
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":x=x"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;)V
            astore 5 /* domain */
        start local 5 // javax.management.ObjectName domain
         8: .line 626
            aconst_null
            aconst_null
            aload 5 /* domain */
            ldc "getDomains"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         9: .line 627
            aload 3 /* result */
            aload 2 /* domains */
            iload 4 /* i */
            aaload
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // javax.management.ObjectName domain
        10: .line 628
            goto 23
      StackMap locals:
      StackMap stack: javax.management.MalformedObjectNameException
        11: astore 5 /* e */
        start local 5 // javax.management.MalformedObjectNameException e
        12: .line 630
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.SEVERE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 23
        13: .line 631
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.SEVERE:Ljava/util/logging/Level;
        14: .line 632
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        15: .line 633
            ldc "getDomains"
        16: .line 634
            new java.lang.StringBuilder
            dup
            ldc "Failed to check permission for domain = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        17: .line 635
            aload 2 /* domains */
            iload 4 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        18: .line 634
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        19: .line 635
            aload 5 /* e */
        20: .line 631
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 5 // javax.management.MalformedObjectNameException e
        21: goto 23
        22: .line 637
      StackMap locals:
      StackMap stack: java.lang.SecurityException
            pop
        23: .line 623
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 4 /* i */
            aload 2 /* domains */
            arraylength
            if_icmplt 7
        end local 4 // int i
        25: .line 644
            aload 3 /* result */
            aload 3 /* result */
            invokeinterface java.util.List.size:()I
            anewarray java.lang.String
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
        end local 3 // java.util.List result
        end local 2 // java.lang.String[] domains
        26: .line 646
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.repository:Lcom/sun/jmx/mbeanserver/Repository;
            invokevirtual com.sun.jmx.mbeanserver.Repository.getDomains:()[Ljava/lang/String;
            areturn
        end local 1 // java.lang.SecurityManager sm
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   27     0     this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            1   27     1       sm  Ljava/lang/SecurityManager;
            4   26     2  domains  [Ljava/lang/String;
            5   26     3   result  Ljava/util/List<Ljava/lang/String;>;
            6   25     4        i  I
            8   10     5   domain  Ljavax/management/ObjectName;
           12   21     5        e  Ljavax/management/MalformedObjectNameException;
      Exception table:
        from    to  target  type
           7    10      11  Class javax.management.MalformedObjectNameException
           7    10      22  Class java.lang.SecurityException

  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.interceptor.DefaultMBeanServerInterceptor this
         0: .line 651
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.repository:Lcom/sun/jmx/mbeanserver/Repository;
            invokevirtual com.sun.jmx.mbeanserver.Repository.getCount:()Ljava/lang/Integer;
            areturn
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;

  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=7, locals=5, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // java.lang.String attribute
         0: .line 658
            aload 1 /* name */
            ifnonnull 6
         1: .line 659
            new javax.management.RuntimeOperationsException
            dup
         2: .line 660
            new java.lang.IllegalArgumentException
            dup
            ldc "Object name cannot be null"
         3: .line 659
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         4: .line 661
            ldc "Exception occurred trying to invoke the getter on the MBean"
         5: .line 659
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
         6: .line 663
      StackMap locals:
      StackMap stack:
            aload 2 /* attribute */
            ifnonnull 12
         7: .line 664
            new javax.management.RuntimeOperationsException
            dup
         8: .line 665
            new java.lang.IllegalArgumentException
            dup
            ldc "Attribute cannot be null"
         9: .line 664
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
        10: .line 666
            ldc "Exception occurred trying to invoke the getter on the MBean"
        11: .line 664
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        12: .line 669
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 1 /* name */
        13: .line 671
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 19
        14: .line 672
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
        15: .line 673
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        16: .line 674
            ldc "getAttribute"
        17: .line 675
            new java.lang.StringBuilder
            dup
            ldc "Attribute = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* attribute */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ", ObjectName = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        18: .line 672
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        19: .line 678
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 3 /* instance */
        start local 3 // javax.management.DynamicMBean instance
        20: .line 679
            aload 3 /* instance */
            aload 2 /* attribute */
            aload 1 /* name */
            ldc "getAttribute"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        21: .line 682
            aload 3 /* instance */
            aload 2 /* attribute */
            invokeinterface javax.management.DynamicMBean.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
        22: areturn
        23: .line 683
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName java.lang.String javax.management.DynamicMBean
      StackMap stack: javax.management.AttributeNotFoundException
            astore 4 /* e */
        start local 4 // javax.management.AttributeNotFoundException e
        24: .line 684
            aload 4 /* e */
            athrow
        end local 4 // javax.management.AttributeNotFoundException e
        25: .line 685
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4 /* t */
        start local 4 // java.lang.Throwable t
        26: .line 686
            aload 4 /* t */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.rethrowMaybeMBeanException:(Ljava/lang/Throwable;)V
        27: .line 687
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 4 // java.lang.Throwable t
        end local 3 // javax.management.DynamicMBean instance
        end local 2 // java.lang.String attribute
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   28     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   28     1       name  Ljavax/management/ObjectName;
            0   28     2  attribute  Ljava/lang/String;
           20   28     3   instance  Ljavax/management/DynamicMBean;
           24   25     4          e  Ljavax/management/AttributeNotFoundException;
           26   28     4          t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          21    22      23  Class javax.management.AttributeNotFoundException
          21    22      25  Class java.lang.Throwable
    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=7, locals=12, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // java.lang.String[] attributes
         0: .line 694
            aload 1 /* name */
            ifnonnull 6
         1: .line 695
            new javax.management.RuntimeOperationsException
            dup
         2: .line 696
            new java.lang.IllegalArgumentException
            dup
            ldc "ObjectName name cannot be null"
         3: .line 695
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         4: .line 697
            ldc "Exception occurred trying to invoke the getter on the MBean"
         5: .line 695
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
         6: .line 700
      StackMap locals:
      StackMap stack:
            aload 2 /* attributes */
            ifnonnull 12
         7: .line 701
            new javax.management.RuntimeOperationsException
            dup
         8: .line 702
            new java.lang.IllegalArgumentException
            dup
            ldc "Attributes cannot be null"
         9: .line 701
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
        10: .line 703
            ldc "Exception occurred trying to invoke the getter on the MBean"
        11: .line 701
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        12: .line 706
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 1 /* name */
        13: .line 708
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 18
        14: .line 709
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
        15: .line 710
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        16: .line 711
            ldc "getAttributes"
            new java.lang.StringBuilder
            dup
            ldc "ObjectName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 709
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        18: .line 714
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 3 /* instance */
        start local 3 // javax.management.DynamicMBean instance
        19: .line 716
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 5 /* sm */
        start local 5 // java.lang.SecurityManager sm
        20: .line 717
            aload 5 /* sm */
            ifnonnull 23
        21: .line 718
            aload 2 /* attributes */
            astore 4 /* allowedAttributes */
        start local 4 // java.lang.String[] allowedAttributes
        22: goto 38
        end local 4 // java.lang.String[] allowedAttributes
        23: .line 720
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName java.lang.String[] javax.management.DynamicMBean top java.lang.SecurityManager
      StackMap stack:
            aload 3 /* instance */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getClassName:(Ljavax/management/DynamicMBean;)Ljava/lang/String;
            astore 6 /* classname */
        start local 6 // java.lang.String classname
        24: .line 724
            aload 6 /* classname */
            aconst_null
            aload 1 /* name */
            ldc "getAttribute"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        25: .line 730
            new java.util.ArrayList
            dup
            aload 2 /* attributes */
            arraylength
            invokespecial java.util.ArrayList.<init>:(I)V
        26: .line 729
            astore 7 /* allowedList */
        start local 7 // java.util.List allowedList
        27: .line 731
            aload 2 /* attributes */
            dup
            astore 11
            arraylength
            istore 10
            iconst_0
            istore 9
            goto 36
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName java.lang.String[] javax.management.DynamicMBean top java.lang.SecurityManager java.lang.String java.util.List top int int java.lang.String[]
      StackMap stack:
        28: aload 11
            iload 9
            aaload
            astore 8 /* attr */
        start local 8 // java.lang.String attr
        29: .line 733
            aload 6 /* classname */
            aload 8 /* attr */
        30: .line 734
            aload 1 /* name */
            ldc "getAttribute"
        31: .line 733
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        32: .line 735
            aload 7 /* allowedList */
            aload 8 /* attr */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        33: .line 736
            goto 35
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName java.lang.String[] javax.management.DynamicMBean top java.lang.SecurityManager java.lang.String java.util.List java.lang.String int int java.lang.String[]
      StackMap stack: java.lang.SecurityException
        34: pop
        end local 8 // java.lang.String attr
        35: .line 731
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName java.lang.String[] javax.management.DynamicMBean top java.lang.SecurityManager java.lang.String java.util.List top int int java.lang.String[]
      StackMap stack:
            iinc 9 1
      StackMap locals:
      StackMap stack:
        36: iload 9
            iload 10
            if_icmplt 28
        37: .line 740
            aload 7 /* allowedList */
            iconst_0
            anewarray java.lang.String
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 4 /* allowedAttributes */
        end local 7 // java.util.List allowedList
        end local 6 // java.lang.String classname
        start local 4 // java.lang.String[] allowedAttributes
        38: .line 744
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName java.lang.String[] javax.management.DynamicMBean java.lang.String[] java.lang.SecurityManager
      StackMap stack:
            aload 3 /* instance */
            aload 4 /* allowedAttributes */
            invokeinterface javax.management.DynamicMBean.getAttributes:([Ljava/lang/String;)Ljavax/management/AttributeList;
        39: areturn
        40: .line 745
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6 /* t */
        start local 6 // java.lang.Throwable t
        41: .line 746
            aload 6 /* t */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.rethrow:(Ljava/lang/Throwable;)V
        42: .line 747
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 6 // java.lang.Throwable t
        end local 5 // java.lang.SecurityManager sm
        end local 4 // java.lang.String[] allowedAttributes
        end local 3 // javax.management.DynamicMBean instance
        end local 2 // java.lang.String[] attributes
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   43     0               this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   43     1               name  Ljavax/management/ObjectName;
            0   43     2         attributes  [Ljava/lang/String;
           19   43     3           instance  Ljavax/management/DynamicMBean;
           22   23     4  allowedAttributes  [Ljava/lang/String;
           38   43     4  allowedAttributes  [Ljava/lang/String;
           20   43     5                 sm  Ljava/lang/SecurityManager;
           24   38     6          classname  Ljava/lang/String;
           27   38     7        allowedList  Ljava/util/List<Ljava/lang/String;>;
           29   35     8               attr  Ljava/lang/String;
           41   43     6                  t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          29    33      34  Class java.lang.SecurityException
          38    39      40  Class java.lang.Throwable
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.ReflectionException
    MethodParameters:
            Name  Flags
      name        
      attributes  

  public void setAttribute(javax.management.ObjectName, javax.management.Attribute);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/Attribute;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.Attribute attribute
         0: .line 756
            aload 1 /* name */
            ifnonnull 6
         1: .line 757
            new javax.management.RuntimeOperationsException
            dup
         2: .line 758
            new java.lang.IllegalArgumentException
            dup
            ldc "ObjectName name cannot be null"
         3: .line 757
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         4: .line 759
            ldc "Exception occurred trying to invoke the setter on the MBean"
         5: .line 757
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
         6: .line 762
      StackMap locals:
      StackMap stack:
            aload 2 /* attribute */
            ifnonnull 12
         7: .line 763
            new javax.management.RuntimeOperationsException
            dup
         8: .line 764
            new java.lang.IllegalArgumentException
            dup
            ldc "Attribute cannot be null"
         9: .line 763
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
        10: .line 765
            ldc "Exception occurred trying to invoke the setter on the MBean"
        11: .line 763
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        12: .line 768
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 1 /* name */
        13: .line 770
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 19
        14: .line 771
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
        15: .line 772
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        16: .line 773
            ldc "setAttribute"
            new java.lang.StringBuilder
            dup
            ldc "ObjectName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        17: .line 774
            ldc ", Attribute = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* attribute */
            invokevirtual javax.management.Attribute.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        18: .line 771
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        19: .line 777
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 3 /* instance */
        start local 3 // javax.management.DynamicMBean instance
        20: .line 778
            aload 3 /* instance */
            aload 2 /* attribute */
            invokevirtual javax.management.Attribute.getName:()Ljava/lang/String;
        21: .line 779
            aload 1 /* name */
            ldc "setAttribute"
        22: .line 778
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        23: .line 782
            aload 3 /* instance */
            aload 2 /* attribute */
            invokeinterface javax.management.DynamicMBean.setAttribute:(Ljavax/management/Attribute;)V
        24: .line 783
            goto 32
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.Attribute javax.management.DynamicMBean
      StackMap stack: javax.management.AttributeNotFoundException
        25: astore 4 /* e */
        start local 4 // javax.management.AttributeNotFoundException e
        26: .line 784
            aload 4 /* e */
            athrow
        end local 4 // javax.management.AttributeNotFoundException e
        27: .line 785
      StackMap locals:
      StackMap stack: javax.management.InvalidAttributeValueException
            astore 4 /* e */
        start local 4 // javax.management.InvalidAttributeValueException e
        28: .line 786
            aload 4 /* e */
            athrow
        end local 4 // javax.management.InvalidAttributeValueException e
        29: .line 787
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4 /* t */
        start local 4 // java.lang.Throwable t
        30: .line 788
            aload 4 /* t */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.rethrowMaybeMBeanException:(Ljava/lang/Throwable;)V
        31: .line 789
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 4 // java.lang.Throwable t
        32: .line 791
      StackMap locals:
      StackMap stack:
            return
        end local 3 // javax.management.DynamicMBean instance
        end local 2 // javax.management.Attribute attribute
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   33     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   33     1       name  Ljavax/management/ObjectName;
            0   33     2  attribute  Ljavax/management/Attribute;
           20   33     3   instance  Ljavax/management/DynamicMBean;
           26   27     4          e  Ljavax/management/AttributeNotFoundException;
           28   29     4          e  Ljavax/management/InvalidAttributeValueException;
           30   32     4          t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          23    24      25  Class javax.management.AttributeNotFoundException
          23    24      27  Class javax.management.InvalidAttributeValueException
          23    24      29  Class java.lang.Throwable
    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=5, locals=9, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.AttributeList attributes
         0: .line 797
            aload 1 /* name */
            ifnonnull 6
         1: .line 798
            new javax.management.RuntimeOperationsException
            dup
         2: .line 799
            new java.lang.IllegalArgumentException
            dup
            ldc "ObjectName name cannot be null"
         3: .line 798
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         4: .line 800
            ldc "Exception occurred trying to invoke the setter on the MBean"
         5: .line 798
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
         6: .line 803
      StackMap locals:
      StackMap stack:
            aload 2 /* attributes */
            ifnonnull 12
         7: .line 804
            new javax.management.RuntimeOperationsException
            dup
         8: .line 805
            new java.lang.IllegalArgumentException
            dup
            ldc "AttributeList  cannot be null"
         9: .line 804
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
        10: .line 806
            ldc "Exception occurred trying to invoke the setter on the MBean"
        11: .line 804
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        12: .line 809
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 1 /* name */
        13: .line 811
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 3 /* instance */
        start local 3 // javax.management.DynamicMBean instance
        14: .line 813
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 5 /* sm */
        start local 5 // java.lang.SecurityManager sm
        15: .line 814
            aload 5 /* sm */
            ifnonnull 18
        16: .line 815
            aload 2 /* attributes */
            astore 4 /* allowedAttributes */
        start local 4 // javax.management.AttributeList allowedAttributes
        17: goto 31
        end local 4 // javax.management.AttributeList allowedAttributes
        18: .line 817
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.AttributeList javax.management.DynamicMBean top java.lang.SecurityManager
      StackMap stack:
            aload 3 /* instance */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getClassName:(Ljavax/management/DynamicMBean;)Ljava/lang/String;
            astore 6 /* classname */
        start local 6 // java.lang.String classname
        19: .line 821
            aload 6 /* classname */
            aconst_null
            aload 1 /* name */
            ldc "setAttribute"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        20: .line 826
            new javax.management.AttributeList
            dup
            aload 2 /* attributes */
            invokevirtual javax.management.AttributeList.size:()I
            invokespecial javax.management.AttributeList.<init>:(I)V
            astore 4 /* allowedAttributes */
        start local 4 // javax.management.AttributeList allowedAttributes
        21: .line 827
            aload 2 /* attributes */
            invokevirtual javax.management.AttributeList.iterator:()Ljava/util/Iterator;
            astore 7 /* i */
        start local 7 // java.util.Iterator i
        22: goto 30
        23: .line 829
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.AttributeList javax.management.DynamicMBean javax.management.AttributeList java.lang.SecurityManager java.lang.String java.util.Iterator
      StackMap stack:
            aload 7 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.Attribute
            astore 8 /* attribute */
        start local 8 // javax.management.Attribute attribute
        24: .line 830
            aload 6 /* classname */
            aload 8 /* attribute */
            invokevirtual javax.management.Attribute.getName:()Ljava/lang/String;
        25: .line 831
            aload 1 /* name */
            ldc "setAttribute"
        26: .line 830
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        27: .line 832
            aload 4 /* allowedAttributes */
            aload 8 /* attribute */
            invokevirtual javax.management.AttributeList.add:(Ljavax/management/Attribute;)V
        end local 8 // javax.management.Attribute attribute
        28: .line 833
            goto 30
      StackMap locals:
      StackMap stack: java.lang.SecurityException
        29: pop
        30: .line 827
      StackMap locals:
      StackMap stack:
            aload 7 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 23
        end local 7 // java.util.Iterator i
        end local 6 // java.lang.String classname
        31: .line 839
      StackMap locals:
      StackMap stack:
            aload 3 /* instance */
            aload 4 /* allowedAttributes */
            invokeinterface javax.management.DynamicMBean.setAttributes:(Ljavax/management/AttributeList;)Ljavax/management/AttributeList;
        32: areturn
        33: .line 840
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6 /* t */
        start local 6 // java.lang.Throwable t
        34: .line 841
            aload 6 /* t */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.rethrow:(Ljava/lang/Throwable;)V
        35: .line 842
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 6 // java.lang.Throwable t
        end local 5 // java.lang.SecurityManager sm
        end local 4 // javax.management.AttributeList allowedAttributes
        end local 3 // javax.management.DynamicMBean instance
        end local 2 // javax.management.AttributeList attributes
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   36     0               this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   36     1               name  Ljavax/management/ObjectName;
            0   36     2         attributes  Ljavax/management/AttributeList;
           14   36     3           instance  Ljavax/management/DynamicMBean;
           17   18     4  allowedAttributes  Ljavax/management/AttributeList;
           21   36     4  allowedAttributes  Ljavax/management/AttributeList;
           15   36     5                 sm  Ljava/lang/SecurityManager;
           19   31     6          classname  Ljava/lang/String;
           22   31     7                  i  Ljava/util/Iterator;
           24   28     8          attribute  Ljavax/management/Attribute;
           34   36     6                  t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          23    28      29  Class java.lang.SecurityException
          31    32      33  Class java.lang.Throwable
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.ReflectionException
    MethodParameters:
            Name  Flags
      name        
      attributes  

  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=4, locals=7, args_size=5
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor 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 851
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 1 /* name */
         1: .line 853
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 5 /* instance */
        start local 5 // javax.management.DynamicMBean instance
         2: .line 854
            aload 5 /* instance */
            aload 2 /* operationName */
            aload 1 /* name */
            ldc "invoke"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         3: .line 856
            aload 5 /* instance */
            aload 2 /* operationName */
            aload 3 /* params */
            aload 4 /* signature */
            invokeinterface javax.management.DynamicMBean.invoke:(Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object;
         4: areturn
         5: .line 857
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName java.lang.String java.lang.Object[] java.lang.String[] javax.management.DynamicMBean
      StackMap stack: java.lang.Throwable
            astore 6 /* t */
        start local 6 // java.lang.Throwable t
         6: .line 858
            aload 6 /* t */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.rethrowMaybeMBeanException:(Ljava/lang/Throwable;)V
         7: .line 859
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 6 // java.lang.Throwable t
        end local 5 // javax.management.DynamicMBean instance
        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.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0           this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    8     1           name  Ljavax/management/ObjectName;
            0    8     2  operationName  Ljava/lang/String;
            0    8     3         params  [Ljava/lang/Object;
            0    8     4      signature  [Ljava/lang/String;
            2    8     5       instance  Ljavax/management/DynamicMBean;
            6    8     6              t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.Throwable
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.MBeanException, javax.management.ReflectionException
    MethodParameters:
               Name  Flags
      name           
      operationName  
      params         
      signature      

  private static void rethrow(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.Throwable t
         0: .line 868
            aload 0 /* t */
            athrow
         1: .line 869
      StackMap locals:
      StackMap stack: javax.management.ReflectionException
            astore 1 /* e */
        start local 1 // javax.management.ReflectionException e
         2: .line 870
            aload 1 /* e */
            athrow
        end local 1 // javax.management.ReflectionException e
         3: .line 871
      StackMap locals:
      StackMap stack: javax.management.RuntimeOperationsException
            astore 1 /* e */
        start local 1 // javax.management.RuntimeOperationsException e
         4: .line 872
            aload 1 /* e */
            athrow
        end local 1 // javax.management.RuntimeOperationsException e
         5: .line 873
      StackMap locals:
      StackMap stack: javax.management.RuntimeErrorException
            astore 1 /* e */
        start local 1 // javax.management.RuntimeErrorException e
         6: .line 874
            aload 1 /* e */
            athrow
        end local 1 // javax.management.RuntimeErrorException e
         7: .line 875
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 1 /* e */
        start local 1 // java.lang.RuntimeException e
         8: .line 876
            new javax.management.RuntimeMBeanException
            dup
            aload 1 /* e */
            aload 1 /* e */
            invokevirtual java.lang.RuntimeException.toString:()Ljava/lang/String;
            invokespecial javax.management.RuntimeMBeanException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.RuntimeException e
         9: .line 877
      StackMap locals:
      StackMap stack: java.lang.Error
            astore 1 /* e */
        start local 1 // java.lang.Error e
        10: .line 878
            new javax.management.RuntimeErrorException
            dup
            aload 1 /* e */
            aload 1 /* e */
            invokevirtual java.lang.Error.toString:()Ljava/lang/String;
            invokespecial javax.management.RuntimeErrorException.<init>:(Ljava/lang/Error;Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.Error e
        11: .line 879
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 1 /* t2 */
        start local 1 // java.lang.Throwable t2
        12: .line 881
            new java.lang.RuntimeException
            dup
            ldc "Unexpected exception"
            aload 1 /* t2 */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.lang.Throwable t2
        end local 0 // java.lang.Throwable t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0     t  Ljava/lang/Throwable;
            2    3     1     e  Ljavax/management/ReflectionException;
            4    5     1     e  Ljavax/management/RuntimeOperationsException;
            6    7     1     e  Ljavax/management/RuntimeErrorException;
            8    9     1     e  Ljava/lang/RuntimeException;
           10   11     1     e  Ljava/lang/Error;
           12   13     1    t2  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     1       1  Class javax.management.ReflectionException
           0     1       3  Class javax.management.RuntimeOperationsException
           0     1       5  Class javax.management.RuntimeErrorException
           0     1       7  Class java.lang.RuntimeException
           0     1       9  Class java.lang.Error
           0     1      11  Class java.lang.Throwable
    Exceptions:
      throws javax.management.ReflectionException
    MethodParameters:
      Name  Flags
      t     

  private static void rethrowMaybeMBeanException(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Throwable t
         0: .line 887
            aload 0 /* t */
            instanceof javax.management.MBeanException
            ifeq 2
         1: .line 888
            aload 0 /* t */
            checkcast javax.management.MBeanException
            athrow
         2: .line 889
      StackMap locals:
      StackMap stack:
            aload 0 /* t */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.rethrow:(Ljava/lang/Throwable;)V
         3: .line 890
            return
        end local 0 // java.lang.Throwable t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     t  Ljava/lang/Throwable;
    Exceptions:
      throws javax.management.ReflectionException, javax.management.MBeanException
    MethodParameters:
      Name  Flags
      t     

  private javax.management.ObjectInstance registerObject(java.lang.String, java.lang.Object, javax.management.ObjectName);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // java.lang.String classname
        start local 2 // java.lang.Object object
        start local 3 // javax.management.ObjectName name
         0: .line 928
            aload 2 /* object */
            ifnonnull 6
         1: .line 930
            new java.lang.IllegalArgumentException
            dup
            ldc "Cannot add null object"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         2: .line 929
            astore 4 /* wrapped */
        start local 4 // java.lang.RuntimeException wrapped
         3: .line 931
            new javax.management.RuntimeOperationsException
            dup
            aload 4 /* wrapped */
         4: .line 932
            ldc "Exception occurred trying to register the MBean"
         5: .line 931
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.RuntimeException wrapped
         6: .line 935
      StackMap locals:
      StackMap stack:
            aload 2 /* object */
            invokestatic com.sun.jmx.mbeanserver.Introspector.makeDynamicMBean:(Ljava/lang/Object;)Ljavax/management/DynamicMBean;
            astore 4 /* mbean */
        start local 4 // javax.management.DynamicMBean mbean
         7: .line 937
            aload 0 /* this */
            aload 1 /* classname */
            aload 4 /* mbean */
            aload 3 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean:(Ljava/lang/String;Ljavax/management/DynamicMBean;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            areturn
        end local 4 // javax.management.DynamicMBean mbean
        end local 3 // javax.management.ObjectName name
        end local 2 // java.lang.Object object
        end local 1 // java.lang.String classname
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    8     1  classname  Ljava/lang/String;
            0    8     2     object  Ljava/lang/Object;
            0    8     3       name  Ljavax/management/ObjectName;
            3    6     4    wrapped  Ljava/lang/RuntimeException;
            7    8     4      mbean  Ljavax/management/DynamicMBean;
    Exceptions:
      throws javax.management.InstanceAlreadyExistsException, javax.management.MBeanRegistrationException, javax.management.NotCompliantMBeanException
    MethodParameters:
           Name  Flags
      classname  
      object     
      name       

  private javax.management.ObjectInstance registerDynamicMBean(java.lang.String, javax.management.DynamicMBean, javax.management.ObjectName);
    descriptor: (Ljava/lang/String;Ljavax/management/DynamicMBean;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=9, args_size=4
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // java.lang.String classname
        start local 2 // javax.management.DynamicMBean mbean
        start local 3 // javax.management.ObjectName name
         0: .line 948
            aload 0 /* this */
            aload 3 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 3 /* name */
         1: .line 950
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 6
         2: .line 951
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
         3: .line 952
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         4: .line 953
            ldc "registerMBean"
            new java.lang.StringBuilder
            dup
            ldc "ObjectName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 951
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         6: .line 956
      StackMap locals:
      StackMap stack:
            aload 3 /* name */
            astore 4 /* logicalName */
        start local 4 // javax.management.ObjectName logicalName
         7: .line 958
            aload 2 /* mbean */
            instanceof javax.management.MBeanRegistration
            ifeq 23
         8: .line 959
            aload 2 /* mbean */
            checkcast javax.management.MBeanRegistration
            astore 5 /* reg */
        start local 5 // javax.management.MBeanRegistration reg
         9: .line 960
            aload 5 /* reg */
            aload 3 /* name */
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.preRegisterInvoke:(Ljavax/management/MBeanRegistration;Ljavax/management/ObjectName;Ljavax/management/MBeanServer;)Ljavax/management/ObjectName;
            astore 4 /* logicalName */
        10: .line 961
            aload 2 /* mbean */
            instanceof com.sun.jmx.mbeanserver.DynamicMBean2
            ifeq 20
        11: .line 963
            aload 2 /* mbean */
            checkcast com.sun.jmx.mbeanserver.DynamicMBean2
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            aload 4 /* logicalName */
            invokeinterface com.sun.jmx.mbeanserver.DynamicMBean2.preRegister2:(Ljavax/management/MBeanServer;Ljavax/management/ObjectName;)V
        12: .line 964
            goto 20
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.lang.String javax.management.DynamicMBean javax.management.ObjectName javax.management.ObjectName javax.management.MBeanRegistration
      StackMap stack: java.lang.Exception
        13: astore 6 /* e */
        start local 6 // java.lang.Exception e
        14: .line 965
            aload 5 /* reg */
            iconst_0
            iconst_0
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.postRegisterInvoke:(Ljavax/management/MBeanRegistration;ZZ)V
        15: .line 966
            aload 6 /* e */
            instanceof java.lang.RuntimeException
            ifeq 17
        16: .line 967
            aload 6 /* e */
            checkcast java.lang.RuntimeException
            athrow
        17: .line 968
      StackMap locals: java.lang.Exception
      StackMap stack:
            aload 6 /* e */
            instanceof javax.management.InstanceAlreadyExistsException
            ifeq 19
        18: .line 969
            aload 6 /* e */
            checkcast javax.management.InstanceAlreadyExistsException
            athrow
        19: .line 970
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            aload 6 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.lang.Exception e
        20: .line 974
      StackMap locals:
      StackMap stack:
            aload 4 /* logicalName */
            aload 3 /* name */
            if_acmpeq 23
            aload 4 /* logicalName */
            ifnull 23
        21: .line 976
            aload 0 /* this */
            aload 4 /* logicalName */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.nonDefaultDomain:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            invokestatic javax.management.ObjectName.getInstance:(Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
        22: .line 975
            astore 4 /* logicalName */
        end local 5 // javax.management.MBeanRegistration reg
        23: .line 980
      StackMap locals:
      StackMap stack:
            aload 1 /* classname */
            aconst_null
            aload 4 /* logicalName */
            ldc "registerMBean"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        24: .line 983
            aload 4 /* logicalName */
            ifnull 28
        25: .line 984
            new javax.management.ObjectInstance
            dup
            aload 4 /* logicalName */
            aload 1 /* classname */
            invokespecial javax.management.ObjectInstance.<init>:(Ljavax/management/ObjectName;Ljava/lang/String;)V
            astore 5 /* result */
        start local 5 // javax.management.ObjectInstance result
        26: .line 985
            aload 0 /* this */
            aload 2 /* mbean */
            aload 4 /* logicalName */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject:(Ljavax/management/DynamicMBean;Ljavax/management/ObjectName;)V
        27: .line 986
            goto 35
        end local 5 // javax.management.ObjectInstance result
        28: .line 987
      StackMap locals:
      StackMap stack:
            aload 2 /* mbean */
            instanceof javax.management.MBeanRegistration
            ifeq 30
        29: .line 988
            aload 2 /* mbean */
            checkcast javax.management.MBeanRegistration
            iconst_0
            iconst_1
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.postRegisterInvoke:(Ljavax/management/MBeanRegistration;ZZ)V
        30: .line 990
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "No object name specified"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
        31: .line 989
            astore 6 /* wrapped */
        start local 6 // java.lang.RuntimeException wrapped
        32: .line 991
            new javax.management.RuntimeOperationsException
            dup
            aload 6 /* wrapped */
        33: .line 992
            ldc "Exception occurred trying to register the MBean"
        34: .line 991
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.RuntimeException wrapped
        start local 5 // javax.management.ObjectInstance result
        35: .line 995
      StackMap locals: javax.management.ObjectInstance
      StackMap stack:
            aload 2 /* mbean */
            instanceof javax.management.MBeanRegistration
            ifeq 37
        36: .line 996
            aload 2 /* mbean */
            checkcast javax.management.MBeanRegistration
            iconst_1
            iconst_0
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.postRegisterInvoke:(Ljavax/management/MBeanRegistration;ZZ)V
        37: .line 1007
      StackMap locals:
      StackMap stack:
            aload 2 /* mbean */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getResource:(Ljavax/management/DynamicMBean;)Ljava/lang/Object;
            astore 6 /* resource */
        start local 6 // java.lang.Object resource
        38: .line 1008
            aload 6 /* resource */
            instanceof java.lang.ClassLoader
            ifeq 50
        39: .line 1010
            aload 0 /* this */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getInstantiatorCLR:()Lcom/sun/jmx/mbeanserver/ModifiableClassLoaderRepository;
        40: .line 1009
            astore 7 /* clr */
        start local 7 // com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository clr
        41: .line 1011
            aload 7 /* clr */
            ifnonnull 49
        42: .line 1013
            new java.lang.IllegalArgumentException
            dup
        43: .line 1014
            ldc "Dynamic addition of class loaders is not supported"
        44: .line 1013
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
        45: .line 1012
            astore 8 /* wrapped */
        start local 8 // java.lang.RuntimeException wrapped
        46: .line 1015
            new javax.management.RuntimeOperationsException
            dup
            aload 8 /* wrapped */
        47: .line 1016
            ldc "Exception occurred trying to register the MBean as a class loader"
        48: .line 1015
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 8 // java.lang.RuntimeException wrapped
        49: .line 1018
      StackMap locals: java.lang.Object com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository
      StackMap stack:
            aload 7 /* clr */
            aload 4 /* logicalName */
            aload 6 /* resource */
            checkcast java.lang.ClassLoader
            invokeinterface com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository.addClassLoader:(Ljavax/management/ObjectName;Ljava/lang/ClassLoader;)V
        end local 7 // com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository clr
        50: .line 1021
      StackMap locals:
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 6 // java.lang.Object resource
        end local 5 // javax.management.ObjectInstance result
        end local 4 // javax.management.ObjectName logicalName
        end local 3 // javax.management.ObjectName name
        end local 2 // javax.management.DynamicMBean mbean
        end local 1 // java.lang.String classname
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   51     0         this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   51     1    classname  Ljava/lang/String;
            0   51     2        mbean  Ljavax/management/DynamicMBean;
            0   51     3         name  Ljavax/management/ObjectName;
            7   51     4  logicalName  Ljavax/management/ObjectName;
            9   23     5          reg  Ljavax/management/MBeanRegistration;
           14   20     6            e  Ljava/lang/Exception;
           26   28     5       result  Ljavax/management/ObjectInstance;
           35   51     5       result  Ljavax/management/ObjectInstance;
           32   35     6      wrapped  Ljava/lang/RuntimeException;
           38   51     6     resource  Ljava/lang/Object;
           41   50     7          clr  Lcom/sun/jmx/mbeanserver/ModifiableClassLoaderRepository;
           46   49     8      wrapped  Ljava/lang/RuntimeException;
      Exception table:
        from    to  target  type
          11    12      13  Class java.lang.Exception
    Exceptions:
      throws javax.management.InstanceAlreadyExistsException, javax.management.MBeanRegistrationException, javax.management.NotCompliantMBeanException
    MethodParameters:
           Name  Flags
      classname  
      mbean      
      name       

  private static javax.management.ObjectName preRegisterInvoke(javax.management.MBeanRegistration, javax.management.ObjectName, javax.management.MBeanServer);
    descriptor: (Ljavax/management/MBeanRegistration;Ljavax/management/ObjectName;Ljavax/management/MBeanServer;)Ljavax/management/ObjectName;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // javax.management.MBeanRegistration moi
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.MBeanServer mbs
         0: .line 1032
            aload 0 /* moi */
            aload 2 /* mbs */
            aload 1 /* name */
            invokeinterface javax.management.MBeanRegistration.preRegister:(Ljavax/management/MBeanServer;Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
            astore 3 /* newName */
        start local 3 // javax.management.ObjectName newName
         1: .line 1033
            goto 16
        end local 3 // javax.management.ObjectName newName
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
         2: astore 4 /* e */
        start local 4 // java.lang.RuntimeException e
         3: .line 1034
            new javax.management.RuntimeMBeanException
            dup
            aload 4 /* e */
         4: .line 1035
            ldc "RuntimeException thrown in preRegister method"
         5: .line 1034
            invokespecial javax.management.RuntimeMBeanException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.RuntimeException e
         6: .line 1036
      StackMap locals:
      StackMap stack: java.lang.Error
            astore 4 /* er */
        start local 4 // java.lang.Error er
         7: .line 1037
            new javax.management.RuntimeErrorException
            dup
            aload 4 /* er */
         8: .line 1038
            ldc "Error thrown in preRegister method"
         9: .line 1037
            invokespecial javax.management.RuntimeErrorException.<init>:(Ljava/lang/Error;Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.Error er
        10: .line 1039
      StackMap locals:
      StackMap stack: javax.management.MBeanRegistrationException
            astore 4 /* r */
        start local 4 // javax.management.MBeanRegistrationException r
        11: .line 1040
            aload 4 /* r */
            athrow
        end local 4 // javax.management.MBeanRegistrationException r
        12: .line 1041
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 4 /* ex */
        start local 4 // java.lang.Exception ex
        13: .line 1042
            new javax.management.MBeanRegistrationException
            dup
            aload 4 /* ex */
        14: .line 1043
            ldc "Exception thrown in preRegister method"
        15: .line 1042
            invokespecial javax.management.MBeanRegistrationException.<init>:(Ljava/lang/Exception;Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.Exception ex
        start local 3 // javax.management.ObjectName newName
        16: .line 1046
      StackMap locals: javax.management.ObjectName
      StackMap stack:
            aload 3 /* newName */
            ifnull 17
            aload 3 /* newName */
            areturn
        17: .line 1047
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            areturn
        end local 3 // javax.management.ObjectName newName
        end local 2 // javax.management.MBeanServer mbs
        end local 1 // javax.management.ObjectName name
        end local 0 // javax.management.MBeanRegistration moi
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0      moi  Ljavax/management/MBeanRegistration;
            0   18     1     name  Ljavax/management/ObjectName;
            0   18     2      mbs  Ljavax/management/MBeanServer;
            1    2     3  newName  Ljavax/management/ObjectName;
           16   18     3  newName  Ljavax/management/ObjectName;
            3    6     4        e  Ljava/lang/RuntimeException;
            7   10     4       er  Ljava/lang/Error;
           11   12     4        r  Ljavax/management/MBeanRegistrationException;
           13   16     4       ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.RuntimeException
           0     1       6  Class java.lang.Error
           0     1      10  Class javax.management.MBeanRegistrationException
           0     1      12  Class java.lang.Exception
    Exceptions:
      throws javax.management.InstanceAlreadyExistsException, javax.management.MBeanRegistrationException
    MethodParameters:
      Name  Flags
      moi   
      name  
      mbs   

  private static void postRegisterInvoke(javax.management.MBeanRegistration, boolean, boolean);
    descriptor: (Ljavax/management/MBeanRegistration;ZZ)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // javax.management.MBeanRegistration moi
        start local 1 // boolean registrationDone
        start local 2 // boolean registerFailed
         0: .line 1054
            iload 2 /* registerFailed */
            ifeq 2
            aload 0 /* moi */
            instanceof com.sun.jmx.mbeanserver.DynamicMBean2
            ifeq 2
         1: .line 1055
            aload 0 /* moi */
            checkcast com.sun.jmx.mbeanserver.DynamicMBean2
            invokeinterface com.sun.jmx.mbeanserver.DynamicMBean2.registerFailed:()V
         2: .line 1057
      StackMap locals:
      StackMap stack:
            aload 0 /* moi */
            new java.lang.Boolean
            dup
            iload 1 /* registrationDone */
            invokespecial java.lang.Boolean.<init>:(Z)V
            invokeinterface javax.management.MBeanRegistration.postRegister:(Ljava/lang/Boolean;)V
         3: .line 1058
            goto 12
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
         4: astore 3 /* e */
        start local 3 // java.lang.RuntimeException e
         5: .line 1059
            new javax.management.RuntimeMBeanException
            dup
            aload 3 /* e */
         6: .line 1060
            ldc "RuntimeException thrown in postRegister method"
         7: .line 1059
            invokespecial javax.management.RuntimeMBeanException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.RuntimeException e
         8: .line 1061
      StackMap locals:
      StackMap stack: java.lang.Error
            astore 3 /* er */
        start local 3 // java.lang.Error er
         9: .line 1062
            new javax.management.RuntimeErrorException
            dup
            aload 3 /* er */
        10: .line 1063
            ldc "Error thrown in postRegister method"
        11: .line 1062
            invokespecial javax.management.RuntimeErrorException.<init>:(Ljava/lang/Error;Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.Error er
        12: .line 1065
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean registerFailed
        end local 1 // boolean registrationDone
        end local 0 // javax.management.MBeanRegistration moi
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   13     0               moi  Ljavax/management/MBeanRegistration;
            0   13     1  registrationDone  Z
            0   13     2    registerFailed  Z
            5    8     3                 e  Ljava/lang/RuntimeException;
            9   12     3                er  Ljava/lang/Error;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.RuntimeException
           2     3       8  Class java.lang.Error
    MethodParameters:
                  Name  Flags
      moi               
      registrationDone  
      registerFailed    

  private static void preDeregisterInvoke(javax.management.MBeanRegistration);
    descriptor: (Ljavax/management/MBeanRegistration;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // javax.management.MBeanRegistration moi
         0: .line 1070
            aload 0 /* moi */
            invokeinterface javax.management.MBeanRegistration.preDeregister:()V
         1: .line 1071
            goto 16
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
         2: astore 1 /* e */
        start local 1 // java.lang.RuntimeException e
         3: .line 1072
            new javax.management.RuntimeMBeanException
            dup
            aload 1 /* e */
         4: .line 1073
            ldc "RuntimeException thrown in preDeregister method"
         5: .line 1072
            invokespecial javax.management.RuntimeMBeanException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.RuntimeException e
         6: .line 1074
      StackMap locals:
      StackMap stack: java.lang.Error
            astore 1 /* er */
        start local 1 // java.lang.Error er
         7: .line 1075
            new javax.management.RuntimeErrorException
            dup
            aload 1 /* er */
         8: .line 1076
            ldc "Error thrown in preDeregister method"
         9: .line 1075
            invokespecial javax.management.RuntimeErrorException.<init>:(Ljava/lang/Error;Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.Error er
        10: .line 1077
      StackMap locals:
      StackMap stack: javax.management.MBeanRegistrationException
            astore 1 /* t */
        start local 1 // javax.management.MBeanRegistrationException t
        11: .line 1078
            aload 1 /* t */
            athrow
        end local 1 // javax.management.MBeanRegistrationException t
        12: .line 1079
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* ex */
        start local 1 // java.lang.Exception ex
        13: .line 1080
            new javax.management.MBeanRegistrationException
            dup
            aload 1 /* ex */
        14: .line 1081
            ldc "Exception thrown in preDeregister method"
        15: .line 1080
            invokespecial javax.management.MBeanRegistrationException.<init>:(Ljava/lang/Exception;Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.Exception ex
        16: .line 1083
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.management.MBeanRegistration moi
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0   moi  Ljavax/management/MBeanRegistration;
            3    6     1     e  Ljava/lang/RuntimeException;
            7   10     1    er  Ljava/lang/Error;
           11   12     1     t  Ljavax/management/MBeanRegistrationException;
           13   16     1    ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.RuntimeException
           0     1       6  Class java.lang.Error
           0     1      10  Class javax.management.MBeanRegistrationException
           0     1      12  Class java.lang.Exception
    Exceptions:
      throws javax.management.MBeanRegistrationException
    MethodParameters:
      Name  Flags
      moi   

  private static void postDeregisterInvoke(javax.management.MBeanRegistration);
    descriptor: (Ljavax/management/MBeanRegistration;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // javax.management.MBeanRegistration moi
         0: .line 1087
            aload 0 /* moi */
            invokeinterface javax.management.MBeanRegistration.postDeregister:()V
         1: .line 1088
            goto 10
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
         2: astore 1 /* e */
        start local 1 // java.lang.RuntimeException e
         3: .line 1089
            new javax.management.RuntimeMBeanException
            dup
            aload 1 /* e */
         4: .line 1090
            ldc "RuntimeException thrown in postDeregister method"
         5: .line 1089
            invokespecial javax.management.RuntimeMBeanException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.RuntimeException e
         6: .line 1091
      StackMap locals:
      StackMap stack: java.lang.Error
            astore 1 /* er */
        start local 1 // java.lang.Error er
         7: .line 1092
            new javax.management.RuntimeErrorException
            dup
            aload 1 /* er */
         8: .line 1093
            ldc "Error thrown in postDeregister method"
         9: .line 1092
            invokespecial javax.management.RuntimeErrorException.<init>:(Ljava/lang/Error;Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.Error er
        10: .line 1095
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.management.MBeanRegistration moi
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0   moi  Ljavax/management/MBeanRegistration;
            3    6     1     e  Ljava/lang/RuntimeException;
            7   10     1    er  Ljava/lang/Error;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.RuntimeException
           0     1       6  Class java.lang.Error
    MethodParameters:
      Name  Flags
      moi   

  private javax.management.DynamicMBean getMBean(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
         0: .line 1104
            aload 1 /* name */
            ifnonnull 6
         1: .line 1105
            new javax.management.RuntimeOperationsException
            dup
         2: .line 1106
            new java.lang.IllegalArgumentException
            dup
            ldc "Object name cannot be null"
         3: .line 1105
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         4: .line 1107
            ldc "Exception occurred trying to get an MBean"
         5: .line 1105
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
         6: .line 1109
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* obj */
        start local 2 // javax.management.DynamicMBean obj
         7: .line 1110
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.repository:Lcom/sun/jmx/mbeanserver/Repository;
            aload 1 /* name */
            invokevirtual com.sun.jmx.mbeanserver.Repository.retrieve:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 2 /* obj */
         8: .line 1111
            aload 2 /* obj */
            ifnonnull 15
         9: .line 1112
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 14
        10: .line 1113
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
        11: .line 1114
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        12: .line 1115
            ldc "getMBean"
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " : Found no object"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 1113
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        14: .line 1117
      StackMap locals: javax.management.DynamicMBean
      StackMap stack:
            new javax.management.InstanceNotFoundException
            dup
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.toString:()Ljava/lang/String;
            invokespecial javax.management.InstanceNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 1119
      StackMap locals:
      StackMap stack:
            aload 2 /* obj */
            areturn
        end local 2 // javax.management.DynamicMBean obj
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   16     1  name  Ljavax/management/ObjectName;
            7   16     2   obj  Ljavax/management/DynamicMBean;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
      Name  Flags
      name  

  private static java.lang.Object getResource(javax.management.DynamicMBean);
    descriptor: (Ljavax/management/DynamicMBean;)Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.DynamicMBean mbean
         0: .line 1123
            aload 0 /* mbean */
            instanceof com.sun.jmx.mbeanserver.DynamicMBean2
            ifeq 2
         1: .line 1124
            aload 0 /* mbean */
            checkcast com.sun.jmx.mbeanserver.DynamicMBean2
            invokeinterface com.sun.jmx.mbeanserver.DynamicMBean2.getResource:()Ljava/lang/Object;
            areturn
         2: .line 1126
      StackMap locals:
      StackMap stack:
            aload 0 /* mbean */
            areturn
        end local 0 // javax.management.DynamicMBean mbean
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  mbean  Ljavax/management/DynamicMBean;
    MethodParameters:
       Name  Flags
      mbean  

  private javax.management.ObjectName nonDefaultDomain(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
         0: .line 1130
            aload 1 /* name */
            ifnull 1
            aload 1 /* name */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifle 2
         1: .line 1131
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            areturn
         2: .line 1140
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.domain:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* completeName */
        start local 2 // java.lang.String completeName
         3: .line 1143
            new javax.management.ObjectName
            dup
            aload 2 /* completeName */
            invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;)V
         4: areturn
         5: .line 1144
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName java.lang.String
      StackMap stack: javax.management.MalformedObjectNameException
            astore 3 /* e */
        start local 3 // javax.management.MalformedObjectNameException e
         6: .line 1146
            new java.lang.StringBuilder
            dup
            ldc "Unexpected default domain problem: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* completeName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 1147
            aload 3 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         8: .line 1146
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 1145
            astore 4 /* msg */
        start local 4 // java.lang.String msg
        10: .line 1148
            new java.lang.IllegalArgumentException
            dup
            aload 4 /* msg */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            aload 3 /* e */
            invokestatic com.sun.jmx.remote.util.EnvHelp.initCause:(Ljava/lang/Throwable;Ljava/lang/Throwable;)Ljava/lang/Throwable;
            checkcast java.lang.IllegalArgumentException
            athrow
        end local 4 // java.lang.String msg
        end local 3 // javax.management.MalformedObjectNameException e
        end local 2 // java.lang.String completeName
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   11     1          name  Ljavax/management/ObjectName;
            3   11     2  completeName  Ljava/lang/String;
            6   11     3             e  Ljavax/management/MalformedObjectNameException;
           10   11     4           msg  Ljava/lang/String;
      Exception table:
        from    to  target  type
           3     4       5  Class javax.management.MalformedObjectNameException
    MethodParameters:
      Name  Flags
      name  

  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.interceptor.DefaultMBeanServerInterceptor this
         0: .line 1153
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.domain:Ljava/lang/String;
            areturn
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;

  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=7, locals=8, args_size=5
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor 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 1208
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 5
         1: .line 1209
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
         2: .line 1210
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         3: .line 1211
            ldc "addNotificationListener"
            new java.lang.StringBuilder
            dup
            ldc "ObjectName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 1209
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         5: .line 1214
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 5 /* instance */
        start local 5 // javax.management.DynamicMBean instance
         6: .line 1215
            aload 5 /* instance */
            aconst_null
            aload 1 /* name */
            ldc "addNotificationListener"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         7: .line 1218
            aload 1 /* name */
            aload 5 /* instance */
         8: .line 1219
            ldc Ljavax/management/NotificationBroadcaster;
         9: .line 1218
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getNotificationBroadcaster:(Ljavax/management/ObjectName;Ljava/lang/Object;Ljava/lang/Class;)Ljavax/management/NotificationBroadcaster;
        10: .line 1217
            astore 6 /* broadcaster */
        start local 6 // javax.management.NotificationBroadcaster broadcaster
        11: .line 1224
            aload 2 /* listener */
            ifnonnull 17
        12: .line 1225
            new javax.management.RuntimeOperationsException
            dup
        13: .line 1226
            new java.lang.IllegalArgumentException
            dup
            ldc "Null listener"
        14: .line 1225
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
        15: .line 1226
            ldc "Null listener"
        16: .line 1225
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        17: .line 1230
      StackMap locals: javax.management.DynamicMBean javax.management.NotificationBroadcaster
      StackMap stack:
            aload 0 /* this */
            aload 2 /* listener */
            aload 1 /* name */
            aload 6 /* broadcaster */
            iconst_1
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getListenerWrapper:(Ljavax/management/NotificationListener;Ljavax/management/ObjectName;Ljava/lang/Object;Z)Ljavax/management/NotificationListener;
        18: .line 1229
            astore 7 /* listenerWrapper */
        start local 7 // javax.management.NotificationListener listenerWrapper
        19: .line 1231
            aload 6 /* broadcaster */
            aload 7 /* listenerWrapper */
            aload 3 /* filter */
            aload 4 /* handback */
            invokeinterface javax.management.NotificationBroadcaster.addNotificationListener:(Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
        20: .line 1232
            return
        end local 7 // javax.management.NotificationListener listenerWrapper
        end local 6 // javax.management.NotificationBroadcaster broadcaster
        end local 5 // javax.management.DynamicMBean instance
        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.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   21     0             this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   21     1             name  Ljavax/management/ObjectName;
            0   21     2         listener  Ljavax/management/NotificationListener;
            0   21     3           filter  Ljavax/management/NotificationFilter;
            0   21     4         handback  Ljava/lang/Object;
            6   21     5         instance  Ljavax/management/DynamicMBean;
           11   21     6      broadcaster  Ljavax/management/NotificationBroadcaster;
           19   21     7  listenerWrapper  Ljavax/management/NotificationListener;
    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=7, locals=7, args_size=5
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor 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 1246
            aload 0 /* this */
            aload 2 /* listener */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 5 /* instance */
        start local 5 // javax.management.DynamicMBean instance
         1: .line 1247
            aload 5 /* instance */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getResource:(Ljavax/management/DynamicMBean;)Ljava/lang/Object;
            astore 6 /* resource */
        start local 6 // java.lang.Object resource
         2: .line 1248
            aload 6 /* resource */
            instanceof javax.management.NotificationListener
            ifne 10
         3: .line 1249
            new javax.management.RuntimeOperationsException
            dup
         4: .line 1250
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* listener */
            invokevirtual javax.management.ObjectName.getCanonicalName:()Ljava/lang/String;
         5: .line 1249
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         6: .line 1251
            new java.lang.StringBuilder
            dup
            ldc "The MBean "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* listener */
            invokevirtual javax.management.ObjectName.getCanonicalName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 1252
            ldc "does not implement the NotificationListener interface"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 1251
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 1249
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        10: .line 1258
      StackMap locals: javax.management.DynamicMBean java.lang.Object
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 16
        11: .line 1259
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
        12: .line 1260
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        13: .line 1261
            ldc "addNotificationListener"
        14: .line 1262
            new java.lang.StringBuilder
            dup
            ldc "ObjectName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ", Listener = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* listener */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        15: .line 1259
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        16: .line 1264
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 6 /* resource */
            checkcast javax.management.NotificationListener
        17: .line 1265
            aload 3 /* filter */
            aload 4 /* handback */
        18: .line 1264
            invokeinterface javax.management.MBeanServer.addNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
        19: .line 1266
            return
        end local 6 // java.lang.Object resource
        end local 5 // javax.management.DynamicMBean instance
        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.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0      this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   20     1      name  Ljavax/management/ObjectName;
            0   20     2  listener  Ljavax/management/ObjectName;
            0   20     3    filter  Ljavax/management/NotificationFilter;
            0   20     4  handback  Ljava/lang/Object;
            1   20     5  instance  Ljavax/management/DynamicMBean;
            2   20     6  resource  Ljava/lang/Object;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
          Name  Flags
      name      
      listener  
      filter    
      handback  

  public void removeNotificationListener(javax.management.ObjectName, javax.management.NotificationListener);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/NotificationListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.NotificationListener listener
         0: .line 1271
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* listener */
            aconst_null
            aconst_null
            iconst_1
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.removeNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;Z)V
         1: .line 1272
            return
        end local 2 // javax.management.NotificationListener listener
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    2     1      name  Ljavax/management/ObjectName;
            0    2     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=6, locals=5, args_size=5
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor 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 1279
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* listener */
            aload 3 /* filter */
            aload 4 /* handback */
            iconst_0
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.removeNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;Z)V
         1: .line 1280
            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.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    2     1      name  Ljavax/management/ObjectName;
            0    2     2  listener  Ljavax/management/NotificationListener;
            0    2     3    filter  Ljavax/management/NotificationFilter;
            0    2     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=7, locals=4, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // javax.management.ObjectName listener
         0: .line 1285
            aload 0 /* this */
            aload 2 /* listener */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getListener:(Ljavax/management/ObjectName;)Ljavax/management/NotificationListener;
            astore 3 /* instance */
        start local 3 // javax.management.NotificationListener instance
         1: .line 1287
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 7
         2: .line 1288
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
         3: .line 1289
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         4: .line 1290
            ldc "removeNotificationListener"
         5: .line 1291
            new java.lang.StringBuilder
            dup
            ldc "ObjectName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ", Listener = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* listener */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 1288
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         7: .line 1293
      StackMap locals: javax.management.NotificationListener
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 3 /* instance */
            invokeinterface javax.management.MBeanServer.removeNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/NotificationListener;)V
         8: .line 1294
            return
        end local 3 // javax.management.NotificationListener instance
        end local 2 // javax.management.ObjectName listener
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    9     1      name  Ljavax/management/ObjectName;
            0    9     2  listener  Ljavax/management/ObjectName;
            1    9     3  instance  Ljavax/management/NotificationListener;
    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=7, locals=6, args_size=5
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor 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 1302
            aload 0 /* this */
            aload 2 /* listener */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getListener:(Ljavax/management/ObjectName;)Ljavax/management/NotificationListener;
            astore 5 /* instance */
        start local 5 // javax.management.NotificationListener instance
         1: .line 1304
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 7
         2: .line 1305
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
         3: .line 1306
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         4: .line 1307
            ldc "removeNotificationListener"
         5: .line 1308
            new java.lang.StringBuilder
            dup
            ldc "ObjectName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ", Listener = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* listener */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 1305
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         7: .line 1310
      StackMap locals: javax.management.NotificationListener
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            aload 1 /* name */
            aload 5 /* instance */
            aload 3 /* filter */
            aload 4 /* handback */
            invokeinterface javax.management.MBeanServer.removeNotificationListener:(Ljavax/management/ObjectName;Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
         8: .line 1311
            return
        end local 5 // javax.management.NotificationListener instance
        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.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    9     1      name  Ljavax/management/ObjectName;
            0    9     2  listener  Ljavax/management/ObjectName;
            0    9     3    filter  Ljavax/management/NotificationFilter;
            0    9     4  handback  Ljava/lang/Object;
            1    9     5  instance  Ljavax/management/NotificationListener;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      name      
      listener  
      filter    
      handback  

  private javax.management.NotificationListener getListener(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljavax/management/NotificationListener;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName listener
         0: .line 1320
            aload 0 /* this */
            aload 1 /* listener */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 2 /* instance */
        start local 2 // javax.management.DynamicMBean instance
         1: .line 1321
            goto 5
        end local 2 // javax.management.DynamicMBean instance
      StackMap locals:
      StackMap stack: javax.management.InstanceNotFoundException
         2: astore 3 /* e */
        start local 3 // javax.management.InstanceNotFoundException e
         3: .line 1323
            new javax.management.ListenerNotFoundException
            dup
            aload 3 /* e */
            invokevirtual javax.management.InstanceNotFoundException.getMessage:()Ljava/lang/String;
            invokespecial javax.management.ListenerNotFoundException.<init>:(Ljava/lang/String;)V
            aload 3 /* e */
         4: .line 1322
            invokestatic com.sun.jmx.remote.util.EnvHelp.initCause:(Ljava/lang/Throwable;Ljava/lang/Throwable;)Ljava/lang/Throwable;
            checkcast javax.management.ListenerNotFoundException
            athrow
        end local 3 // javax.management.InstanceNotFoundException e
        start local 2 // javax.management.DynamicMBean instance
         5: .line 1326
      StackMap locals: javax.management.DynamicMBean
      StackMap stack:
            aload 2 /* instance */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getResource:(Ljavax/management/DynamicMBean;)Ljava/lang/Object;
            astore 3 /* resource */
        start local 3 // java.lang.Object resource
         6: .line 1327
            aload 3 /* resource */
            instanceof javax.management.NotificationListener
            ifne 14
         7: .line 1329
            new java.lang.IllegalArgumentException
            dup
            aload 1 /* listener */
            invokevirtual javax.management.ObjectName.getCanonicalName:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         8: .line 1328
            astore 4 /* exc */
        start local 4 // java.lang.RuntimeException exc
         9: .line 1331
            new java.lang.StringBuilder
            dup
            ldc "MBean "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* listener */
            invokevirtual javax.management.ObjectName.getCanonicalName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " does not "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 1332
            ldc "implement "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc Ljavax/management/NotificationListener;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 1331
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        12: .line 1330
            astore 5 /* msg */
        start local 5 // java.lang.String msg
        13: .line 1333
            new javax.management.RuntimeOperationsException
            dup
            aload 4 /* exc */
            aload 5 /* msg */
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.String msg
        end local 4 // java.lang.RuntimeException exc
        14: .line 1335
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 3 /* resource */
            checkcast javax.management.NotificationListener
            areturn
        end local 3 // java.lang.Object resource
        end local 2 // javax.management.DynamicMBean instance
        end local 1 // javax.management.ObjectName listener
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   15     1  listener  Ljavax/management/ObjectName;
            1    2     2  instance  Ljavax/management/DynamicMBean;
            5   15     2  instance  Ljavax/management/DynamicMBean;
            3    5     3         e  Ljavax/management/InstanceNotFoundException;
            6   15     3  resource  Ljava/lang/Object;
            9   14     4       exc  Ljava/lang/RuntimeException;
           13   14     5       msg  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class javax.management.InstanceNotFoundException
    Exceptions:
      throws javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      listener  

  private void removeNotificationListener(javax.management.ObjectName, javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object, boolean);
    descriptor: (Ljavax/management/ObjectName;Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=12, args_size=6
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor 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
        start local 5 // boolean removeAll
         0: .line 1345
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 5
         1: .line 1346
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
         2: .line 1347
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         3: .line 1348
            ldc "removeNotificationListener"
            new java.lang.StringBuilder
            dup
            ldc "ObjectName = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 1346
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         5: .line 1351
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 6 /* instance */
        start local 6 // javax.management.DynamicMBean instance
         6: .line 1352
            aload 6 /* instance */
            aconst_null
            aload 1 /* name */
         7: .line 1353
            ldc "removeNotificationListener"
         8: .line 1352
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         9: .line 1354
            aload 6 /* instance */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getResource:(Ljavax/management/DynamicMBean;)Ljava/lang/Object;
            astore 7 /* resource */
        start local 7 // java.lang.Object resource
        10: .line 1362
            iload 5 /* removeAll */
            ifeq 11
            ldc Ljavax/management/NotificationBroadcaster;
            goto 12
      StackMap locals: javax.management.DynamicMBean java.lang.Object
      StackMap stack:
        11: ldc Ljavax/management/NotificationEmitter;
        12: .line 1361
      StackMap locals:
      StackMap stack: java.lang.Class
            astore 8 /* reqClass */
        start local 8 // java.lang.Class reqClass
        13: .line 1364
            aload 1 /* name */
            aload 6 /* instance */
            aload 8 /* reqClass */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getNotificationBroadcaster:(Ljavax/management/ObjectName;Ljava/lang/Object;Ljava/lang/Class;)Ljavax/management/NotificationBroadcaster;
        14: .line 1363
            astore 9 /* broadcaster */
        start local 9 // javax.management.NotificationBroadcaster broadcaster
        15: .line 1367
            aload 0 /* this */
            aload 2 /* listener */
            aload 1 /* name */
            aload 7 /* resource */
            iconst_0
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getListenerWrapper:(Ljavax/management/NotificationListener;Ljavax/management/ObjectName;Ljava/lang/Object;Z)Ljavax/management/NotificationListener;
        16: .line 1366
            astore 10 /* listenerWrapper */
        start local 10 // javax.management.NotificationListener listenerWrapper
        17: .line 1369
            aload 10 /* listenerWrapper */
            ifnonnull 19
        18: .line 1370
            new javax.management.ListenerNotFoundException
            dup
            ldc "Unknown listener"
            invokespecial javax.management.ListenerNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        19: .line 1372
      StackMap locals: java.lang.Class javax.management.NotificationBroadcaster javax.management.NotificationListener
      StackMap stack:
            iload 5 /* removeAll */
            ifeq 21
        20: .line 1373
            aload 9 /* broadcaster */
            aload 10 /* listenerWrapper */
            invokeinterface javax.management.NotificationBroadcaster.removeNotificationListener:(Ljavax/management/NotificationListener;)V
            goto 26
        21: .line 1375
      StackMap locals:
      StackMap stack:
            aload 9 /* broadcaster */
            checkcast javax.management.NotificationEmitter
            astore 11 /* emitter */
        start local 11 // javax.management.NotificationEmitter emitter
        22: .line 1376
            aload 11 /* emitter */
            aload 10 /* listenerWrapper */
        23: .line 1377
            aload 3 /* filter */
        24: .line 1378
            aload 4 /* handback */
        25: .line 1376
            invokeinterface javax.management.NotificationEmitter.removeNotificationListener:(Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
        end local 11 // javax.management.NotificationEmitter emitter
        26: .line 1380
      StackMap locals:
      StackMap stack:
            return
        end local 10 // javax.management.NotificationListener listenerWrapper
        end local 9 // javax.management.NotificationBroadcaster broadcaster
        end local 8 // java.lang.Class reqClass
        end local 7 // java.lang.Object resource
        end local 6 // javax.management.DynamicMBean instance
        end local 5 // boolean removeAll
        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.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   27     0             this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   27     1             name  Ljavax/management/ObjectName;
            0   27     2         listener  Ljavax/management/NotificationListener;
            0   27     3           filter  Ljavax/management/NotificationFilter;
            0   27     4         handback  Ljava/lang/Object;
            0   27     5        removeAll  Z
            6   27     6         instance  Ljavax/management/DynamicMBean;
           10   27     7         resource  Ljava/lang/Object;
           13   27     8         reqClass  Ljava/lang/Class<+Ljavax/management/NotificationBroadcaster;>;
           15   27     9      broadcaster  Ljavax/management/NotificationBroadcaster;
           17   27    10  listenerWrapper  Ljavax/management/NotificationListener;
           22   26    11          emitter  Ljavax/management/NotificationEmitter;
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.ListenerNotFoundException
    MethodParameters:
           Name  Flags
      name       
      listener   
      filter     
      handback   
      removeAll  

  private static <T extends javax.management.NotificationBroadcaster> T getNotificationBroadcaster(javax.management.ObjectName, , java.lang.Class<T>);
    descriptor: (Ljavax/management/ObjectName;Ljava/lang/Object;Ljava/lang/Class;)Ljavax/management/NotificationBroadcaster;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // javax.management.ObjectName name
        start local 1 // java.lang.Object instance
        start local 2 // java.lang.Class reqClass
         0: .line 1385
            aload 1 /* instance */
            instanceof com.sun.jmx.mbeanserver.DynamicMBean2
            ifeq 2
         1: .line 1386
            aload 1 /* instance */
            checkcast com.sun.jmx.mbeanserver.DynamicMBean2
            invokeinterface com.sun.jmx.mbeanserver.DynamicMBean2.getResource:()Ljava/lang/Object;
            astore 1 /* instance */
         2: .line 1387
      StackMap locals:
      StackMap stack:
            aload 2 /* reqClass */
            aload 1 /* instance */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 1388
            aload 2 /* reqClass */
            aload 1 /* instance */
            invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.management.NotificationBroadcaster
            areturn
         4: .line 1390
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            aload 0 /* name */
            invokevirtual javax.management.ObjectName.getCanonicalName:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
         5: .line 1389
            astore 3 /* exc */
        start local 3 // java.lang.RuntimeException exc
         6: .line 1392
            new java.lang.StringBuilder
            dup
            ldc "MBean "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* name */
            invokevirtual javax.management.ObjectName.getCanonicalName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " does not "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 1393
            ldc "implement "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* reqClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 1392
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 1391
            astore 4 /* msg */
        start local 4 // java.lang.String msg
        10: .line 1394
            new javax.management.RuntimeOperationsException
            dup
            aload 3 /* exc */
            aload 4 /* msg */
            invokespecial javax.management.RuntimeOperationsException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.String msg
        end local 3 // java.lang.RuntimeException exc
        end local 2 // java.lang.Class reqClass
        end local 1 // java.lang.Object instance
        end local 0 // javax.management.ObjectName name
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      name  Ljavax/management/ObjectName;
            0   11     1  instance  Ljava/lang/Object;
            0   11     2  reqClass  Ljava/lang/Class<TT;>;
            6   11     3       exc  Ljava/lang/RuntimeException;
           10   11     4       msg  Ljava/lang/String;
    Signature: <T::Ljavax/management/NotificationBroadcaster;>(Ljavax/management/ObjectName;Ljava/lang/Object;Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
          Name  Flags
      name      
      instance  
      reqClass  

  public javax.management.MBeanInfo getMBeanInfo(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljavax/management/MBeanInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
         0: .line 1404
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 2 /* moi */
        start local 2 // javax.management.DynamicMBean moi
         1: .line 1407
            aload 2 /* moi */
            invokeinterface javax.management.DynamicMBean.getMBeanInfo:()Ljavax/management/MBeanInfo;
            astore 3 /* mbi */
        start local 3 // javax.management.MBeanInfo mbi
         2: .line 1408
            goto 13
        end local 3 // javax.management.MBeanInfo mbi
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName javax.management.DynamicMBean
      StackMap stack: javax.management.RuntimeMBeanException
         3: astore 4 /* e */
        start local 4 // javax.management.RuntimeMBeanException e
         4: .line 1409
            aload 4 /* e */
            athrow
        end local 4 // javax.management.RuntimeMBeanException e
         5: .line 1410
      StackMap locals:
      StackMap stack: javax.management.RuntimeErrorException
            astore 4 /* e */
        start local 4 // javax.management.RuntimeErrorException e
         6: .line 1411
            aload 4 /* e */
            athrow
        end local 4 // javax.management.RuntimeErrorException e
         7: .line 1412
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 4 /* e */
        start local 4 // java.lang.RuntimeException e
         8: .line 1413
            new javax.management.RuntimeMBeanException
            dup
            aload 4 /* e */
         9: .line 1414
            ldc "getMBeanInfo threw RuntimeException"
        10: .line 1413
            invokespecial javax.management.RuntimeMBeanException.<init>:(Ljava/lang/RuntimeException;Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.RuntimeException e
        11: .line 1415
      StackMap locals:
      StackMap stack: java.lang.Error
            astore 4 /* e */
        start local 4 // java.lang.Error e
        12: .line 1416
            new javax.management.RuntimeErrorException
            dup
            aload 4 /* e */
            ldc "getMBeanInfo threw Error"
            invokespecial javax.management.RuntimeErrorException.<init>:(Ljava/lang/Error;Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.Error e
        start local 3 // javax.management.MBeanInfo mbi
        13: .line 1418
      StackMap locals: javax.management.MBeanInfo
      StackMap stack:
            aload 3 /* mbi */
            ifnonnull 17
        14: .line 1419
            new javax.management.JMRuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "MBean "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        15: .line 1420
            ldc "has no MBeanInfo"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        16: .line 1419
            invokespecial javax.management.JMRuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        17: .line 1422
      StackMap locals:
      StackMap stack:
            aload 3 /* mbi */
            invokevirtual javax.management.MBeanInfo.getClassName:()Ljava/lang/String;
            aconst_null
            aload 1 /* name */
            ldc "getMBeanInfo"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
        18: .line 1424
            aload 3 /* mbi */
            areturn
        end local 3 // javax.management.MBeanInfo mbi
        end local 2 // javax.management.DynamicMBean moi
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   19     1  name  Ljavax/management/ObjectName;
            1   19     2   moi  Ljavax/management/DynamicMBean;
            2    3     3   mbi  Ljavax/management/MBeanInfo;
           13   19     3   mbi  Ljavax/management/MBeanInfo;
            4    5     4     e  Ljavax/management/RuntimeMBeanException;
            6    7     4     e  Ljavax/management/RuntimeErrorException;
            8   11     4     e  Ljava/lang/RuntimeException;
           12   13     4     e  Ljava/lang/Error;
      Exception table:
        from    to  target  type
           1     2       3  Class javax.management.RuntimeMBeanException
           1     2       5  Class javax.management.RuntimeErrorException
           1     2       7  Class java.lang.RuntimeException
           1     2      11  Class java.lang.Error
    Exceptions:
      throws javax.management.InstanceNotFoundException, javax.management.IntrospectionException, javax.management.ReflectionException
    MethodParameters:
      Name  Flags
      name  

  public boolean isInstanceOf(javax.management.ObjectName, java.lang.String);
    descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName name
        start local 2 // java.lang.String className
         0: .line 1430
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 3 /* instance */
        start local 3 // javax.management.DynamicMBean instance
         1: .line 1431
            aload 3 /* instance */
            aconst_null
            aload 1 /* name */
            ldc "isInstanceOf"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         2: .line 1434
            aload 3 /* instance */
            instanceof com.sun.jmx.mbeanserver.DynamicMBean2
            ifeq 8
         3: .line 1435
            aload 3 /* instance */
            checkcast com.sun.jmx.mbeanserver.DynamicMBean2
            invokeinterface com.sun.jmx.mbeanserver.DynamicMBean2.getResource:()Ljava/lang/Object;
            astore 4 /* resource */
        start local 4 // java.lang.Object resource
         4: .line 1436
            aload 4 /* resource */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            astore 5 /* loader */
        start local 5 // java.lang.ClassLoader loader
         5: .line 1437
            aload 2 /* className */
            iconst_0
            aload 5 /* loader */
            invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
            astore 6 /* c */
        start local 6 // java.lang.Class c
         6: .line 1438
            aload 6 /* c */
            aload 4 /* resource */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
         7: ireturn
        end local 6 // java.lang.Class c
        end local 5 // java.lang.ClassLoader loader
        end local 4 // java.lang.Object resource
         8: .line 1441
      StackMap locals: javax.management.DynamicMBean
      StackMap stack:
            aload 3 /* instance */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getClassName:(Ljavax/management/DynamicMBean;)Ljava/lang/String;
            astore 4 /* cn */
        start local 4 // java.lang.String cn
         9: .line 1442
            aload 4 /* cn */
            aload 2 /* className */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
        10: .line 1443
            iconst_1
            ireturn
        11: .line 1444
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* instance */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            astore 5 /* cl */
        start local 5 // java.lang.ClassLoader cl
        12: .line 1446
            aload 2 /* className */
            iconst_0
            aload 5 /* cl */
            invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
            astore 6 /* classNameClass */
        start local 6 // java.lang.Class classNameClass
        13: .line 1447
            aload 6 /* classNameClass */
            aload 3 /* instance */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 15
        14: .line 1448
            iconst_1
            ireturn
        15: .line 1450
      StackMap locals: java.lang.ClassLoader java.lang.Class
      StackMap stack:
            aload 4 /* cn */
            iconst_0
            aload 5 /* cl */
            invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
            astore 7 /* instanceClass */
        start local 7 // java.lang.Class instanceClass
        16: .line 1451
            aload 6 /* classNameClass */
            aload 7 /* instanceClass */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
        17: ireturn
        end local 7 // java.lang.Class instanceClass
        end local 6 // java.lang.Class classNameClass
        end local 5 // java.lang.ClassLoader cl
        end local 4 // java.lang.String cn
        18: .line 1452
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.ObjectName java.lang.String javax.management.DynamicMBean
      StackMap stack: java.lang.Exception
            astore 4 /* x */
        start local 4 // java.lang.Exception x
        19: .line 1454
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 24
        20: .line 1455
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
        21: .line 1456
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        22: .line 1457
            ldc "isInstanceOf"
            ldc "Exception calling isInstanceOf"
            aload 4 /* x */
        23: .line 1455
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
        24: .line 1459
      StackMap locals: java.lang.Exception
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // java.lang.Exception x
        end local 3 // javax.management.DynamicMBean instance
        end local 2 // java.lang.String className
        end local 1 // javax.management.ObjectName name
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   25     0            this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   25     1            name  Ljavax/management/ObjectName;
            0   25     2       className  Ljava/lang/String;
            1   25     3        instance  Ljavax/management/DynamicMBean;
            4    8     4        resource  Ljava/lang/Object;
            5    8     5          loader  Ljava/lang/ClassLoader;
            6    8     6               c  Ljava/lang/Class<*>;
            9   18     4              cn  Ljava/lang/String;
           12   18     5              cl  Ljava/lang/ClassLoader;
           13   18     6  classNameClass  Ljava/lang/Class<*>;
           16   18     7   instanceClass  Ljava/lang/Class<*>;
           19   25     4               x  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2     7      18  Class java.lang.Exception
           8    10      18  Class java.lang.Exception
          11    14      18  Class java.lang.Exception
          15    17      18  Class java.lang.Exception
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
           Name  Flags
      name       
      className  

  public java.lang.ClassLoader getClassLoaderFor(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljava/lang/ClassLoader;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName mbeanName
         0: .line 1474
            aload 0 /* this */
            aload 1 /* mbeanName */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 2 /* instance */
        start local 2 // javax.management.DynamicMBean instance
         1: .line 1475
            aload 2 /* instance */
            aconst_null
            aload 1 /* mbeanName */
            ldc "getClassLoaderFor"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         2: .line 1476
            aload 2 /* instance */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getResource:(Ljavax/management/DynamicMBean;)Ljava/lang/Object;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            areturn
        end local 2 // javax.management.DynamicMBean instance
        end local 1 // javax.management.ObjectName mbeanName
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0    3     1  mbeanName  Ljavax/management/ObjectName;
            1    3     2   instance  Ljavax/management/DynamicMBean;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
           Name  Flags
      mbeanName  

  public java.lang.ClassLoader getClassLoader(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljava/lang/ClassLoader;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.ObjectName loaderName
         0: .line 1489
            aload 1 /* loaderName */
            ifnonnull 3
         1: .line 1490
            aconst_null
            aconst_null
            aconst_null
            ldc "getClassLoader"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         2: .line 1491
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            areturn
         3: .line 1494
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* loaderName */
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean:(Ljavax/management/ObjectName;)Ljavax/management/DynamicMBean;
            astore 2 /* instance */
        start local 2 // javax.management.DynamicMBean instance
         4: .line 1495
            aload 2 /* instance */
            aconst_null
            aload 1 /* loaderName */
            ldc "getClassLoader"
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         5: .line 1497
            aload 2 /* instance */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getResource:(Ljavax/management/DynamicMBean;)Ljava/lang/Object;
            astore 3 /* resource */
        start local 3 // java.lang.Object resource
         6: .line 1500
            aload 3 /* resource */
            instanceof java.lang.ClassLoader
            ifne 10
         7: .line 1501
            new javax.management.InstanceNotFoundException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* loaderName */
            invokevirtual javax.management.ObjectName.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         8: .line 1502
            ldc " is not a classloader"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 1501
            invokespecial javax.management.InstanceNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 1504
      StackMap locals: javax.management.DynamicMBean java.lang.Object
      StackMap stack:
            aload 3 /* resource */
            checkcast java.lang.ClassLoader
            areturn
        end local 3 // java.lang.Object resource
        end local 2 // javax.management.DynamicMBean instance
        end local 1 // javax.management.ObjectName loaderName
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   11     1  loaderName  Ljavax/management/ObjectName;
            4   11     2    instance  Ljavax/management/DynamicMBean;
            6   11     3    resource  Ljava/lang/Object;
    Exceptions:
      throws javax.management.InstanceNotFoundException
    MethodParameters:
            Name  Flags
      loaderName  

  private void internal_addObject(javax.management.DynamicMBean, javax.management.ObjectName);
    descriptor: (Ljavax/management/DynamicMBean;Ljavax/management/ObjectName;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.DynamicMBean object
        start local 2 // javax.management.ObjectName logicalName
         0: .line 1519
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.repository:Lcom/sun/jmx/mbeanserver/Repository;
            aload 1 /* object */
            aload 2 /* logicalName */
            invokevirtual com.sun.jmx.mbeanserver.Repository.addMBean:(Ljavax/management/DynamicMBean;Ljavax/management/ObjectName;)V
         1: .line 1520
            goto 6
      StackMap locals:
      StackMap stack: javax.management.InstanceAlreadyExistsException
         2: astore 3 /* e */
        start local 3 // javax.management.InstanceAlreadyExistsException e
         3: .line 1521
            aload 1 /* object */
            instanceof javax.management.MBeanRegistration
            ifeq 5
         4: .line 1522
            aload 1 /* object */
            checkcast javax.management.MBeanRegistration
            iconst_0
            iconst_1
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.postRegisterInvoke:(Ljavax/management/MBeanRegistration;ZZ)V
         5: .line 1524
      StackMap locals: javax.management.InstanceAlreadyExistsException
      StackMap stack:
            aload 3 /* e */
            athrow
        end local 3 // javax.management.InstanceAlreadyExistsException e
         6: .line 1530
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 12
         7: .line 1531
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
         8: .line 1532
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         9: .line 1533
            ldc "addObject"
            new java.lang.StringBuilder
            dup
            ldc "Send create notification of object "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        10: .line 1534
            aload 2 /* logicalName */
            invokevirtual javax.management.ObjectName.getCanonicalName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 1531
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        12: .line 1537
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "JMX.mbean.registered"
        13: .line 1538
            aload 2 /* logicalName */
        14: .line 1537
            invokevirtual com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.sendNotification:(Ljava/lang/String;Ljavax/management/ObjectName;)V
        15: .line 1539
            return
        end local 2 // javax.management.ObjectName logicalName
        end local 1 // javax.management.DynamicMBean object
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   16     1       object  Ljavax/management/DynamicMBean;
            0   16     2  logicalName  Ljavax/management/ObjectName;
            3    6     3            e  Ljavax/management/InstanceAlreadyExistsException;
      Exception table:
        from    to  target  type
           0     1       2  Class javax.management.InstanceAlreadyExistsException
    Exceptions:
      throws javax.management.InstanceAlreadyExistsException
    MethodParameters:
             Name  Flags
      object       
      logicalName  

  private void sendNotification(java.lang.String, javax.management.ObjectName);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // java.lang.String NotifType
        start local 2 // javax.management.ObjectName name
         0: .line 1553
            new javax.management.MBeanServerNotification
            dup
         1: .line 1554
            aload 1 /* NotifType */
            getstatic javax.management.MBeanServerDelegate.DELEGATE_NAME:Ljavax/management/ObjectName;
            lconst_0
            aload 2 /* name */
         2: .line 1553
            invokespecial javax.management.MBeanServerNotification.<init>:(Ljava/lang/String;Ljava/lang/Object;JLjavax/management/ObjectName;)V
            astore 3 /* notif */
        start local 3 // javax.management.MBeanServerNotification notif
         3: .line 1556
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 8
         4: .line 1557
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
         5: .line 1558
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         6: .line 1559
            ldc "sendNotification"
            new java.lang.StringBuilder
            dup
            aload 1 /* NotifType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 1557
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         8: .line 1562
      StackMap locals: javax.management.MBeanServerNotification
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.delegate:Ljavax/management/MBeanServerDelegate;
            aload 3 /* notif */
            invokevirtual javax.management.MBeanServerDelegate.sendNotification:(Ljavax/management/Notification;)V
         9: .line 1563
            return
        end local 3 // javax.management.MBeanServerNotification notif
        end local 2 // javax.management.ObjectName name
        end local 1 // java.lang.String NotifType
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   10     1  NotifType  Ljava/lang/String;
            0   10     2       name  Ljavax/management/ObjectName;
            3   10     3      notif  Ljavax/management/MBeanServerNotification;
    MethodParameters:
           Name  Flags
      NotifType  
      name       

  private java.util.Set<javax.management.ObjectName> objectNamesFromFilteredNamedObjects(java.util.Set<com.sun.jmx.mbeanserver.NamedObject>, javax.management.QueryExp);
    descriptor: (Ljava/util/Set;Ljavax/management/QueryExp;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=9, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // java.util.Set list
        start local 2 // javax.management.QueryExp query
         0: .line 1571
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 3 /* result */
        start local 3 // java.util.Set result
         1: .line 1573
            aload 2 /* query */
            ifnonnull 7
         2: .line 1574
            aload 1 /* list */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 5
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set top java.util.Iterator
      StackMap stack:
         3: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.jmx.mbeanserver.NamedObject
            astore 4 /* no */
        start local 4 // com.sun.jmx.mbeanserver.NamedObject no
         4: .line 1575
            aload 3 /* result */
            aload 4 /* no */
            invokevirtual com.sun.jmx.mbeanserver.NamedObject.getName:()Ljavax/management/ObjectName;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // com.sun.jmx.mbeanserver.NamedObject no
         5: .line 1574
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 1577
            goto 24
         7: .line 1579
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set
      StackMap stack:
            invokestatic javax.management.QueryEval.getMBeanServer:()Ljavax/management/MBeanServer;
            astore 4 /* oldServer */
        start local 4 // javax.management.MBeanServer oldServer
         8: .line 1580
            aload 2 /* query */
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            invokeinterface javax.management.QueryExp.setMBeanServer:(Ljavax/management/MBeanServer;)V
         9: .line 1582
            aload 1 /* list */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 18
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set javax.management.MBeanServer top java.util.Iterator
      StackMap stack:
        10: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.jmx.mbeanserver.NamedObject
            astore 5 /* no */
        start local 5 // com.sun.jmx.mbeanserver.NamedObject no
        11: .line 1583
            aload 5 /* no */
            invokevirtual com.sun.jmx.mbeanserver.NamedObject.getObject:()Ljavax/management/DynamicMBean;
            pop
        12: .line 1586
            aload 2 /* query */
            aload 5 /* no */
            invokevirtual com.sun.jmx.mbeanserver.NamedObject.getName:()Ljavax/management/ObjectName;
            invokeinterface javax.management.QueryExp.apply:(Ljavax/management/ObjectName;)Z
            istore 7 /* res */
        start local 7 // boolean res
        13: .line 1587
            goto 16
        end local 7 // boolean res
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set javax.management.MBeanServer com.sun.jmx.mbeanserver.NamedObject java.util.Iterator
      StackMap stack: java.lang.Exception
        14: pop
        15: .line 1588
            iconst_0
            istore 7 /* res */
        start local 7 // boolean res
        16: .line 1590
      StackMap locals: int
      StackMap stack:
            iload 7 /* res */
            ifeq 18
        17: .line 1591
            aload 3 /* result */
            aload 5 /* no */
            invokevirtual com.sun.jmx.mbeanserver.NamedObject.getName:()Ljavax/management/ObjectName;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // boolean res
        end local 5 // com.sun.jmx.mbeanserver.NamedObject no
        18: .line 1582
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set javax.management.MBeanServer top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        19: .line 1594
            goto 23
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set javax.management.MBeanServer
      StackMap stack: java.lang.Throwable
        20: astore 8
        21: .line 1604
            aload 2 /* query */
            aload 4 /* oldServer */
            invokeinterface javax.management.QueryExp.setMBeanServer:(Ljavax/management/MBeanServer;)V
        22: .line 1605
            aload 8
            athrow
        23: .line 1604
      StackMap locals:
      StackMap stack:
            aload 2 /* query */
            aload 4 /* oldServer */
            invokeinterface javax.management.QueryExp.setMBeanServer:(Ljavax/management/MBeanServer;)V
        end local 4 // javax.management.MBeanServer oldServer
        24: .line 1607
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // java.util.Set result
        end local 2 // javax.management.QueryExp query
        end local 1 // java.util.Set list
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   25     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   25     1       list  Ljava/util/Set<Lcom/sun/jmx/mbeanserver/NamedObject;>;
            0   25     2      query  Ljavax/management/QueryExp;
            1   25     3     result  Ljava/util/Set<Ljavax/management/ObjectName;>;
            4    5     4         no  Lcom/sun/jmx/mbeanserver/NamedObject;
            8   24     4  oldServer  Ljavax/management/MBeanServer;
           11   18     5         no  Lcom/sun/jmx/mbeanserver/NamedObject;
           13   14     7        res  Z
           16   18     7        res  Z
      Exception table:
        from    to  target  type
          12    13      14  Class java.lang.Exception
           9    20      20  any
    Signature: (Ljava/util/Set<Lcom/sun/jmx/mbeanserver/NamedObject;>;Ljavax/management/QueryExp;)Ljava/util/Set<Ljavax/management/ObjectName;>;
    MethodParameters:
       Name  Flags
      list   
      query  

  private java.util.Set<javax.management.ObjectInstance> objectInstancesFromFilteredNamedObjects(java.util.Set<com.sun.jmx.mbeanserver.NamedObject>, javax.management.QueryExp);
    descriptor: (Ljava/util/Set;Ljavax/management/QueryExp;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=11, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // java.util.Set list
        start local 2 // javax.management.QueryExp query
         0: .line 1616
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 3 /* result */
        start local 3 // java.util.Set result
         1: .line 1618
            aload 2 /* query */
            ifnonnull 9
         2: .line 1619
            aload 1 /* list */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 7
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set top java.util.Iterator
      StackMap stack:
         3: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.jmx.mbeanserver.NamedObject
            astore 4 /* no */
        start local 4 // com.sun.jmx.mbeanserver.NamedObject no
         4: .line 1620
            aload 4 /* no */
            invokevirtual com.sun.jmx.mbeanserver.NamedObject.getObject:()Ljavax/management/DynamicMBean;
            astore 6 /* obj */
        start local 6 // javax.management.DynamicMBean obj
         5: .line 1621
            aload 6 /* obj */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.safeGetClassName:(Ljavax/management/DynamicMBean;)Ljava/lang/String;
            astore 7 /* className */
        start local 7 // java.lang.String className
         6: .line 1622
            aload 3 /* result */
            new javax.management.ObjectInstance
            dup
            aload 4 /* no */
            invokevirtual com.sun.jmx.mbeanserver.NamedObject.getName:()Ljavax/management/ObjectName;
            aload 7 /* className */
            invokespecial javax.management.ObjectInstance.<init>:(Ljavax/management/ObjectName;Ljava/lang/String;)V
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // java.lang.String className
        end local 6 // javax.management.DynamicMBean obj
        end local 4 // com.sun.jmx.mbeanserver.NamedObject no
         7: .line 1619
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         8: .line 1624
            goto 27
         9: .line 1626
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set
      StackMap stack:
            invokestatic javax.management.QueryEval.getMBeanServer:()Ljavax/management/MBeanServer;
            astore 4 /* oldServer */
        start local 4 // javax.management.MBeanServer oldServer
        10: .line 1627
            aload 2 /* query */
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            invokeinterface javax.management.QueryExp.setMBeanServer:(Ljavax/management/MBeanServer;)V
        11: .line 1629
            aload 1 /* list */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 21
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set javax.management.MBeanServer top java.util.Iterator
      StackMap stack:
        12: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.jmx.mbeanserver.NamedObject
            astore 5 /* no */
        start local 5 // com.sun.jmx.mbeanserver.NamedObject no
        13: .line 1630
            aload 5 /* no */
            invokevirtual com.sun.jmx.mbeanserver.NamedObject.getObject:()Ljavax/management/DynamicMBean;
            astore 7 /* obj */
        start local 7 // javax.management.DynamicMBean obj
        14: .line 1633
            aload 2 /* query */
            aload 5 /* no */
            invokevirtual com.sun.jmx.mbeanserver.NamedObject.getName:()Ljavax/management/ObjectName;
            invokeinterface javax.management.QueryExp.apply:(Ljavax/management/ObjectName;)Z
            istore 8 /* res */
        start local 8 // boolean res
        15: .line 1634
            goto 18
        end local 8 // boolean res
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set javax.management.MBeanServer com.sun.jmx.mbeanserver.NamedObject java.util.Iterator javax.management.DynamicMBean
      StackMap stack: java.lang.Exception
        16: pop
        17: .line 1635
            iconst_0
            istore 8 /* res */
        start local 8 // boolean res
        18: .line 1637
      StackMap locals: int
      StackMap stack:
            iload 8 /* res */
            ifeq 21
        19: .line 1638
            aload 7 /* obj */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.safeGetClassName:(Ljavax/management/DynamicMBean;)Ljava/lang/String;
            astore 9 /* className */
        start local 9 // java.lang.String className
        20: .line 1639
            aload 3 /* result */
            new javax.management.ObjectInstance
            dup
            aload 5 /* no */
            invokevirtual com.sun.jmx.mbeanserver.NamedObject.getName:()Ljavax/management/ObjectName;
            aload 9 /* className */
            invokespecial javax.management.ObjectInstance.<init>:(Ljavax/management/ObjectName;Ljava/lang/String;)V
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // java.lang.String className
        end local 8 // boolean res
        end local 7 // javax.management.DynamicMBean obj
        end local 5 // com.sun.jmx.mbeanserver.NamedObject no
        21: .line 1629
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set javax.management.MBeanServer top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        22: .line 1642
            goto 26
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set javax.management.MBeanServer
      StackMap stack: java.lang.Throwable
        23: astore 10
        24: .line 1652
            aload 2 /* query */
            aload 4 /* oldServer */
            invokeinterface javax.management.QueryExp.setMBeanServer:(Ljavax/management/MBeanServer;)V
        25: .line 1653
            aload 10
            athrow
        26: .line 1652
      StackMap locals:
      StackMap stack:
            aload 2 /* query */
            aload 4 /* oldServer */
            invokeinterface javax.management.QueryExp.setMBeanServer:(Ljavax/management/MBeanServer;)V
        end local 4 // javax.management.MBeanServer oldServer
        27: .line 1655
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // java.util.Set result
        end local 2 // javax.management.QueryExp query
        end local 1 // java.util.Set list
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   28     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   28     1       list  Ljava/util/Set<Lcom/sun/jmx/mbeanserver/NamedObject;>;
            0   28     2      query  Ljavax/management/QueryExp;
            1   28     3     result  Ljava/util/Set<Ljavax/management/ObjectInstance;>;
            4    7     4         no  Lcom/sun/jmx/mbeanserver/NamedObject;
            5    7     6        obj  Ljavax/management/DynamicMBean;
            6    7     7  className  Ljava/lang/String;
           10   27     4  oldServer  Ljavax/management/MBeanServer;
           13   21     5         no  Lcom/sun/jmx/mbeanserver/NamedObject;
           14   21     7        obj  Ljavax/management/DynamicMBean;
           15   16     8        res  Z
           18   21     8        res  Z
           20   21     9  className  Ljava/lang/String;
      Exception table:
        from    to  target  type
          14    15      16  Class java.lang.Exception
          11    23      23  any
    Signature: (Ljava/util/Set<Lcom/sun/jmx/mbeanserver/NamedObject;>;Ljavax/management/QueryExp;)Ljava/util/Set<Ljavax/management/ObjectInstance;>;
    MethodParameters:
       Name  Flags
      list   
      query  

  private static java.lang.String safeGetClassName(javax.management.DynamicMBean);
    descriptor: (Ljavax/management/DynamicMBean;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // javax.management.DynamicMBean mbean
         0: .line 1660
            aload 0 /* mbean */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getClassName:(Ljavax/management/DynamicMBean;)Ljava/lang/String;
         1: areturn
         2: .line 1661
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
         3: .line 1662
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 9
         4: .line 1663
            getstatic com.sun.jmx.defaults.JmxProperties.MBEANSERVER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
         5: .line 1664
            ldc Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         6: .line 1665
            ldc "safeGetClassName"
         7: .line 1666
            ldc "Exception getting MBean class name"
            aload 1 /* e */
         8: .line 1663
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
         9: .line 1668
      StackMap locals: java.lang.Exception
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.Exception e
        end local 0 // javax.management.DynamicMBean mbean
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0  mbean  Ljavax/management/DynamicMBean;
            3   10     1      e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception
    MethodParameters:
       Name  Flags
      mbean  

  private java.util.Set<javax.management.ObjectInstance> filterListOfObjectInstances(java.util.Set<javax.management.ObjectInstance>, javax.management.QueryExp);
    descriptor: (Ljava/util/Set;Ljavax/management/QueryExp;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=9, args_size=3
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // java.util.Set list
        start local 2 // javax.management.QueryExp query
         0: .line 1680
            aload 2 /* query */
            ifnonnull 2
         1: .line 1681
            aload 1 /* list */
            areturn
         2: .line 1683
      StackMap locals:
      StackMap stack:
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 3 /* result */
        start local 3 // java.util.Set result
         3: .line 1686
            aload 1 /* list */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 19
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set top java.util.Iterator
      StackMap stack:
         4: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.ObjectInstance
            astore 4 /* oi */
        start local 4 // javax.management.ObjectInstance oi
         5: .line 1687
            iconst_0
            istore 6 /* res */
        start local 6 // boolean res
         6: .line 1688
            invokestatic javax.management.QueryEval.getMBeanServer:()Ljavax/management/MBeanServer;
            astore 7 /* oldServer */
        start local 7 // javax.management.MBeanServer oldServer
         7: .line 1689
            aload 2 /* query */
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.server:Ljavax/management/MBeanServer;
            invokeinterface javax.management.QueryExp.setMBeanServer:(Ljavax/management/MBeanServer;)V
         8: .line 1691
            aload 2 /* query */
            aload 4 /* oi */
            invokevirtual javax.management.ObjectInstance.getObjectName:()Ljavax/management/ObjectName;
            invokeinterface javax.management.QueryExp.apply:(Ljavax/management/ObjectName;)Z
            istore 6 /* res */
         9: .line 1692
            goto 16
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set javax.management.ObjectInstance java.util.Iterator int javax.management.MBeanServer
      StackMap stack: java.lang.Exception
        10: pop
        11: .line 1693
            iconst_0
            istore 6 /* res */
        12: .line 1704
            aload 2 /* query */
            aload 7 /* oldServer */
            invokeinterface javax.management.QueryExp.setMBeanServer:(Ljavax/management/MBeanServer;)V
            goto 17
        13: .line 1694
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 8
        14: .line 1704
            aload 2 /* query */
            aload 7 /* oldServer */
            invokeinterface javax.management.QueryExp.setMBeanServer:(Ljavax/management/MBeanServer;)V
        15: .line 1705
            aload 8
            athrow
        16: .line 1704
      StackMap locals:
      StackMap stack:
            aload 2 /* query */
            aload 7 /* oldServer */
            invokeinterface javax.management.QueryExp.setMBeanServer:(Ljavax/management/MBeanServer;)V
        17: .line 1706
      StackMap locals:
      StackMap stack:
            iload 6 /* res */
            ifeq 19
        18: .line 1707
            aload 3 /* result */
            aload 4 /* oi */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // javax.management.MBeanServer oldServer
        end local 6 // boolean res
        end local 4 // javax.management.ObjectInstance oi
        19: .line 1686
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor java.util.Set javax.management.QueryExp java.util.Set top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        20: .line 1710
            aload 3 /* result */
            areturn
        end local 3 // java.util.Set result
        end local 2 // javax.management.QueryExp query
        end local 1 // java.util.Set list
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0       this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   21     1       list  Ljava/util/Set<Ljavax/management/ObjectInstance;>;
            0   21     2      query  Ljavax/management/QueryExp;
            3   21     3     result  Ljava/util/Set<Ljavax/management/ObjectInstance;>;
            5   19     4         oi  Ljavax/management/ObjectInstance;
            6   19     6        res  Z
            7   19     7  oldServer  Ljavax/management/MBeanServer;
      Exception table:
        from    to  target  type
           8     9      10  Class java.lang.Exception
           8    12      13  any
    Signature: (Ljava/util/Set<Ljavax/management/ObjectInstance;>;Ljavax/management/QueryExp;)Ljava/util/Set<Ljavax/management/ObjectInstance;>;
    MethodParameters:
       Name  Flags
      list   
      query  

  private javax.management.NotificationListener getListenerWrapper(javax.management.NotificationListener, javax.management.ObjectName, java.lang.Object, boolean);
    descriptor: (Ljavax/management/NotificationListener;Ljavax/management/ObjectName;Ljava/lang/Object;Z)Ljavax/management/NotificationListener;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=5
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
        start local 1 // javax.management.NotificationListener l
        start local 2 // javax.management.ObjectName name
        start local 3 // java.lang.Object mbean
        start local 4 // boolean create
         0: .line 1734
            new com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper
            dup
            aload 1 /* l */
            aload 2 /* name */
            aload 3 /* mbean */
            invokespecial com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper.<init>:(Ljavax/management/NotificationListener;Ljavax/management/ObjectName;Ljava/lang/Object;)V
            astore 5 /* wrapper */
        start local 5 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper wrapper
         1: .line 1735
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.listenerWrappers:Ljava/util/WeakHashMap;
            dup
            astore 6
            monitorenter
         2: .line 1736
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.listenerWrappers:Ljava/util/WeakHashMap;
            aload 5 /* wrapper */
            invokevirtual java.util.WeakHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.ref.WeakReference
            astore 7 /* ref */
        start local 7 // java.lang.ref.WeakReference ref
         3: .line 1737
            aload 7 /* ref */
            ifnull 8
         4: .line 1738
            aload 7 /* ref */
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast javax.management.NotificationListener
            astore 8 /* existing */
        start local 8 // javax.management.NotificationListener existing
         5: .line 1739
            aload 8 /* existing */
            ifnull 8
         6: .line 1740
            aload 8 /* existing */
            aload 6
            monitorexit
         7: areturn
        end local 8 // javax.management.NotificationListener existing
         8: .line 1742
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper java.util.WeakHashMap java.lang.ref.WeakReference
      StackMap stack:
            iload 4 /* create */
            ifeq 13
         9: .line 1743
            new java.lang.ref.WeakReference
            dup
            aload 5 /* wrapper */
            invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
            astore 7 /* ref */
        10: .line 1744
            aload 0 /* this */
            getfield com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.listenerWrappers:Ljava/util/WeakHashMap;
            aload 5 /* wrapper */
            aload 7 /* ref */
            invokevirtual java.util.WeakHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 1745
            aload 5 /* wrapper */
            aload 6
            monitorexit
        12: areturn
        13: .line 1747
      StackMap locals:
      StackMap stack:
            aload 6
            monitorexit
        14: aconst_null
            areturn
        end local 7 // java.lang.ref.WeakReference ref
        15: .line 1735
      StackMap locals: com.sun.jmx.interceptor.DefaultMBeanServerInterceptor javax.management.NotificationListener javax.management.ObjectName java.lang.Object int com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper java.util.WeakHashMap
      StackMap stack: java.lang.Throwable
            aload 6
            monitorexit
        16: athrow
        end local 5 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper wrapper
        end local 4 // boolean create
        end local 3 // java.lang.Object mbean
        end local 2 // javax.management.ObjectName name
        end local 1 // javax.management.NotificationListener l
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0      this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
            0   17     1         l  Ljavax/management/NotificationListener;
            0   17     2      name  Ljavax/management/ObjectName;
            0   17     3     mbean  Ljava/lang/Object;
            0   17     4    create  Z
            1   17     5   wrapper  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor$ListenerWrapper;
            3   15     7       ref  Ljava/lang/ref/WeakReference<Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor$ListenerWrapper;>;
            5    8     8  existing  Ljavax/management/NotificationListener;
      Exception table:
        from    to  target  type
           2     7      15  any
           8    12      15  any
          13    14      15  any
          15    16      15  any
    MethodParameters:
        Name  Flags
      l       
      name    
      mbean   
      create  

  private static java.lang.String getClassName(javax.management.DynamicMBean);
    descriptor: (Ljavax/management/DynamicMBean;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.DynamicMBean mbean
         0: .line 1820
            aload 0 /* mbean */
            instanceof com.sun.jmx.mbeanserver.DynamicMBean2
            ifeq 2
         1: .line 1821
            aload 0 /* mbean */
            checkcast com.sun.jmx.mbeanserver.DynamicMBean2
            invokeinterface com.sun.jmx.mbeanserver.DynamicMBean2.getClassName:()Ljava/lang/String;
            areturn
         2: .line 1823
      StackMap locals:
      StackMap stack:
            aload 0 /* mbean */
            invokeinterface javax.management.DynamicMBean.getMBeanInfo:()Ljavax/management/MBeanInfo;
            invokevirtual javax.management.MBeanInfo.getClassName:()Ljava/lang/String;
            areturn
        end local 0 // javax.management.DynamicMBean mbean
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  mbean  Ljavax/management/DynamicMBean;
    MethodParameters:
       Name  Flags
      mbean  

  private static void checkMBeanPermission(javax.management.DynamicMBean, java.lang.String, javax.management.ObjectName, java.lang.String);
    descriptor: (Ljavax/management/DynamicMBean;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // javax.management.DynamicMBean mbean
        start local 1 // java.lang.String member
        start local 2 // javax.management.ObjectName objectName
        start local 3 // java.lang.String actions
         0: .line 1830
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 4 /* sm */
        start local 4 // java.lang.SecurityManager sm
         1: .line 1831
            aload 4 /* sm */
            ifnull 7
         2: .line 1832
            aload 0 /* mbean */
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.safeGetClassName:(Ljavax/management/DynamicMBean;)Ljava/lang/String;
         3: .line 1833
            aload 1 /* member */
         4: .line 1834
            aload 2 /* objectName */
         5: .line 1835
            aload 3 /* actions */
         6: .line 1832
            invokestatic com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanPermission:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
         7: .line 1837
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            return
        end local 4 // java.lang.SecurityManager sm
        end local 3 // java.lang.String actions
        end local 2 // javax.management.ObjectName objectName
        end local 1 // java.lang.String member
        end local 0 // javax.management.DynamicMBean mbean
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0       mbean  Ljavax/management/DynamicMBean;
            0    8     1      member  Ljava/lang/String;
            0    8     2  objectName  Ljavax/management/ObjectName;
            0    8     3     actions  Ljava/lang/String;
            1    8     4          sm  Ljava/lang/SecurityManager;
    MethodParameters:
            Name  Flags
      mbean       
      member      
      objectName  
      actions     

  private static void checkMBeanPermission(java.lang.String, java.lang.String, javax.management.ObjectName, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // java.lang.String classname
        start local 1 // java.lang.String member
        start local 2 // javax.management.ObjectName objectName
        start local 3 // java.lang.String actions
         0: .line 1843
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 4 /* sm */
        start local 4 // java.lang.SecurityManager sm
         1: .line 1844
            aload 4 /* sm */
            ifnull 8
         2: .line 1845
            new javax.management.MBeanPermission
            dup
            aload 0 /* classname */
         3: .line 1846
            aload 1 /* member */
         4: .line 1847
            aload 2 /* objectName */
         5: .line 1848
            aload 3 /* actions */
         6: .line 1845
            invokespecial javax.management.MBeanPermission.<init>:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
            astore 5 /* perm */
        start local 5 // java.security.Permission perm
         7: .line 1849
            aload 4 /* sm */
            aload 5 /* perm */
            invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
        end local 5 // java.security.Permission perm
         8: .line 1851
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            return
        end local 4 // java.lang.SecurityManager sm
        end local 3 // java.lang.String actions
        end local 2 // javax.management.ObjectName objectName
        end local 1 // java.lang.String member
        end local 0 // java.lang.String classname
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0   classname  Ljava/lang/String;
            0    9     1      member  Ljava/lang/String;
            0    9     2  objectName  Ljavax/management/ObjectName;
            0    9     3     actions  Ljava/lang/String;
            1    9     4          sm  Ljava/lang/SecurityManager;
            7    8     5        perm  Ljava/security/Permission;
    MethodParameters:
            Name  Flags
      classname   
      member      
      objectName  
      actions     

  private static void checkMBeanTrustPermission(java.lang.Class);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // java.lang.Class theClass
         0: .line 1855
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 1 /* sm */
        start local 1 // java.lang.SecurityManager sm
         1: .line 1856
            aload 1 /* sm */
            ifnull 9
         2: .line 1857
            new javax.management.MBeanTrustPermission
            dup
            ldc "register"
            invokespecial javax.management.MBeanTrustPermission.<init>:(Ljava/lang/String;)V
            astore 2 /* perm */
        start local 2 // java.security.Permission perm
         3: .line 1859
            new com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$1
            dup
            aload 0 /* theClass */
            invokespecial com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$1.<init>:(Ljava/lang/Class;)V
         4: .line 1858
            astore 3 /* act */
        start local 3 // java.security.PrivilegedAction act
         5: .line 1864
            aload 3 /* act */
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.security.ProtectionDomain
            astore 4 /* pd */
        start local 4 // java.security.ProtectionDomain pd
         6: .line 1866
            new java.security.AccessControlContext
            dup
            iconst_1
            anewarray java.security.ProtectionDomain
            dup
            iconst_0
            aload 4 /* pd */
            aastore
            invokespecial java.security.AccessControlContext.<init>:([Ljava/security/ProtectionDomain;)V
         7: .line 1865
            astore 5 /* acc */
        start local 5 // java.security.AccessControlContext acc
         8: .line 1867
            aload 1 /* sm */
            aload 2 /* perm */
            aload 5 /* acc */
            invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;Ljava/lang/Object;)V
        end local 5 // java.security.AccessControlContext acc
        end local 4 // java.security.ProtectionDomain pd
        end local 3 // java.security.PrivilegedAction act
        end local 2 // java.security.Permission perm
         9: .line 1869
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            return
        end local 1 // java.lang.SecurityManager sm
        end local 0 // java.lang.Class theClass
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0  theClass  Ljava/lang/Class;
            1   10     1        sm  Ljava/lang/SecurityManager;
            3    9     2      perm  Ljava/security/Permission;
            5    9     3       act  Ljava/security/PrivilegedAction<Ljava/security/ProtectionDomain;>;
            6    9     4        pd  Ljava/security/ProtectionDomain;
            8    9     5       acc  Ljava/security/AccessControlContext;
    Exceptions:
      throws java.lang.SecurityException
    MethodParameters:
          Name  Flags
      theClass  final

  private com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository getInstantiatorCLR();
    descriptor: ()Lcom/sun/jmx/mbeanserver/ModifiableClassLoaderRepository;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
         0: .line 1872
            new com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$2
            dup
            aload 0 /* this */
            invokespecial com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$2.<init>:(Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository
            areturn
        end local 0 // com.sun.jmx.interceptor.DefaultMBeanServerInterceptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/interceptor/DefaultMBeanServerInterceptor;
}
SourceFile: "DefaultMBeanServerInterceptor.java"
NestMembers:
  com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$1  com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$2  com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper
InnerClasses:
  com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$1
  com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$2
  private ListenerWrapper = com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper of com.sun.jmx.interceptor.DefaultMBeanServerInterceptor