public class org.jruby.management.BeanManagerImpl implements org.jruby.management.BeanManager
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.management.BeanManagerImpl
  super_class: java.lang.Object
{
  private static final org.jruby.util.log.Logger LOG;
    descriptor: Lorg/jruby/util/log/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.text.SimpleDateFormat FORMAT;
    descriptor: Ljava/text/SimpleDateFormat;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public final java.lang.String base;
    descriptor: Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  private final boolean managementEnabled;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 25
            ldc Lorg/jruby/management/BeanManagerImpl;
            invokestatic org.jruby.util.log.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/jruby/util/log/Logger;
            putstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
         1: .line 27
            new java.text.SimpleDateFormat
            dup
            ldc "yyyyMMddHHmmssSSS"
            invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;)V
            putstatic org.jruby.management.BeanManagerImpl.FORMAT:Ljava/text/SimpleDateFormat;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.jruby.Ruby, boolean);
    descriptor: (Lorg/jruby/Ruby;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.management.BeanManagerImpl this
        start local 1 // org.jruby.Ruby ruby
        start local 2 // boolean managementEnabled
         0: .line 33
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 34
            aload 0 /* this */
            iload 2 /* managementEnabled */
            putfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
         2: .line 35
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "org.jruby:type=Runtime,name="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic org.jruby.management.BeanManagerImpl.FORMAT:Ljava/text/SimpleDateFormat;
            new java.util.Date
            dup
            invokespecial java.util.Date.<init>:()V
            invokevirtual java.text.SimpleDateFormat.format:(Ljava/util/Date;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 36
            aload 1 /* ruby */
            invokevirtual org.jruby.Ruby.getRuntimeNumber:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 35
            putfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
         5: .line 37
            return
        end local 2 // boolean managementEnabled
        end local 1 // org.jruby.Ruby ruby
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0               this  Lorg/jruby/management/BeanManagerImpl;
            0    6     1               ruby  Lorg/jruby/Ruby;
            0    6     2  managementEnabled  Z
    MethodParameters:
                   Name  Flags
      ruby               
      managementEnabled  

  public void register(org.jruby.compiler.JITCompilerMBean);
    descriptor: (Lorg/jruby/compiler/JITCompilerMBean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.management.BeanManagerImpl this
        start local 1 // org.jruby.compiler.JITCompilerMBean jitCompiler
         0: .line 40
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
            ifeq 1
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "service=JITCompiler"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* jitCompiler */
            invokevirtual org.jruby.management.BeanManagerImpl.register:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 41
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.compiler.JITCompilerMBean jitCompiler
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/jruby/management/BeanManagerImpl;
            0    2     1  jitCompiler  Lorg/jruby/compiler/JITCompilerMBean;
    MethodParameters:
             Name  Flags
      jitCompiler  

  public void register(org.jruby.management.ConfigMBean);
    descriptor: (Lorg/jruby/management/ConfigMBean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.management.BeanManagerImpl this
        start local 1 // org.jruby.management.ConfigMBean config
         0: .line 44
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
            ifeq 1
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "service=Config"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* config */
            invokevirtual org.jruby.management.BeanManagerImpl.register:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 45
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.management.ConfigMBean config
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/jruby/management/BeanManagerImpl;
            0    2     1  config  Lorg/jruby/management/ConfigMBean;
    MethodParameters:
        Name  Flags
      config  

  public void register(org.jruby.management.ParserStatsMBean);
    descriptor: (Lorg/jruby/management/ParserStatsMBean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.management.BeanManagerImpl this
        start local 1 // org.jruby.management.ParserStatsMBean parserStats
         0: .line 48
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
            ifeq 1
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "service=ParserStats"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* parserStats */
            invokevirtual org.jruby.management.BeanManagerImpl.register:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 49
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.management.ParserStatsMBean parserStats
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/jruby/management/BeanManagerImpl;
            0    2     1  parserStats  Lorg/jruby/management/ParserStatsMBean;
    MethodParameters:
             Name  Flags
      parserStats  

  public void register(org.jruby.management.CachesMBean);
    descriptor: (Lorg/jruby/management/CachesMBean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.management.BeanManagerImpl this
        start local 1 // org.jruby.management.CachesMBean caches
         0: .line 52
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
            ifeq 1
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "service=Caches"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* caches */
            invokevirtual org.jruby.management.BeanManagerImpl.register:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 53
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.management.CachesMBean caches
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/jruby/management/BeanManagerImpl;
            0    2     1  caches  Lorg/jruby/management/CachesMBean;
    MethodParameters:
        Name  Flags
      caches  

  public void register(org.jruby.management.Runtime);
    descriptor: (Lorg/jruby/management/Runtime;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.management.BeanManagerImpl this
        start local 1 // org.jruby.management.Runtime runtime
         0: .line 56
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
            ifeq 1
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "service=Runtime"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* runtime */
            invokevirtual org.jruby.management.BeanManagerImpl.register:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 57
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.management.Runtime runtime
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/management/BeanManagerImpl;
            0    2     1  runtime  Lorg/jruby/management/Runtime;
    MethodParameters:
         Name  Flags
      runtime  

  public void unregisterCompiler();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.management.BeanManagerImpl this
         0: .line 60
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
            ifeq 1
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "service=JITCompiler"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.management.BeanManagerImpl.unregister:(Ljava/lang/String;)V
         1: .line 61
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/management/BeanManagerImpl;

  public void unregisterConfig();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.management.BeanManagerImpl this
         0: .line 63
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
            ifeq 1
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "service=Config"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.management.BeanManagerImpl.unregister:(Ljava/lang/String;)V
         1: .line 64
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/management/BeanManagerImpl;

  public void unregisterParserStats();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.management.BeanManagerImpl this
         0: .line 66
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
            ifeq 1
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "service=ParserStats"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.management.BeanManagerImpl.unregister:(Ljava/lang/String;)V
         1: .line 67
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/management/BeanManagerImpl;

  public void unregisterMethodCache();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.management.BeanManagerImpl this
         0: .line 69
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
            ifeq 1
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "service=MethodCache"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.management.BeanManagerImpl.unregister:(Ljava/lang/String;)V
         1: .line 70
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/management/BeanManagerImpl;

  public void unregisterRuntime();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.management.BeanManagerImpl this
         0: .line 72
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.managementEnabled:Z
            ifeq 1
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.jruby.management.BeanManagerImpl.base:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "service=Runtime"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.management.BeanManagerImpl.unregister:(Ljava/lang/String;)V
         1: .line 73
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/management/BeanManagerImpl;

  public boolean tryShutdownAgent();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.jruby.management.BeanManagerImpl this
         0: .line 77
            ldc "sun.management.Agent"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* agent */
        start local 1 // java.lang.Class agent
         1: .line 78
            aload 1 /* agent */
            ldc "stopRemoteManagementAgent"
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 2 /* shutdown */
        start local 2 // java.lang.reflect.Method shutdown
         2: .line 79
            aload 2 /* shutdown */
            invokestatic org.jruby.javasupport.Java.trySetAccessible:(Ljava/lang/reflect/AccessibleObject;)Z
            pop
         3: .line 80
            aload 2 /* shutdown */
            aconst_null
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 81
            iconst_1
            ireturn
        end local 2 // java.lang.reflect.Method shutdown
        end local 1 // java.lang.Class agent
         5: .line 82
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         6: .line 83
            iconst_0
            ireturn
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lorg/jruby/management/BeanManagerImpl;
            1    5     1     agent  Ljava/lang/Class;
            2    5     2  shutdown  Ljava/lang/reflect/Method;
      Exception table:
        from    to  target  type
           0     4       5  Class java.lang.Exception

  public boolean tryRestartAgent();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.jruby.management.BeanManagerImpl this
         0: .line 89
            ldc "sun.management.Agent"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* agent */
        start local 1 // java.lang.Class agent
         1: .line 90
            aload 1 /* agent */
            ldc "startAgent"
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 2 /* start */
        start local 2 // java.lang.reflect.Method start
         2: .line 91
            aload 2 /* start */
            invokestatic org.jruby.javasupport.Java.trySetAccessible:(Ljava/lang/reflect/AccessibleObject;)Z
            pop
         3: .line 92
            aload 2 /* start */
            aconst_null
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 93
            iconst_1
            ireturn
        end local 2 // java.lang.reflect.Method start
        end local 1 // java.lang.Class agent
         5: .line 94
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         6: .line 95
            iconst_0
            ireturn
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/jruby/management/BeanManagerImpl;
            1    5     1  agent  Ljava/lang/Class;
            2    5     2  start  Ljava/lang/reflect/Method;
      Exception table:
        from    to  target  type
           0     4       5  Class java.lang.Exception

  private void register(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.jruby.management.BeanManagerImpl this
        start local 1 // java.lang.String name
        start local 2 // java.lang.Object bean
         0: .line 101
            invokestatic java.lang.management.ManagementFactory.getPlatformMBeanServer:()Ljavax/management/MBeanServer;
            astore 3 /* mbs */
        start local 3 // javax.management.MBeanServer mbs
         1: .line 103
            new javax.management.ObjectName
            dup
            aload 1 /* name */
            invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;)V
            astore 4 /* beanName */
        start local 4 // javax.management.ObjectName beanName
         2: .line 104
            aload 3 /* mbs */
            aload 2 /* bean */
            aload 4 /* beanName */
            invokeinterface javax.management.MBeanServer.registerMBean:(Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
            pop
        end local 4 // javax.management.ObjectName beanName
        end local 3 // javax.management.MBeanServer mbs
         3: .line 105
            goto 22
      StackMap locals:
      StackMap stack: javax.management.InstanceAlreadyExistsException
         4: pop
         5: .line 106
            getstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
            ldc "mbean already registered: {}"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            aastore
            invokeinterface org.jruby.util.log.Logger.warn:(Ljava/lang/String;[Ljava/lang/Object;)V
            goto 22
         6: .line 107
      StackMap locals:
      StackMap stack: javax.management.MBeanRegistrationException
            astore 3 /* ex */
        start local 3 // javax.management.MBeanRegistrationException ex
         7: .line 108
            getstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
            aload 3 /* ex */
            invokeinterface org.jruby.util.log.Logger.error:(Ljava/lang/Throwable;)V
        end local 3 // javax.management.MBeanRegistrationException ex
         8: goto 22
         9: .line 109
      StackMap locals:
      StackMap stack: javax.management.NotCompliantMBeanException
            astore 3 /* ex */
        start local 3 // javax.management.NotCompliantMBeanException ex
        10: .line 110
            getstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
            aload 3 /* ex */
            invokeinterface org.jruby.util.log.Logger.error:(Ljava/lang/Throwable;)V
        end local 3 // javax.management.NotCompliantMBeanException ex
        11: goto 22
        12: .line 111
      StackMap locals:
      StackMap stack: javax.management.MalformedObjectNameException
            astore 3 /* ex */
        start local 3 // javax.management.MalformedObjectNameException ex
        13: .line 112
            getstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
            aload 3 /* ex */
            invokeinterface org.jruby.util.log.Logger.error:(Ljava/lang/Throwable;)V
        end local 3 // javax.management.MalformedObjectNameException ex
        14: goto 22
        15: .line 113
      StackMap locals:
      StackMap stack: java.lang.NullPointerException
            astore 3 /* ex */
        start local 3 // java.lang.NullPointerException ex
        16: .line 114
            getstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
            aload 3 /* ex */
            invokeinterface org.jruby.util.log.Logger.error:(Ljava/lang/Throwable;)V
        end local 3 // java.lang.NullPointerException ex
        17: goto 22
        18: .line 115
      StackMap locals:
      StackMap stack: java.security.AccessControlException
            pop
            goto 22
        19: .line 118
      StackMap locals:
      StackMap stack: java.lang.SecurityException
            pop
            goto 22
        20: .line 121
      StackMap locals:
      StackMap stack: java.lang.Error
            astore 3 /* e */
        start local 3 // java.lang.Error e
        21: .line 124
            getstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
            aload 3 /* e */
            invokeinterface org.jruby.util.log.Logger.debug:(Ljava/lang/Throwable;)V
        end local 3 // java.lang.Error e
        22: .line 126
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object bean
        end local 1 // java.lang.String name
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   23     0      this  Lorg/jruby/management/BeanManagerImpl;
            0   23     1      name  Ljava/lang/String;
            0   23     2      bean  Ljava/lang/Object;
            1    3     3       mbs  Ljavax/management/MBeanServer;
            2    3     4  beanName  Ljavax/management/ObjectName;
            7    8     3        ex  Ljavax/management/MBeanRegistrationException;
           10   11     3        ex  Ljavax/management/NotCompliantMBeanException;
           13   14     3        ex  Ljavax/management/MalformedObjectNameException;
           16   17     3        ex  Ljava/lang/NullPointerException;
           21   22     3         e  Ljava/lang/Error;
      Exception table:
        from    to  target  type
           0     3       4  Class javax.management.InstanceAlreadyExistsException
           0     3       6  Class javax.management.MBeanRegistrationException
           0     3       9  Class javax.management.NotCompliantMBeanException
           0     3      12  Class javax.management.MalformedObjectNameException
           0     3      15  Class java.lang.NullPointerException
           0     3      18  Class java.security.AccessControlException
           0     3      19  Class java.lang.SecurityException
           0     3      20  Class java.lang.Error
    MethodParameters:
      Name  Flags
      name  
      bean  

  private void unregister(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.jruby.management.BeanManagerImpl this
        start local 1 // java.lang.String name
         0: .line 130
            invokestatic java.lang.management.ManagementFactory.getPlatformMBeanServer:()Ljavax/management/MBeanServer;
            astore 2 /* mbs */
        start local 2 // javax.management.MBeanServer mbs
         1: .line 132
            new javax.management.ObjectName
            dup
            aload 1 /* name */
            invokespecial javax.management.ObjectName.<init>:(Ljava/lang/String;)V
            astore 3 /* beanName */
        start local 3 // javax.management.ObjectName beanName
         2: .line 133
            aload 2 /* mbs */
            aload 3 /* beanName */
            invokeinterface javax.management.MBeanServer.unregisterMBean:(Ljavax/management/ObjectName;)V
        end local 3 // javax.management.ObjectName beanName
        end local 2 // javax.management.MBeanServer mbs
         3: .line 134
            goto 18
      StackMap locals:
      StackMap stack: javax.management.InstanceNotFoundException
         4: pop
            goto 18
         5: .line 135
      StackMap locals:
      StackMap stack: javax.management.MBeanRegistrationException
            astore 2 /* ex */
        start local 2 // javax.management.MBeanRegistrationException ex
         6: .line 136
            getstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
            aload 2 /* ex */
            invokeinterface org.jruby.util.log.Logger.error:(Ljava/lang/Throwable;)V
        end local 2 // javax.management.MBeanRegistrationException ex
         7: goto 18
         8: .line 137
      StackMap locals:
      StackMap stack: javax.management.MalformedObjectNameException
            astore 2 /* ex */
        start local 2 // javax.management.MalformedObjectNameException ex
         9: .line 138
            getstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
            aload 2 /* ex */
            invokeinterface org.jruby.util.log.Logger.error:(Ljava/lang/Throwable;)V
        end local 2 // javax.management.MalformedObjectNameException ex
        10: goto 18
        11: .line 139
      StackMap locals:
      StackMap stack: java.lang.NullPointerException
            astore 2 /* ex */
        start local 2 // java.lang.NullPointerException ex
        12: .line 140
            getstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
            aload 2 /* ex */
            invokeinterface org.jruby.util.log.Logger.error:(Ljava/lang/Throwable;)V
        end local 2 // java.lang.NullPointerException ex
        13: goto 18
        14: .line 141
      StackMap locals:
      StackMap stack: java.security.AccessControlException
            pop
            goto 18
        15: .line 144
      StackMap locals:
      StackMap stack: java.lang.SecurityException
            pop
            goto 18
        16: .line 147
      StackMap locals:
      StackMap stack: java.lang.Error
            astore 2 /* e */
        start local 2 // java.lang.Error e
        17: .line 150
            getstatic org.jruby.management.BeanManagerImpl.LOG:Lorg/jruby/util/log/Logger;
            aload 2 /* e */
            invokeinterface org.jruby.util.log.Logger.debug:(Ljava/lang/Throwable;)V
        end local 2 // java.lang.Error e
        18: .line 152
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String name
        end local 0 // org.jruby.management.BeanManagerImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      this  Lorg/jruby/management/BeanManagerImpl;
            0   19     1      name  Ljava/lang/String;
            1    3     2       mbs  Ljavax/management/MBeanServer;
            2    3     3  beanName  Ljavax/management/ObjectName;
            6    7     2        ex  Ljavax/management/MBeanRegistrationException;
            9   10     2        ex  Ljavax/management/MalformedObjectNameException;
           12   13     2        ex  Ljava/lang/NullPointerException;
           17   18     2         e  Ljava/lang/Error;
      Exception table:
        from    to  target  type
           0     3       4  Class javax.management.InstanceNotFoundException
           0     3       5  Class javax.management.MBeanRegistrationException
           0     3       8  Class javax.management.MalformedObjectNameException
           0     3      11  Class java.lang.NullPointerException
           0     3      14  Class java.security.AccessControlException
           0     3      15  Class java.lang.SecurityException
           0     3      16  Class java.lang.Error
    MethodParameters:
      Name  Flags
      name  
}
SourceFile: "BeanManagerImpl.java"