public class javax.management.remote.rmi.RMIConnector implements javax.management.remote.JMXConnector, java.io.Serializable, javax.management.remote.JMXAddressable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.management.remote.rmi.RMIConnector
  super_class: java.lang.Object
{
  private static final com.sun.jmx.remote.util.ClassLogger logger;
    descriptor: Lcom/sun/jmx/remote/util/ClassLogger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 817323035842634473

  private static final java.lang.String rmiServerImplStubClassName;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.Class<?> rmiServerImplStubClass;
    descriptor: Ljava/lang/Class;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/Class<*>;

  private static final java.lang.String rmiConnectionImplStubClassName;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.Class<?> rmiConnectionImplStubClass;
    descriptor: Ljava/lang/Class;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/Class<*>;

  private static final java.lang.String pRefClassName;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "com.sun.jmx.remote.internal.PRef"

  private static final java.lang.reflect.Constructor<?> proxyRefConstructor;
    descriptor: Ljava/lang/reflect/Constructor;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/reflect/Constructor<*>;

  private static final java.lang.String iiopConnectionStubClassName;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "org.omg.stub.javax.management.remote.rmi._RMIConnection_Stub"

  private static final java.lang.String proxyStubClassName;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "com.sun.jmx.remote.protocol.iiop.ProxyStub"

  private static final java.lang.String ProxyInputStreamClassName;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "com.sun.jmx.remote.protocol.iiop.ProxyInputStream"

  private static final java.lang.String pInputStreamClassName;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "com.sun.jmx.remote.protocol.iiop.PInputStream"

  private static final java.lang.Class<?> proxyStubClass;
    descriptor: Ljava/lang/Class;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/Class<*>;

  private static final byte[] base64ToInt;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final javax.management.remote.rmi.RMIServer rmiServer;
    descriptor: Ljavax/management/remote/rmi/RMIServer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javax.management.remote.JMXServiceURL jmxServiceURL;
    descriptor: Ljavax/management/remote/JMXServiceURL;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private transient java.util.Map<java.lang.String, java.lang.Object> env;
    descriptor: Ljava/util/Map;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;

  private transient java.lang.ClassLoader defaultClassLoader;
    descriptor: Ljava/lang/ClassLoader;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient javax.management.remote.rmi.RMIConnection connection;
    descriptor: Ljavax/management/remote/rmi/RMIConnection;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.String connectionId;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient long clientNotifSeqNo;
    descriptor: J
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.util.WeakHashMap<javax.security.auth.Subject, java.lang.ref.WeakReference<javax.management.MBeanServerConnection>> rmbscMap;
    descriptor: Ljava/util/WeakHashMap;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: Ljava/util/WeakHashMap<Ljavax/security/auth/Subject;Ljava/lang/ref/WeakReference<Ljavax/management/MBeanServerConnection;>;>;

  private transient java.lang.ref.WeakReference<javax.management.MBeanServerConnection> nullSubjectConnRef;
    descriptor: Ljava/lang/ref/WeakReference;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: Ljava/lang/ref/WeakReference<Ljavax/management/MBeanServerConnection;>;

  private transient javax.management.remote.rmi.RMIConnector$RMINotifClient rmiNotifClient;
    descriptor: Ljavax/management/remote/rmi/RMIConnector$RMINotifClient;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient long clientNotifCounter;
    descriptor: J
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient boolean connected;
    descriptor: Z
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient boolean terminated;
    descriptor: Z
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient java.lang.Exception closeException;
    descriptor: Ljava/lang/Exception;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

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

  private transient com.sun.jmx.remote.internal.ClientCommunicatorAdmin communicatorAdmin;
    descriptor: Lcom/sun/jmx/remote/internal/ClientCommunicatorAdmin;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private static volatile java.lang.ref.WeakReference<java.lang.Object> orb;
    descriptor: Ljava/lang/ref/WeakReference;
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE
    Signature: Ljava/lang/ref/WeakReference<Ljava/lang/Object;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=8, args_size=0
         0: .line 125
            new com.sun.jmx.remote.util.ClassLogger
            dup
            ldc "javax.management.remote.rmi"
            ldc "RMIConnector"
            invokespecial com.sun.jmx.remote.util.ClassLogger.<init>:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 124
            putstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
         2: .line 2091
            new java.lang.StringBuilder
            dup
            ldc Ljavax/management/remote/rmi/RMIServer;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "Impl_Stub"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 2090
            putstatic javax.management.remote.rmi.RMIConnector.rmiServerImplStubClassName:Ljava/lang/String;
         4: .line 2094
            new java.lang.StringBuilder
            dup
            ldc Ljavax/management/remote/rmi/RMIConnection;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "Impl_Stub"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 2093
            putstatic javax.management.remote.rmi.RMIConnector.rmiConnectionImplStubClassName:Ljava/lang/String;
         6: .line 2113
            ldc "\u00CA\u00FE\u00BA\u00BE\u0000\u0000\u0000.\u0000\u0017\n\u0000\u0005\u0000\r\t\u0000\u0004\u0000\u000E\u000B\u0000\u000F\u0000\u0010\u0007\u0000\u0011\u0007\u0000\u0012\u0001\u0000\u0006<init>\u0001\u0000\u001E(Ljava/rmi/server/RemoteRef;)V\u0001\u0000\u0004Code\u0001\u0000\u0006invoke\u0001\u0000S(Ljava/rmi/Remote;Ljava/lang/reflect/Method;[Ljava/lang/Object;J)Ljava/lang/Object;\u0001\u0000\nExceptions\u0007\u0000\u0013\f\u0000\u0006\u0000\u0007\f\u0000\u0014\u0000\u0015\u0007\u0000\u0016\f\u0000\t\u0000\n\u0001\u0000 com/sun/jmx/remote/internal/PRef\u0001\u0000$com/sun/jmx/remote/internal/ProxyRef\u0001\u0000\u0013java/lang/Exception\u0001\u0000\u0003ref\u0001\u0000\u001BLjava/rmi/server/RemoteRef;\u0001\u0000\u0019java/rmi/server/RemoteRef\u0000!\u0000\u0004\u0000\u0005\u0000\u0000\u0000\u0000\u0000\u0002\u0000\u0001\u0000\u0006\u0000\u0007\u0000\u0001\u0000\b\u0000\u0000\u0000\u0012\u0000\u0002\u0000\u0002\u0000\u0000\u0000\u0006*+\u00B7\u0000\u0001\u00B1\u0000\u0000\u0000\u0000\u0000\u0001\u0000\t\u0000\n\u0000\u0002\u0000\b\u0000\u0000\u0000\u001B\u0000\u0006\u0000\u0006\u0000\u0000\u0000\u000F*\u00B4\u0000\u0002+,-\u0016\u0004\u00B9\u0000\u0003\u0006\u0000\u00B0\u0000\u0000\u0000\u0000\u0000\u000B\u0000\u0000\u0000\u0004\u0000\u0001\u0000\f\u0000\u0000"
            invokestatic javax.management.remote.rmi.NoCallStackClassLoader.stringToBytes:(Ljava/lang/String;)[B
         7: .line 2112
            astore 0 /* pRefByteCode */
        start local 0 // byte[] pRefByteCode
         8: .line 2115
            new javax.management.remote.rmi.RMIConnector$1
            dup
            aload 0 /* pRefByteCode */
            invokespecial javax.management.remote.rmi.RMIConnector$1.<init>:([B)V
         9: .line 2114
            astore 1 /* action */
        start local 1 // java.security.PrivilegedExceptionAction action
        10: .line 2135
            getstatic javax.management.remote.rmi.RMIConnector.rmiServerImplStubClassName:Ljava/lang/String;
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 2 /* serverStubClass */
        start local 2 // java.lang.Class serverStubClass
        11: .line 2136
            goto 20
        end local 2 // java.lang.Class serverStubClass
      StackMap locals: byte[] java.security.PrivilegedExceptionAction
      StackMap stack: java.lang.Exception
        12: astore 3 /* e */
        start local 3 // java.lang.Exception e
        13: .line 2137
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "<clinit>"
        14: .line 2138
            new java.lang.StringBuilder
            dup
            ldc "Failed to instantiate "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        15: .line 2139
            getstatic javax.management.remote.rmi.RMIConnector.rmiServerImplStubClassName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        16: .line 2138
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 2137
            invokevirtual com.sun.jmx.remote.util.ClassLogger.error:(Ljava/lang/String;Ljava/lang/String;)V
        18: .line 2140
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "<clinit>"
            aload 3 /* e */
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/Throwable;)V
        19: .line 2141
            aconst_null
            astore 2 /* serverStubClass */
        end local 3 // java.lang.Exception e
        start local 2 // java.lang.Class serverStubClass
        20: .line 2143
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 2 /* serverStubClass */
            putstatic javax.management.remote.rmi.RMIConnector.rmiServerImplStubClass:Ljava/lang/Class;
        21: .line 2148
            getstatic javax.management.remote.rmi.RMIConnector.rmiConnectionImplStubClassName:Ljava/lang/String;
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 3 /* stubClass */
        start local 3 // java.lang.Class stubClass
        22: .line 2149
            aload 1 /* action */
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            checkcast java.lang.reflect.Constructor
            astore 4 /* constr */
        start local 4 // java.lang.reflect.Constructor constr
        23: .line 2150
            goto 33
        end local 4 // java.lang.reflect.Constructor constr
        end local 3 // java.lang.Class stubClass
      StackMap locals:
      StackMap stack: java.lang.Exception
        24: astore 5 /* e */
        start local 5 // java.lang.Exception e
        25: .line 2151
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "<clinit>"
        26: .line 2152
            new java.lang.StringBuilder
            dup
            ldc "Failed to initialize proxy reference constructor for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        27: .line 2153
            getstatic javax.management.remote.rmi.RMIConnector.rmiConnectionImplStubClassName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        28: .line 2152
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        29: .line 2151
            invokevirtual com.sun.jmx.remote.util.ClassLogger.error:(Ljava/lang/String;Ljava/lang/String;)V
        30: .line 2154
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "<clinit>"
            aload 5 /* e */
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/Throwable;)V
        31: .line 2155
            aconst_null
            astore 3 /* stubClass */
        start local 3 // java.lang.Class stubClass
        32: .line 2156
            aconst_null
            astore 4 /* constr */
        end local 5 // java.lang.Exception e
        start local 4 // java.lang.reflect.Constructor constr
        33: .line 2158
      StackMap locals: java.lang.Class java.lang.reflect.Constructor
      StackMap stack:
            aload 3 /* stubClass */
            putstatic javax.management.remote.rmi.RMIConnector.rmiConnectionImplStubClass:Ljava/lang/Class;
        34: .line 2159
            aload 4 /* constr */
            putstatic javax.management.remote.rmi.RMIConnector.proxyRefConstructor:Ljava/lang/reflect/Constructor;
        end local 4 // java.lang.reflect.Constructor constr
        end local 3 // java.lang.Class stubClass
        end local 2 // java.lang.Class serverStubClass
        end local 1 // java.security.PrivilegedExceptionAction action
        end local 0 // byte[] pRefByteCode
        35: .line 2343
            ldc "\u00CA\u00FE\u00BA\u00BE\u0000\u0000\u00003\u0000+\n\u0000\f\u0000\u0018\u0007\u0000\u0019\n\u0000\f\u0000\u001A\n\u0000\u0002\u0000\u001B\u0007\u0000\u001C\n\u0000\u0005\u0000\u001D\n\u0000\u0005\u0000\u001E\n\u0000\u0005\u0000\u001F\n\u0000\u0002\u0000 \n\u0000\f\u0000!\u0007\u0000\"\u0007\u0000#\u0001\u0000\u0006<init>\u0001\u0000\u0003()V\u0001\u0000\u0004Code\u0001\u0000\u0007_invoke\u0001\u0000K(Lorg/omg/CORBA/portable/OutputStream;)Lorg/omg/CORBA/portable/InputStream;\u0001\u0000\rStackMapTable\u0007\u0000\u001C\u0001\u0000\nExceptions\u0007\u0000$\u0001\u0000\r_releaseReply\u0001\u0000'(Lorg/omg/CORBA/portable/InputStream;)V\f\u0000\r\u0000\u000E\u0001\u0000-com/sun/jmx/remote/protocol/iiop/PInputStream\f\u0000\u0010\u0000\u0011\f\u0000\r\u0000\u0017\u0001\u0000+org/omg/CORBA/portable/ApplicationException\f\u0000%\u0000&\f\u0000'\u0000(\f\u0000\r\u0000)\f\u0000*\u0000&\f\u0000\u0016\u0000\u0017\u0001\u0000*com/sun/jmx/remote/protocol/iiop/ProxyStub\u0001\u0000<org/omg/stub/javax/management/remote/rmi/_RMIConnection_Stub\u0001\u0000)org/omg/CORBA/portable/RemarshalException\u0001\u0000\u000EgetInputStream\u0001\u0000&()Lorg/omg/CORBA/portable/InputStream;\u0001\u0000\u0005getId\u0001\u0000\u0014()Ljava/lang/String;\u0001\u00009(Ljava/lang/String;Lorg/omg/CORBA/portable/InputStream;)V\u0001\u0000\u0015getProxiedInputStream\u0000!\u0000\u000B\u0000\f\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0001\u0000\r\u0000\u000E\u0000\u0001\u0000\u000F\u0000\u0000\u0000\u0011\u0000\u0001\u0000\u0001\u0000\u0000\u0000\u0005*\u00B7\u0000\u0001\u00B1\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u0010\u0000\u0011\u0000\u0002\u0000\u000F\u0000\u0000\u0000G\u0000\u0004\u0000\u0004\u0000\u0000\u0000'\u00BB\u0000\u0002Y*+\u00B7\u0000\u0003\u00B7\u0000\u0004\u00B0M\u00BB\u0000\u0002Y,\u00B6\u0000\u0006\u00B7\u0000\u0004N\u00BB\u0000\u0005Y,\u00B6\u0000\u0007-\u00B7\u0000\b\u00BF\u0000\u0001\u0000\u0000\u0000\f\u0000\r\u0000\u0005\u0000\u0001\u0000\u0012\u0000\u0000\u0000\u0006\u0000\u0001M\u0007\u0000\u0013\u0000\u0014\u0000\u0000\u0000\u0006\u0000\u0002\u0000\u0005\u0000\u0015\u0000\u0001\u0000\u0016\u0000\u0017\u0000\u0001\u0000\u000F\u0000\u0000\u0000'\u0000\u0002\u0000\u0002\u0000\u0000\u0000\u0012+\u00C6\u0000\u000B+\u00C0\u0000\u0002\u00B6\u0000\tL*+\u00B7\u0000\n\u00B1\u0000\u0000\u0000\u0001\u0000\u0012\u0000\u0000\u0000\u0003\u0000\u0001\f\u0000\u0000"
            invokestatic javax.management.remote.rmi.NoCallStackClassLoader.stringToBytes:(Ljava/lang/String;)[B
        36: .line 2342
            astore 0 /* proxyStubByteCode */
        start local 0 // byte[] proxyStubByteCode
        37: .line 2345
            ldc "\u00CA\u00FE\u00BA\u00BE\u0000\u0000\u00003\u0000\u001E\n\u0000\u0007\u0000\u000F\t\u0000\u0006\u0000\u0010\n\u0000\u0011\u0000\u0012\n\u0000\u0006\u0000\u0013\n\u0000\u0014\u0000\u0015\u0007\u0000\u0016\u0007\u0000\u0017\u0001\u0000\u0006<init>\u0001\u0000'(Lorg/omg/CORBA/portable/InputStream;)V\u0001\u0000\u0004Code\u0001\u0000\bread_any\u0001\u0000\u0015()Lorg/omg/CORBA/Any;\u0001\u0000\nread_value\u0001\u0000)(Ljava/lang/Class;)Ljava/io/Serializable;\f\u0000\b\u0000\t\f\u0000\u0018\u0000\u0019\u0007\u0000\u001A\f\u0000\u000B\u0000\f\f\u0000\u001B\u0000\u001C\u0007\u0000\u001D\f\u0000\r\u0000\u000E\u0001\u0000-com/sun/jmx/remote/protocol/iiop/PInputStream\u0001\u00001com/sun/jmx/remote/protocol/iiop/ProxyInputStream\u0001\u0000\u0002in\u0001\u0000$Lorg/omg/CORBA/portable/InputStream;\u0001\u0000\"org/omg/CORBA/portable/InputStream\u0001\u0000\u0006narrow\u0001\u0000*()Lorg/omg/CORBA_2_3/portable/InputStream;\u0001\u0000&org/omg/CORBA_2_3/portable/InputStream\u0000!\u0000\u0006\u0000\u0007\u0000\u0000\u0000\u0000\u0000\u0003\u0000\u0001\u0000\b\u0000\t\u0000\u0001\u0000\n\u0000\u0000\u0000\u0012\u0000\u0002\u0000\u0002\u0000\u0000\u0000\u0006*+\u00B7\u0000\u0001\u00B1\u0000\u0000\u0000\u0000\u0000\u0001\u0000\u000B\u0000\f\u0000\u0001\u0000\n\u0000\u0000\u0000\u0014\u0000\u0001\u0000\u0001\u0000\u0000\u0000\b*\u00B4\u0000\u0002\u00B6\u0000\u0003\u00B0\u0000\u0000\u0000\u0000\u0000\u0001\u0000\r\u0000\u000E\u0000\u0001\u0000\n\u0000\u0000\u0000\u0015\u0000\u0002\u0000\u0002\u0000\u0000\u0000\t*\u00B6\u0000\u0004+\u00B6\u0000\u0005\u00B0\u0000\u0000\u0000\u0000\u0000\u0000"
            invokestatic javax.management.remote.rmi.NoCallStackClassLoader.stringToBytes:(Ljava/lang/String;)[B
        38: .line 2344
            astore 1 /* pInputStreamByteCode */
        start local 1 // byte[] pInputStreamByteCode
        39: .line 2346
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "com.sun.jmx.remote.protocol.iiop.ProxyStub"
            aastore
            dup
            iconst_1
            ldc "com.sun.jmx.remote.protocol.iiop.PInputStream"
            aastore
            astore 2 /* classNames */
        start local 2 // java.lang.String[] classNames
        40: .line 2347
            iconst_2
            anewarray byte[]
            dup
            iconst_0
            aload 0 /* proxyStubByteCode */
            aastore
            dup
            iconst_1
            aload 1 /* pInputStreamByteCode */
            aastore
            astore 3 /* byteCodes */
        start local 3 // byte[][] byteCodes
        41: .line 2348
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
        42: .line 2349
            ldc "org.omg.stub.javax.management.remote.rmi._RMIConnection_Stub"
            aastore
            dup
            iconst_1
        43: .line 2350
            ldc "com.sun.jmx.remote.protocol.iiop.ProxyInputStream"
            aastore
        44: .line 2348
            astore 4 /* otherClassNames */
        start local 4 // java.lang.String[] otherClassNames
        45: .line 2352
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.isAvailable:()Z
            ifeq 58
        46: .line 2354
            new javax.management.remote.rmi.RMIConnector$2
            dup
            aload 2 /* classNames */
            aload 3 /* byteCodes */
            aload 4 /* otherClassNames */
            invokespecial javax.management.remote.rmi.RMIConnector$2.<init>:([Ljava/lang/String;[[B[Ljava/lang/String;)V
        47: .line 2353
            astore 5 /* action */
        start local 5 // java.security.PrivilegedExceptionAction action
        48: .line 2371
            aload 5 /* action */
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            checkcast java.lang.Class
            astore 6 /* stubClass */
        start local 6 // java.lang.Class stubClass
        49: .line 2372
            goto 56
        end local 6 // java.lang.Class stubClass
      StackMap locals: byte[] byte[] java.lang.String[] byte[][] java.lang.String[] java.security.PrivilegedExceptionAction
      StackMap stack: java.lang.Exception
        50: astore 7 /* e */
        start local 7 // java.lang.Exception e
        51: .line 2373
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "<clinit>"
        52: .line 2374
            new java.lang.StringBuilder
            dup
            ldc "Unexpected exception making shadow IIOP stub class: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        53: .line 2373
            invokevirtual com.sun.jmx.remote.util.ClassLogger.error:(Ljava/lang/String;Ljava/lang/String;)V
        54: .line 2375
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "<clinit>"
            aload 7 /* e */
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/Throwable;)V
        55: .line 2376
            aconst_null
            astore 6 /* stubClass */
        end local 7 // java.lang.Exception e
        start local 6 // java.lang.Class stubClass
        56: .line 2378
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 6 /* stubClass */
            putstatic javax.management.remote.rmi.RMIConnector.proxyStubClass:Ljava/lang/Class;
        end local 6 // java.lang.Class stubClass
        end local 5 // java.security.PrivilegedExceptionAction action
        57: .line 2379
            goto 59
        58: .line 2380
      StackMap locals:
      StackMap stack:
            aconst_null
            putstatic javax.management.remote.rmi.RMIConnector.proxyStubClass:Ljava/lang/Class;
        end local 4 // java.lang.String[] otherClassNames
        end local 3 // byte[][] byteCodes
        end local 2 // java.lang.String[] classNames
        end local 1 // byte[] pInputStreamByteCode
        end local 0 // byte[] proxyStubByteCode
        59: .line 2499
      StackMap locals:
      StackMap stack:
            bipush 123
            newarray 8
            dup
            iconst_0
        60: .line 2500
            iconst_m1
            bastore
            dup
            iconst_1
            iconst_m1
            bastore
            dup
            iconst_2
            iconst_m1
            bastore
            dup
            iconst_3
            iconst_m1
            bastore
            dup
            iconst_4
            iconst_m1
            bastore
            dup
            iconst_5
            iconst_m1
            bastore
            dup
            bipush 6
            iconst_m1
            bastore
            dup
            bipush 7
            iconst_m1
            bastore
            dup
            bipush 8
            iconst_m1
            bastore
            dup
            bipush 9
            iconst_m1
            bastore
            dup
            bipush 10
            iconst_m1
            bastore
            dup
            bipush 11
            iconst_m1
            bastore
            dup
            bipush 12
            iconst_m1
            bastore
            dup
            bipush 13
            iconst_m1
            bastore
            dup
            bipush 14
            iconst_m1
            bastore
            dup
            bipush 15
            iconst_m1
            bastore
            dup
            bipush 16
            iconst_m1
            bastore
            dup
            bipush 17
        61: .line 2501
            iconst_m1
            bastore
            dup
            bipush 18
            iconst_m1
            bastore
            dup
            bipush 19
            iconst_m1
            bastore
            dup
            bipush 20
            iconst_m1
            bastore
            dup
            bipush 21
            iconst_m1
            bastore
            dup
            bipush 22
            iconst_m1
            bastore
            dup
            bipush 23
            iconst_m1
            bastore
            dup
            bipush 24
            iconst_m1
            bastore
            dup
            bipush 25
            iconst_m1
            bastore
            dup
            bipush 26
            iconst_m1
            bastore
            dup
            bipush 27
            iconst_m1
            bastore
            dup
            bipush 28
            iconst_m1
            bastore
            dup
            bipush 29
            iconst_m1
            bastore
            dup
            bipush 30
            iconst_m1
            bastore
            dup
            bipush 31
            iconst_m1
            bastore
            dup
            bipush 32
            iconst_m1
            bastore
            dup
            bipush 33
            iconst_m1
            bastore
            dup
            bipush 34
        62: .line 2502
            iconst_m1
            bastore
            dup
            bipush 35
            iconst_m1
            bastore
            dup
            bipush 36
            iconst_m1
            bastore
            dup
            bipush 37
            iconst_m1
            bastore
            dup
            bipush 38
            iconst_m1
            bastore
            dup
            bipush 39
            iconst_m1
            bastore
            dup
            bipush 40
            iconst_m1
            bastore
            dup
            bipush 41
            iconst_m1
            bastore
            dup
            bipush 42
            iconst_m1
            bastore
            dup
            bipush 43
            bipush 62
            bastore
            dup
            bipush 44
            iconst_m1
            bastore
            dup
            bipush 45
            iconst_m1
            bastore
            dup
            bipush 46
            iconst_m1
            bastore
            dup
            bipush 47
            bipush 63
            bastore
            dup
            bipush 48
            bipush 52
            bastore
            dup
            bipush 49
            bipush 53
            bastore
            dup
            bipush 50
            bipush 54
            bastore
            dup
            bipush 51
        63: .line 2503
            bipush 55
            bastore
            dup
            bipush 52
            bipush 56
            bastore
            dup
            bipush 53
            bipush 57
            bastore
            dup
            bipush 54
            bipush 58
            bastore
            dup
            bipush 55
            bipush 59
            bastore
            dup
            bipush 56
            bipush 60
            bastore
            dup
            bipush 57
            bipush 61
            bastore
            dup
            bipush 58
            iconst_m1
            bastore
            dup
            bipush 59
            iconst_m1
            bastore
            dup
            bipush 60
            iconst_m1
            bastore
            dup
            bipush 61
            iconst_m1
            bastore
            dup
            bipush 62
            iconst_m1
            bastore
            dup
            bipush 63
            iconst_m1
            bastore
            dup
            bipush 64
            iconst_m1
            bastore
            dup
            bipush 66
            iconst_1
            bastore
            dup
            bipush 67
            iconst_2
            bastore
            dup
            bipush 68
            iconst_3
            bastore
            dup
            bipush 69
            iconst_4
            bastore
            dup
            bipush 70
        64: .line 2504
            iconst_5
            bastore
            dup
            bipush 71
            bipush 6
            bastore
            dup
            bipush 72
            bipush 7
            bastore
            dup
            bipush 73
            bipush 8
            bastore
            dup
            bipush 74
            bipush 9
            bastore
            dup
            bipush 75
            bipush 10
            bastore
            dup
            bipush 76
            bipush 11
            bastore
            dup
            bipush 77
            bipush 12
            bastore
            dup
            bipush 78
            bipush 13
            bastore
            dup
            bipush 79
            bipush 14
            bastore
            dup
            bipush 80
            bipush 15
            bastore
            dup
            bipush 81
            bipush 16
            bastore
            dup
            bipush 82
            bipush 17
            bastore
            dup
            bipush 83
            bipush 18
            bastore
            dup
            bipush 84
            bipush 19
            bastore
            dup
            bipush 85
            bipush 20
            bastore
            dup
            bipush 86
            bipush 21
            bastore
            dup
            bipush 87
            bipush 22
            bastore
            dup
            bipush 88
            bipush 23
            bastore
            dup
            bipush 89
        65: .line 2505
            bipush 24
            bastore
            dup
            bipush 90
            bipush 25
            bastore
            dup
            bipush 91
            iconst_m1
            bastore
            dup
            bipush 92
            iconst_m1
            bastore
            dup
            bipush 93
            iconst_m1
            bastore
            dup
            bipush 94
            iconst_m1
            bastore
            dup
            bipush 95
            iconst_m1
            bastore
            dup
            bipush 96
            iconst_m1
            bastore
            dup
            bipush 97
            bipush 26
            bastore
            dup
            bipush 98
            bipush 27
            bastore
            dup
            bipush 99
            bipush 28
            bastore
            dup
            bipush 100
            bipush 29
            bastore
            dup
            bipush 101
            bipush 30
            bastore
            dup
            bipush 102
            bipush 31
            bastore
            dup
            bipush 103
            bipush 32
            bastore
            dup
            bipush 104
            bipush 33
            bastore
            dup
            bipush 105
            bipush 34
            bastore
            dup
            bipush 106
        66: .line 2506
            bipush 35
            bastore
            dup
            bipush 107
            bipush 36
            bastore
            dup
            bipush 108
            bipush 37
            bastore
            dup
            bipush 109
            bipush 38
            bastore
            dup
            bipush 110
            bipush 39
            bastore
            dup
            bipush 111
            bipush 40
            bastore
            dup
            bipush 112
            bipush 41
            bastore
            dup
            bipush 113
            bipush 42
            bastore
            dup
            bipush 114
            bipush 43
            bastore
            dup
            bipush 115
            bipush 44
            bastore
            dup
            bipush 116
            bipush 45
            bastore
            dup
            bipush 117
            bipush 46
            bastore
            dup
            bipush 118
            bipush 47
            bastore
            dup
            bipush 119
            bipush 48
            bastore
            dup
            bipush 120
            bipush 49
            bastore
            dup
            bipush 121
            bipush 50
            bastore
            dup
            bipush 122
            bipush 51
            bastore
        67: .line 2499
            putstatic javax.management.remote.rmi.RMIConnector.base64ToInt:[B
        68: .line 2596
            aconst_null
            putstatic javax.management.remote.rmi.RMIConnector.orb:Ljava/lang/ref/WeakReference;
            return
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            8   35     0          pRefByteCode  [B
           10   35     1                action  Ljava/security/PrivilegedExceptionAction<Ljava/lang/reflect/Constructor<*>;>;
           11   12     2       serverStubClass  Ljava/lang/Class<*>;
           20   35     2       serverStubClass  Ljava/lang/Class<*>;
           13   20     3                     e  Ljava/lang/Exception;
           22   24     3             stubClass  Ljava/lang/Class<*>;
           32   35     3             stubClass  Ljava/lang/Class<*>;
           23   24     4                constr  Ljava/lang/reflect/Constructor<*>;
           33   35     4                constr  Ljava/lang/reflect/Constructor<*>;
           25   33     5                     e  Ljava/lang/Exception;
           37   59     0     proxyStubByteCode  [B
           39   59     1  pInputStreamByteCode  [B
           40   59     2            classNames  [Ljava/lang/String;
           41   59     3             byteCodes  [[B
           45   59     4       otherClassNames  [Ljava/lang/String;
           48   57     5                action  Ljava/security/PrivilegedExceptionAction<Ljava/lang/Class<*>;>;
           49   50     6             stubClass  Ljava/lang/Class<*>;
           56   57     6             stubClass  Ljava/lang/Class<*>;
           51   56     7                     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          10    11      12  Class java.lang.Exception
          21    23      24  Class java.lang.Exception
          48    49      50  Class java.lang.Exception

  private void <init>(javax.management.remote.rmi.RMIServer, javax.management.remote.JMXServiceURL, java.util.Map<java.lang.String, ?>);
    descriptor: (Ljavax/management/remote/rmi/RMIServer;Ljavax/management/remote/JMXServiceURL;Ljava/util/Map;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.management.remote.rmi.RMIServer rmiServer
        start local 2 // javax.management.remote.JMXServiceURL address
        start local 3 // java.util.Map environment
         0: .line 129
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 2571
            aload 0 /* this */
            lconst_0
            putfield javax.management.remote.rmi.RMIConnector.clientNotifSeqNo:J
         2: .line 2574
            aload 0 /* this */
            aconst_null
            putfield javax.management.remote.rmi.RMIConnector.nullSubjectConnRef:Ljava/lang/ref/WeakReference;
         3: .line 2579
            aload 0 /* this */
            lconst_0
            putfield javax.management.remote.rmi.RMIConnector.clientNotifCounter:J
         4: .line 131
            aload 1 /* rmiServer */
            ifnonnull 7
            aload 2 /* address */
            ifnonnull 7
         5: .line 132
            new java.lang.IllegalArgumentException
            dup
            ldc "rmiServer and jmxServiceURL both null"
         6: .line 131
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 133
      StackMap locals: javax.management.remote.rmi.RMIConnector javax.management.remote.rmi.RMIServer javax.management.remote.JMXServiceURL java.util.Map
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.remote.rmi.RMIConnector.initTransients:()V
         8: .line 135
            aload 0 /* this */
            aload 1 /* rmiServer */
            putfield javax.management.remote.rmi.RMIConnector.rmiServer:Ljavax/management/remote/rmi/RMIServer;
         9: .line 136
            aload 0 /* this */
            aload 2 /* address */
            putfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
        10: .line 137
            aload 3 /* environment */
            ifnonnull 13
        11: .line 138
            aload 0 /* this */
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            putfield javax.management.remote.rmi.RMIConnector.env:Ljava/util/Map;
        12: .line 139
            goto 15
        13: .line 140
      StackMap locals:
      StackMap stack:
            aload 3 /* environment */
            invokestatic com.sun.jmx.remote.util.EnvHelp.checkAttributes:(Ljava/util/Map;)V
        14: .line 141
            aload 0 /* this */
            aload 3 /* environment */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putfield javax.management.remote.rmi.RMIConnector.env:Ljava/util/Map;
        15: .line 143
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.util.Map environment
        end local 2 // javax.management.remote.JMXServiceURL address
        end local 1 // javax.management.remote.rmi.RMIServer rmiServer
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Ljavax/management/remote/rmi/RMIConnector;
            0   16     1    rmiServer  Ljavax/management/remote/rmi/RMIServer;
            0   16     2      address  Ljavax/management/remote/JMXServiceURL;
            0   16     3  environment  Ljava/util/Map<Ljava/lang/String;*>;
    Signature: (Ljavax/management/remote/rmi/RMIServer;Ljavax/management/remote/JMXServiceURL;Ljava/util/Map<Ljava/lang/String;*>;)V
    MethodParameters:
             Name  Flags
      rmiServer    
      address      
      environment  

  public void <init>(javax.management.remote.JMXServiceURL, java.util.Map<java.lang.String, ?>);
    descriptor: (Ljavax/management/remote/JMXServiceURL;Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.management.remote.JMXServiceURL url
        start local 2 // java.util.Map environment
         0: .line 187
            aload 0 /* this */
            aconst_null
            aload 1 /* url */
            aload 2 /* environment */
            invokespecial javax.management.remote.rmi.RMIConnector.<init>:(Ljavax/management/remote/rmi/RMIServer;Ljavax/management/remote/JMXServiceURL;Ljava/util/Map;)V
         1: .line 188
            return
        end local 2 // java.util.Map environment
        end local 1 // javax.management.remote.JMXServiceURL url
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Ljavax/management/remote/rmi/RMIConnector;
            0    2     1          url  Ljavax/management/remote/JMXServiceURL;
            0    2     2  environment  Ljava/util/Map<Ljava/lang/String;*>;
    Signature: (Ljavax/management/remote/JMXServiceURL;Ljava/util/Map<Ljava/lang/String;*>;)V
    MethodParameters:
             Name  Flags
      url          
      environment  

  public void <init>(javax.management.remote.rmi.RMIServer, java.util.Map<java.lang.String, ?>);
    descriptor: (Ljavax/management/remote/rmi/RMIServer;Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.management.remote.rmi.RMIServer rmiServer
        start local 2 // java.util.Map environment
         0: .line 202
            aload 0 /* this */
            aload 1 /* rmiServer */
            aconst_null
            aload 2 /* environment */
            invokespecial javax.management.remote.rmi.RMIConnector.<init>:(Ljavax/management/remote/rmi/RMIServer;Ljavax/management/remote/JMXServiceURL;Ljava/util/Map;)V
         1: .line 203
            return
        end local 2 // java.util.Map environment
        end local 1 // javax.management.remote.rmi.RMIServer rmiServer
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Ljavax/management/remote/rmi/RMIConnector;
            0    2     1    rmiServer  Ljavax/management/remote/rmi/RMIServer;
            0    2     2  environment  Ljava/util/Map<Ljava/lang/String;*>;
    Signature: (Ljavax/management/remote/rmi/RMIServer;Ljava/util/Map<Ljava/lang/String;*>;)V
    MethodParameters:
             Name  Flags
      rmiServer    
      environment  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // javax.management.remote.rmi.RMIConnector this
         0: .line 216
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* b */
        start local 1 // java.lang.StringBuilder b
         1: .line 217
            aload 1 /* b */
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 218
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmiServer:Ljavax/management/remote/rmi/RMIServer;
            ifnull 4
         3: .line 219
            aload 1 /* b */
            ldc " rmiServer="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmiServer:Ljavax/management/remote/rmi/RMIServer;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 221
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
            ifnull 7
         5: .line 222
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmiServer:Ljavax/management/remote/rmi/RMIServer;
            ifnull 6
            aload 1 /* b */
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 223
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            ldc " jmxServiceURL="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
            invokevirtual javax.management.remote.JMXServiceURL.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 225
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder b
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljavax/management/remote/rmi/RMIConnector;
            1    8     1     b  Ljava/lang/StringBuilder;

  public javax.management.remote.JMXServiceURL getAddress();
    descriptor: ()Ljavax/management/remote/JMXServiceURL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.management.remote.rmi.RMIConnector this
         0: .line 237
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
            areturn
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/remote/rmi/RMIConnector;

  public void connect();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.management.remote.rmi.RMIConnector this
         0: .line 250
            aload 0 /* this */
            aconst_null
            invokevirtual javax.management.remote.rmi.RMIConnector.connect:(Ljava/util/Map;)V
         1: .line 251
            return
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/remote/rmi/RMIConnector;
    Exceptions:
      throws java.io.IOException

  public synchronized void connect(java.util.Map<java.lang.String, ?>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=12, locals=13, args_size=2
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // java.util.Map environment
         0: .line 260
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.traceOn:()Z
            istore 2 /* tracing */
        start local 2 // boolean tracing
         1: .line 261
            iload 2 /* tracing */
            ifeq 2
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual javax.management.remote.rmi.RMIConnector.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 3
      StackMap locals: int
      StackMap stack:
         2: aconst_null
      StackMap locals:
      StackMap stack: java.lang.String
         3: astore 3 /* idstr */
        start local 3 // java.lang.String idstr
         4: .line 263
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.terminated:Z
            ifeq 7
         5: .line 264
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " already closed."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
         6: .line 265
            new java.io.IOException
            dup
            ldc "Connector closed"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 267
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connected:Z
            ifeq 10
         8: .line 268
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " already connected."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
         9: .line 269
            return
        10: .line 273
      StackMap locals:
      StackMap stack:
            iload 2 /* tracing */
            ifeq 11
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " connecting..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        11: .line 276
      StackMap locals:
      StackMap stack:
            new java.util.HashMap
            dup
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.env:Ljava/util/Map;
            ifnonnull 13
        12: .line 277
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            goto 14
      StackMap locals: javax.management.remote.rmi.RMIConnector java.util.Map int java.lang.String
      StackMap stack: new 11 new 11
        13: aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.env:Ljava/util/Map;
        14: .line 276
      StackMap locals: javax.management.remote.rmi.RMIConnector java.util.Map int java.lang.String
      StackMap stack: new 11 new 11 java.util.Map
            invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
        15: .line 275
            astore 4 /* usemap */
        start local 4 // java.util.Map usemap
        16: .line 280
            aload 1 /* environment */
            ifnull 19
        17: .line 281
            aload 1 /* environment */
            invokestatic com.sun.jmx.remote.util.EnvHelp.checkAttributes:(Ljava/util/Map;)V
        18: .line 282
            aload 4 /* usemap */
            aload 1 /* environment */
            invokeinterface java.util.Map.putAll:(Ljava/util/Map;)V
        19: .line 286
      StackMap locals: java.util.Map
      StackMap stack:
            iload 2 /* tracing */
            ifeq 20
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " finding stub..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        20: .line 287
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmiServer:Ljavax/management/remote/rmi/RMIServer;
            ifnull 21
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmiServer:Ljavax/management/remote/rmi/RMIServer;
            goto 22
        21: .line 288
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
            aload 4 /* usemap */
            invokevirtual javax.management.remote.rmi.RMIConnector.findRMIServer:(Ljavax/management/remote/JMXServiceURL;Ljava/util/Map;)Ljavax/management/remote/rmi/RMIServer;
        22: .line 287
      StackMap locals:
      StackMap stack: javax.management.remote.rmi.RMIServer
            astore 5 /* stub */
        start local 5 // javax.management.remote.rmi.RMIServer stub
        23: .line 293
            aload 4 /* usemap */
            ldc "jmx.remote.x.check.stub"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* stringBoolean */
        start local 6 // java.lang.String stringBoolean
        24: .line 294
            aload 6 /* stringBoolean */
            invokestatic com.sun.jmx.remote.util.EnvHelp.computeBooleanFromString:(Ljava/lang/String;)Z
            istore 7 /* checkStub */
        start local 7 // boolean checkStub
        25: .line 296
            iload 7 /* checkStub */
            ifeq 26
            aload 5 /* stub */
            getstatic javax.management.remote.rmi.RMIConnector.rmiServerImplStubClass:Ljava/lang/Class;
            invokestatic javax.management.remote.rmi.RMIConnector.checkStub:(Ljava/rmi/Remote;Ljava/lang/Class;)V
        26: .line 299
      StackMap locals: javax.management.remote.rmi.RMIServer java.lang.String int
      StackMap stack:
            iload 2 /* tracing */
            ifeq 27
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " connecting stub..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        27: .line 300
      StackMap locals:
      StackMap stack:
            aload 5 /* stub */
            aload 4 /* usemap */
            invokestatic javax.management.remote.rmi.RMIConnector.connectStub:(Ljavax/management/remote/rmi/RMIServer;Ljava/util/Map;)Ljavax/management/remote/rmi/RMIServer;
            astore 5 /* stub */
        28: .line 301
            iload 2 /* tracing */
            ifeq 29
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual javax.management.remote.rmi.RMIConnector.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 30
      StackMap locals:
      StackMap stack:
        29: aconst_null
      StackMap locals:
      StackMap stack: java.lang.String
        30: astore 3 /* idstr */
        31: .line 304
            iload 2 /* tracing */
            ifeq 33
        32: .line 305
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " getting connection..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        33: .line 306
      StackMap locals:
      StackMap stack:
            aload 4 /* usemap */
            ldc "jmx.remote.credentials"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 8 /* credentials */
        start local 8 // java.lang.Object credentials
        34: .line 309
            aload 0 /* this */
            aload 5 /* stub */
            aload 8 /* credentials */
            iload 7 /* checkStub */
            invokestatic javax.management.remote.rmi.RMIConnector.getConnection:(Ljavax/management/remote/rmi/RMIServer;Ljava/lang/Object;Z)Ljavax/management/remote/rmi/RMIConnection;
            putfield javax.management.remote.rmi.RMIConnector.connection:Ljavax/management/remote/rmi/RMIConnection;
        35: .line 310
            goto 48
      StackMap locals: javax.management.remote.rmi.RMIConnector java.util.Map int java.lang.String java.util.Map javax.management.remote.rmi.RMIServer java.lang.String int java.lang.Object
      StackMap stack: java.rmi.RemoteException
        36: astore 9 /* re */
        start local 9 // java.rmi.RemoteException re
        37: .line 311
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
            ifnull 47
        38: .line 312
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
            invokevirtual javax.management.remote.JMXServiceURL.getProtocol:()Ljava/lang/String;
            astore 10 /* pro */
        start local 10 // java.lang.String pro
        39: .line 313
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
            invokevirtual javax.management.remote.JMXServiceURL.getURLPath:()Ljava/lang/String;
            astore 11 /* path */
        start local 11 // java.lang.String path
        40: .line 315
            ldc "rmi"
            aload 10 /* pro */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 47
        41: .line 316
            aload 11 /* path */
            ldc "/jndi/iiop:"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 47
        42: .line 317
            new java.net.MalformedURLException
            dup
        43: .line 318
            new java.lang.StringBuilder
            dup
            ldc "Protocol is rmi but JNDI scheme is iiop: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        44: .line 317
            invokespecial java.net.MalformedURLException.<init>:(Ljava/lang/String;)V
            astore 12 /* mfe */
        start local 12 // java.net.MalformedURLException mfe
        45: .line 319
            aload 12 /* mfe */
            aload 9 /* re */
            invokevirtual java.net.MalformedURLException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        46: .line 320
            aload 12 /* mfe */
            athrow
        end local 12 // java.net.MalformedURLException mfe
        end local 11 // java.lang.String path
        end local 10 // java.lang.String pro
        47: .line 323
      StackMap locals: java.rmi.RemoteException
      StackMap stack:
            aload 9 /* re */
            athrow
        end local 9 // java.rmi.RemoteException re
        48: .line 329
      StackMap locals:
      StackMap stack:
            iload 2 /* tracing */
            ifeq 50
        49: .line 330
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " getting class loader..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        50: .line 331
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* usemap */
            invokestatic com.sun.jmx.remote.util.EnvHelp.resolveClientClassLoader:(Ljava/util/Map;)Ljava/lang/ClassLoader;
            putfield javax.management.remote.rmi.RMIConnector.defaultClassLoader:Ljava/lang/ClassLoader;
        51: .line 333
            aload 4 /* usemap */
            ldc "jmx.remote.default.class.loader"
        52: .line 334
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.defaultClassLoader:Ljava/lang/ClassLoader;
        53: .line 333
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        54: .line 336
            aload 0 /* this */
            new javax.management.remote.rmi.RMIConnector$RMINotifClient
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.defaultClassLoader:Ljava/lang/ClassLoader;
            aload 4 /* usemap */
            invokespecial javax.management.remote.rmi.RMIConnector$RMINotifClient.<init>:(Ljavax/management/remote/rmi/RMIConnector;Ljava/lang/ClassLoader;Ljava/util/Map;)V
            putfield javax.management.remote.rmi.RMIConnector.rmiNotifClient:Ljavax/management/remote/rmi/RMIConnector$RMINotifClient;
        55: .line 338
            aload 0 /* this */
            aload 4 /* usemap */
            putfield javax.management.remote.rmi.RMIConnector.env:Ljava/util/Map;
        56: .line 339
            aload 4 /* usemap */
            invokestatic com.sun.jmx.remote.util.EnvHelp.getConnectionCheckPeriod:(Ljava/util/Map;)J
            lstore 9 /* checkPeriod */
        start local 9 // long checkPeriod
        57: .line 340
            aload 0 /* this */
            new javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin
            dup
            aload 0 /* this */
            lload 9 /* checkPeriod */
            invokespecial javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin.<init>:(Ljavax/management/remote/rmi/RMIConnector;J)V
            putfield javax.management.remote.rmi.RMIConnector.communicatorAdmin:Lcom/sun/jmx/remote/internal/ClientCommunicatorAdmin;
        58: .line 342
            aload 0 /* this */
            iconst_1
            putfield javax.management.remote.rmi.RMIConnector.connected:Z
        59: .line 347
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual javax.management.remote.rmi.RMIConnector.getConnectionId:()Ljava/lang/String;
            putfield javax.management.remote.rmi.RMIConnector.connectionId:Ljava/lang/String;
        60: .line 350
            new javax.management.remote.JMXConnectionNotification
            dup
            ldc "jmx.remote.connection.opened"
        61: .line 351
            aload 0 /* this */
        62: .line 352
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connectionId:Ljava/lang/String;
        63: .line 353
            aload 0 /* this */
            dup
            getfield javax.management.remote.rmi.RMIConnector.clientNotifSeqNo:J
            dup2_x1
            lconst_1
            ladd
            putfield javax.management.remote.rmi.RMIConnector.clientNotifSeqNo:J
        64: .line 354
            ldc "Successful connection"
        65: .line 355
            aconst_null
        66: .line 350
            invokespecial javax.management.remote.JMXConnectionNotification.<init>:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;JLjava/lang/String;Ljava/lang/Object;)V
        67: .line 349
            astore 11 /* connectedNotif */
        start local 11 // javax.management.Notification connectedNotif
        68: .line 356
            aload 0 /* this */
            aload 11 /* connectedNotif */
            invokevirtual javax.management.remote.rmi.RMIConnector.sendNotification:(Ljavax/management/Notification;)V
        69: .line 358
            iload 2 /* tracing */
            ifeq 83
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " done..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        end local 11 // javax.management.Notification connectedNotif
        end local 9 // long checkPeriod
        end local 8 // java.lang.Object credentials
        end local 7 // boolean checkStub
        end local 6 // java.lang.String stringBoolean
        end local 5 // javax.management.remote.rmi.RMIServer stub
        end local 4 // java.util.Map usemap
        70: .line 359
            goto 83
      StackMap locals: javax.management.remote.rmi.RMIConnector java.util.Map int java.lang.String
      StackMap stack: java.io.IOException
        71: astore 4 /* e */
        start local 4 // java.io.IOException e
        72: .line 360
            iload 2 /* tracing */
            ifeq 74
        73: .line 361
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " failed to connect: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        74: .line 362
      StackMap locals: java.io.IOException
      StackMap stack:
            aload 4 /* e */
            athrow
        end local 4 // java.io.IOException e
        75: .line 363
      StackMap locals: javax.management.remote.rmi.RMIConnector java.util.Map int java.lang.String
      StackMap stack: java.lang.RuntimeException
            astore 4 /* e */
        start local 4 // java.lang.RuntimeException e
        76: .line 364
            iload 2 /* tracing */
            ifeq 78
        77: .line 365
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " failed to connect: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        78: .line 366
      StackMap locals: java.lang.RuntimeException
      StackMap stack:
            aload 4 /* e */
            athrow
        end local 4 // java.lang.RuntimeException e
        79: .line 367
      StackMap locals: javax.management.remote.rmi.RMIConnector java.util.Map int java.lang.String
      StackMap stack: javax.naming.NamingException
            astore 4 /* e */
        start local 4 // javax.naming.NamingException e
        80: .line 368
            new java.lang.StringBuilder
            dup
            ldc "Failed to retrieve RMIServer stub: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* msg */
        start local 5 // java.lang.String msg
        81: .line 369
            iload 2 /* tracing */
            ifeq 82
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "connect"
            new java.lang.StringBuilder
            dup
            aload 3 /* idstr */
            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 5 /* msg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        82: .line 370
      StackMap locals: javax.naming.NamingException java.lang.String
      StackMap stack:
            new java.io.IOException
            dup
            aload 5 /* msg */
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            aload 4 /* e */
            invokestatic com.sun.jmx.remote.util.EnvHelp.initCause:(Ljava/lang/Throwable;Ljava/lang/Throwable;)Ljava/lang/Throwable;
            checkcast java.io.IOException
            athrow
        end local 5 // java.lang.String msg
        end local 4 // javax.naming.NamingException e
        83: .line 372
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String idstr
        end local 2 // boolean tracing
        end local 1 // java.util.Map environment
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   84     0            this  Ljavax/management/remote/rmi/RMIConnector;
            0   84     1     environment  Ljava/util/Map<Ljava/lang/String;*>;
            1   84     2         tracing  Z
            4   84     3           idstr  Ljava/lang/String;
           16   70     4          usemap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
           23   70     5            stub  Ljavax/management/remote/rmi/RMIServer;
           24   70     6   stringBoolean  Ljava/lang/String;
           25   70     7       checkStub  Z
           34   70     8     credentials  Ljava/lang/Object;
           37   48     9              re  Ljava/rmi/RemoteException;
           39   47    10             pro  Ljava/lang/String;
           40   47    11            path  Ljava/lang/String;
           45   47    12             mfe  Ljava/net/MalformedURLException;
           57   70     9     checkPeriod  J
           68   70    11  connectedNotif  Ljavax/management/Notification;
           72   75     4               e  Ljava/io/IOException;
           76   79     4               e  Ljava/lang/RuntimeException;
           80   83     4               e  Ljavax/naming/NamingException;
           81   83     5             msg  Ljava/lang/String;
      Exception table:
        from    to  target  type
          34    35      36  Class java.rmi.RemoteException
          10    70      71  Class java.io.IOException
          10    70      75  Class java.lang.RuntimeException
          10    70      79  Class javax.naming.NamingException
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/util/Map<Ljava/lang/String;*>;)V
    MethodParameters:
             Name  Flags
      environment  

  public synchronized java.lang.String getConnectionId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // javax.management.remote.rmi.RMIConnector this
         0: .line 375
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.terminated:Z
            ifne 1
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connected:Z
            ifne 6
         1: .line 376
      StackMap locals:
      StackMap stack:
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.traceOn:()Z
            ifeq 5
         2: .line 377
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "getConnectionId"
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual javax.management.remote.rmi.RMIConnector.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 378
            ldc "] not connected."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 377
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 380
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            ldc "Not connected"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 385
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connection:Ljavax/management/remote/rmi/RMIConnection;
            invokeinterface javax.management.remote.rmi.RMIConnection.getConnectionId:()Ljava/lang/String;
            areturn
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljavax/management/remote/rmi/RMIConnector;
    Exceptions:
      throws java.io.IOException

  public synchronized javax.management.MBeanServerConnection getMBeanServerConnection();
    descriptor: ()Ljavax/management/MBeanServerConnection;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.management.remote.rmi.RMIConnector this
         0: .line 390
            aload 0 /* this */
            aconst_null
            invokevirtual javax.management.remote.rmi.RMIConnector.getMBeanServerConnection:(Ljavax/security/auth/Subject;)Ljavax/management/MBeanServerConnection;
            areturn
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/management/remote/rmi/RMIConnector;
    Exceptions:
      throws java.io.IOException

  public synchronized javax.management.MBeanServerConnection getMBeanServerConnection(javax.security.auth.Subject);
    descriptor: (Ljavax/security/auth/Subject;)Ljavax/management/MBeanServerConnection;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.security.auth.Subject delegationSubject
         0: .line 397
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.terminated:Z
            ifeq 6
         1: .line 398
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.traceOn:()Z
            ifeq 5
         2: .line 399
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "getMBeanServerConnection"
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual javax.management.remote.rmi.RMIConnector.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 400
            ldc "] already closed."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 399
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 401
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            ldc "Connection closed"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 402
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connected:Z
            ifne 12
         7: .line 403
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.traceOn:()Z
            ifeq 11
         8: .line 404
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "getMBeanServerConnection"
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual javax.management.remote.rmi.RMIConnector.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 405
            ldc "] is not connected."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 404
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        11: .line 406
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            ldc "Not connected"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 409
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* delegationSubject */
            invokevirtual javax.management.remote.rmi.RMIConnector.getConnectionWithSubject:(Ljavax/security/auth/Subject;)Ljavax/management/MBeanServerConnection;
            areturn
        end local 1 // javax.security.auth.Subject delegationSubject
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   13     0               this  Ljavax/management/remote/rmi/RMIConnector;
            0   13     1  delegationSubject  Ljavax/security/auth/Subject;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                   Name  Flags
      delegationSubject  

  public void addConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object);
    descriptor: (Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.management.NotificationListener listener
        start local 2 // javax.management.NotificationFilter filter
        start local 3 // java.lang.Object handback
         0: .line 416
            aload 1 /* listener */
            ifnonnull 2
         1: .line 417
            new java.lang.NullPointerException
            dup
            ldc "listener"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 418
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connectionBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
            aload 1 /* listener */
            aload 2 /* filter */
         3: .line 419
            aload 3 /* handback */
         4: .line 418
            invokevirtual javax.management.NotificationBroadcasterSupport.addNotificationListener:(Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
         5: .line 420
            return
        end local 3 // java.lang.Object handback
        end local 2 // javax.management.NotificationFilter filter
        end local 1 // javax.management.NotificationListener listener
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljavax/management/remote/rmi/RMIConnector;
            0    6     1  listener  Ljavax/management/NotificationListener;
            0    6     2    filter  Ljavax/management/NotificationFilter;
            0    6     3  handback  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      listener  
      filter    
      handback  

  public void removeConnectionNotificationListener(javax.management.NotificationListener);
    descriptor: (Ljavax/management/NotificationListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.management.NotificationListener listener
         0: .line 425
            aload 1 /* listener */
            ifnonnull 2
         1: .line 426
            new java.lang.NullPointerException
            dup
            ldc "listener"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 427
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connectionBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
            aload 1 /* listener */
            invokevirtual javax.management.NotificationBroadcasterSupport.removeNotificationListener:(Ljavax/management/NotificationListener;)V
         3: .line 428
            return
        end local 1 // javax.management.NotificationListener listener
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljavax/management/remote/rmi/RMIConnector;
            0    4     1  listener  Ljavax/management/NotificationListener;
    Exceptions:
      throws javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      listener  

  public void removeConnectionNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object);
    descriptor: (Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.management.NotificationListener listener
        start local 2 // javax.management.NotificationFilter filter
        start local 3 // java.lang.Object handback
         0: .line 435
            aload 1 /* listener */
            ifnonnull 2
         1: .line 436
            new java.lang.NullPointerException
            dup
            ldc "listener"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 437
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connectionBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
            aload 1 /* listener */
            aload 2 /* filter */
         3: .line 438
            aload 3 /* handback */
         4: .line 437
            invokevirtual javax.management.NotificationBroadcasterSupport.removeNotificationListener:(Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
         5: .line 439
            return
        end local 3 // java.lang.Object handback
        end local 2 // javax.management.NotificationFilter filter
        end local 1 // javax.management.NotificationListener listener
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljavax/management/remote/rmi/RMIConnector;
            0    6     1  listener  Ljavax/management/NotificationListener;
            0    6     2    filter  Ljavax/management/NotificationFilter;
            0    6     3  handback  Ljava/lang/Object;
    Exceptions:
      throws javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      listener  
      filter    
      handback  

  private void sendNotification(javax.management.Notification);
    descriptor: (Ljavax/management/Notification;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.management.Notification n
         0: .line 442
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connectionBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
            aload 1 /* n */
            invokevirtual javax.management.NotificationBroadcasterSupport.sendNotification:(Ljavax/management/Notification;)V
         1: .line 443
            return
        end local 1 // javax.management.Notification n
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/remote/rmi/RMIConnector;
            0    2     1     n  Ljavax/management/Notification;
    MethodParameters:
      Name  Flags
      n     

  public synchronized void close();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.management.remote.rmi.RMIConnector this
         0: .line 446
            aload 0 /* this */
            iconst_0
            invokevirtual javax.management.remote.rmi.RMIConnector.close:(Z)V
         1: .line 447
            return
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/remote/rmi/RMIConnector;
    Exceptions:
      throws java.io.IOException

  private synchronized void close(boolean);
    descriptor: (Z)V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=12, locals=7, args_size=2
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // boolean intern
         0: .line 452
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.traceOn:()Z
            istore 2 /* tracing */
        start local 2 // boolean tracing
         1: .line 453
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debugOn:()Z
            istore 3 /* debug */
        start local 3 // boolean debug
         2: .line 454
            iload 2 /* tracing */
            ifeq 3
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual javax.management.remote.rmi.RMIConnector.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 4
      StackMap locals: int int
      StackMap stack:
         3: aconst_null
      StackMap locals:
      StackMap stack: java.lang.String
         4: astore 4 /* idstr */
        start local 4 // java.lang.String idstr
         5: .line 456
            iload 1 /* intern */
            ifne 11
         6: .line 459
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.terminated:Z
            ifeq 10
         7: .line 460
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            ifnonnull 11
         8: .line 461
            iload 2 /* tracing */
            ifeq 9
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            new java.lang.StringBuilder
            dup
            aload 4 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " already closed."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
         9: .line 462
      StackMap locals: java.lang.String
      StackMap stack:
            return
        10: .line 465
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield javax.management.remote.rmi.RMIConnector.terminated:Z
        11: .line 469
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            ifnull 15
            iload 2 /* tracing */
            ifeq 15
        12: .line 472
            iload 2 /* tracing */
            ifeq 15
        13: .line 473
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            new java.lang.StringBuilder
            dup
            aload 4 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " had failed: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        14: .line 474
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            new java.lang.StringBuilder
            dup
            aload 4 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " attempting to close again."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        15: .line 478
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* savedConnectionId */
        start local 5 // java.lang.String savedConnectionId
        16: .line 479
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connected:Z
            ifeq 18
        17: .line 480
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connectionId:Ljava/lang/String;
            astore 5 /* savedConnectionId */
        18: .line 483
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
        19: .line 485
            iload 2 /* tracing */
            ifeq 20
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            new java.lang.StringBuilder
            dup
            aload 4 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " closing."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        20: .line 487
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.communicatorAdmin:Lcom/sun/jmx/remote/internal/ClientCommunicatorAdmin;
            ifnull 22
        21: .line 488
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.communicatorAdmin:Lcom/sun/jmx/remote/internal/ClientCommunicatorAdmin;
            invokevirtual com.sun.jmx.remote.internal.ClientCommunicatorAdmin.terminate:()V
        22: .line 491
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmiNotifClient:Ljavax/management/remote/rmi/RMIConnector$RMINotifClient;
            ifnull 34
        23: .line 493
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmiNotifClient:Ljavax/management/remote/rmi/RMIConnector$RMINotifClient;
            invokevirtual javax.management.remote.rmi.RMIConnector$RMINotifClient.terminate:()V
        24: .line 494
            iload 2 /* tracing */
            ifeq 34
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            new java.lang.StringBuilder
            dup
            aload 4 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        25: .line 495
            ldc " RMI Notification client terminated."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        26: .line 494
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        27: .line 496
            goto 34
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
        28: astore 6 /* x */
        start local 6 // java.lang.RuntimeException x
        29: .line 497
            aload 0 /* this */
            aload 6 /* x */
            putfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
        30: .line 498
            iload 2 /* tracing */
            ifeq 33
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            new java.lang.StringBuilder
            dup
            aload 4 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        31: .line 499
            ldc " Failed to terminate RMI Notification client: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* x */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        32: .line 498
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        33: .line 500
      StackMap locals: java.lang.RuntimeException
      StackMap stack:
            iload 3 /* debug */
            ifeq 34
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            aload 6 /* x */
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 6 // java.lang.RuntimeException x
        34: .line 504
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connection:Ljavax/management/remote/rmi/RMIConnection;
            ifnull 45
        35: .line 506
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connection:Ljavax/management/remote/rmi/RMIConnection;
            invokeinterface javax.management.remote.rmi.RMIConnection.close:()V
        36: .line 507
            iload 2 /* tracing */
            ifeq 45
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            new java.lang.StringBuilder
            dup
            aload 4 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " closed."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        37: .line 508
            goto 45
      StackMap locals:
      StackMap stack: java.rmi.NoSuchObjectException
        38: pop
            goto 45
        39: .line 510
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 6 /* e */
        start local 6 // java.io.IOException e
        40: .line 511
            aload 0 /* this */
            aload 6 /* e */
            putfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
        41: .line 512
            iload 2 /* tracing */
            ifeq 44
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            new java.lang.StringBuilder
            dup
            aload 4 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        42: .line 513
            ldc " Failed to close RMIServer: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        43: .line 512
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        44: .line 514
      StackMap locals: java.io.IOException
      StackMap stack:
            iload 3 /* debug */
            ifeq 45
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            aload 6 /* e */
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 6 // java.io.IOException e
        45: .line 520
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmbscMap:Ljava/util/WeakHashMap;
            invokevirtual java.util.WeakHashMap.clear:()V
        46: .line 526
            aload 5 /* savedConnectionId */
            ifnull 56
        47: .line 528
            new javax.management.remote.JMXConnectionNotification
            dup
            ldc "jmx.remote.connection.closed"
        48: .line 529
            aload 0 /* this */
        49: .line 530
            aload 5 /* savedConnectionId */
        50: .line 531
            aload 0 /* this */
            dup
            getfield javax.management.remote.rmi.RMIConnector.clientNotifSeqNo:J
            dup2_x1
            lconst_1
            ladd
            putfield javax.management.remote.rmi.RMIConnector.clientNotifSeqNo:J
        51: .line 532
            ldc "Client has been closed"
        52: .line 533
            aconst_null
        53: .line 528
            invokespecial javax.management.remote.JMXConnectionNotification.<init>:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;JLjava/lang/String;Ljava/lang/Object;)V
        54: .line 527
            astore 6 /* closedNotif */
        start local 6 // javax.management.Notification closedNotif
        55: .line 534
            aload 0 /* this */
            aload 6 /* closedNotif */
            invokevirtual javax.management.remote.rmi.RMIConnector.sendNotification:(Ljavax/management/Notification;)V
        end local 6 // javax.management.Notification closedNotif
        56: .line 539
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            ifnull 67
        57: .line 540
            iload 2 /* tracing */
            ifeq 60
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "close"
            new java.lang.StringBuilder
            dup
            aload 4 /* idstr */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " failed to close: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        58: .line 541
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        59: .line 540
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        60: .line 542
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            instanceof java.io.IOException
            ifeq 62
        61: .line 543
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            checkcast java.io.IOException
            athrow
        62: .line 544
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            instanceof java.lang.RuntimeException
            ifeq 64
        63: .line 545
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            checkcast java.lang.RuntimeException
            athrow
        64: .line 547
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Failed to close: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
        65: .line 546
            astore 6 /* x */
        start local 6 // java.io.IOException x
        66: .line 548
            aload 6 /* x */
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.closeException:Ljava/lang/Exception;
            invokestatic com.sun.jmx.remote.util.EnvHelp.initCause:(Ljava/lang/Throwable;Ljava/lang/Throwable;)Ljava/lang/Throwable;
            checkcast java.io.IOException
            athrow
        end local 6 // java.io.IOException x
        67: .line 550
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.lang.String savedConnectionId
        end local 4 // java.lang.String idstr
        end local 3 // boolean debug
        end local 2 // boolean tracing
        end local 1 // boolean intern
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   68     0               this  Ljavax/management/remote/rmi/RMIConnector;
            0   68     1             intern  Z
            1   68     2            tracing  Z
            2   68     3              debug  Z
            5   68     4              idstr  Ljava/lang/String;
           16   68     5  savedConnectionId  Ljava/lang/String;
           29   34     6                  x  Ljava/lang/RuntimeException;
           40   45     6                  e  Ljava/io/IOException;
           55   56     6        closedNotif  Ljavax/management/Notification;
           66   67     6                  x  Ljava/io/IOException;
      Exception table:
        from    to  target  type
          23    27      28  Class java.lang.RuntimeException
          35    37      38  Class java.rmi.NoSuchObjectException
          35    37      39  Class java.io.IOException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      intern  

  private java.lang.Integer addListenerWithSubject(javax.management.ObjectName, java.rmi.MarshalledObject<javax.management.NotificationFilter>, javax.security.auth.Subject, boolean);
    descriptor: (Ljavax/management/ObjectName;Ljava/rmi/MarshalledObject;Ljavax/security/auth/Subject;Z)Ljava/lang/Integer;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=5
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.management.ObjectName name
        start local 2 // java.rmi.MarshalledObject filter
        start local 3 // javax.security.auth.Subject delegationSubject
        start local 4 // boolean reconnect
         0: .line 559
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debugOn:()Z
            istore 5 /* debug */
        start local 5 // boolean debug
         1: .line 560
            iload 5 /* debug */
            ifeq 5
         2: .line 561
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "addListenerWithSubject"
         3: .line 562
            ldc "(ObjectName,MarshalledObject,Subject)"
         4: .line 561
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 564
      StackMap locals: int
      StackMap stack:
            iconst_1
            anewarray javax.management.ObjectName
            dup
            iconst_0
            aload 1 /* name */
            aastore
            astore 6 /* names */
        start local 6 // javax.management.ObjectName[] names
         6: .line 566
            iconst_1
            anewarray java.rmi.MarshalledObject
            dup
            iconst_0
            aload 2 /* filter */
            aastore
            invokestatic com.sun.jmx.mbeanserver.Util.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.rmi.MarshalledObject[]
         7: .line 565
            astore 7 /* filters */
        start local 7 // java.rmi.MarshalledObject[] filters
         8: .line 567
            iconst_1
            anewarray javax.security.auth.Subject
            dup
            iconst_0
         9: .line 568
            aload 3 /* delegationSubject */
            aastore
        10: .line 567
            astore 8 /* delegationSubjects */
        start local 8 // javax.security.auth.Subject[] delegationSubjects
        11: .line 572
            aload 0 /* this */
            aload 6 /* names */
            aload 7 /* filters */
            aload 8 /* delegationSubjects */
        12: .line 573
            iload 4 /* reconnect */
        13: .line 572
            invokevirtual javax.management.remote.rmi.RMIConnector.addListenersWithSubjects:([Ljavax/management/ObjectName;[Ljava/rmi/MarshalledObject;[Ljavax/security/auth/Subject;Z)[Ljava/lang/Integer;
        14: .line 571
            astore 9 /* listenerIDs */
        start local 9 // java.lang.Integer[] listenerIDs
        15: .line 575
            iload 5 /* debug */
            ifeq 18
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "addListenerWithSubject"
            new java.lang.StringBuilder
            dup
            ldc "listenerID="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        16: .line 576
            aload 9 /* listenerIDs */
            iconst_0
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 575
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/String;)V
        18: .line 577
      StackMap locals: javax.management.remote.rmi.RMIConnector javax.management.ObjectName java.rmi.MarshalledObject javax.security.auth.Subject int int javax.management.ObjectName[] java.rmi.MarshalledObject[] javax.security.auth.Subject[] java.lang.Integer[]
      StackMap stack:
            aload 9 /* listenerIDs */
            iconst_0
            aaload
            areturn
        end local 9 // java.lang.Integer[] listenerIDs
        end local 8 // javax.security.auth.Subject[] delegationSubjects
        end local 7 // java.rmi.MarshalledObject[] filters
        end local 6 // javax.management.ObjectName[] names
        end local 5 // boolean debug
        end local 4 // boolean reconnect
        end local 3 // javax.security.auth.Subject delegationSubject
        end local 2 // java.rmi.MarshalledObject filter
        end local 1 // javax.management.ObjectName name
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   19     0                this  Ljavax/management/remote/rmi/RMIConnector;
            0   19     1                name  Ljavax/management/ObjectName;
            0   19     2              filter  Ljava/rmi/MarshalledObject<Ljavax/management/NotificationFilter;>;
            0   19     3   delegationSubject  Ljavax/security/auth/Subject;
            0   19     4           reconnect  Z
            1   19     5               debug  Z
            6   19     6               names  [Ljavax/management/ObjectName;
            8   19     7             filters  [Ljava/rmi/MarshalledObject;
           11   19     8  delegationSubjects  [Ljavax/security/auth/Subject;
           15   19     9         listenerIDs  [Ljava/lang/Integer;
    Exceptions:
      throws javax.management.InstanceNotFoundException, java.io.IOException
    Signature: (Ljavax/management/ObjectName;Ljava/rmi/MarshalledObject<Ljavax/management/NotificationFilter;>;Ljavax/security/auth/Subject;Z)Ljava/lang/Integer;
    MethodParameters:
                   Name  Flags
      name               
      filter             
      delegationSubject  
      reconnect          

  private java.lang.Integer[] addListenersWithSubjects(javax.management.ObjectName[], java.rmi.MarshalledObject<javax.management.NotificationFilter>[], javax.security.auth.Subject[], boolean);
    descriptor: ([Ljavax/management/ObjectName;[Ljava/rmi/MarshalledObject;[Ljavax/security/auth/Subject;Z)[Ljava/lang/Integer;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=5
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.management.ObjectName[] names
        start local 2 // java.rmi.MarshalledObject[] filters
        start local 3 // javax.security.auth.Subject[] delegationSubjects
        start local 4 // boolean reconnect
         0: .line 587
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debugOn:()Z
            istore 5 /* debug */
        start local 5 // boolean debug
         1: .line 588
            iload 5 /* debug */
            ifeq 5
         2: .line 589
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "addListenersWithSubjects"
         3: .line 590
            ldc "(ObjectName[],MarshalledObject[],Subject[])"
         4: .line 589
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 592
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.remote.rmi.RMIConnector.pushDefaultClassLoader:()Ljava/lang/ClassLoader;
            astore 6 /* old */
        start local 6 // java.lang.ClassLoader old
         6: .line 593
            aconst_null
            astore 7 /* listenerIDs */
        start local 7 // java.lang.Integer[] listenerIDs
         7: .line 596
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connection:Ljavax/management/remote/rmi/RMIConnection;
            aload 1 /* names */
         8: .line 597
            aload 2 /* filters */
         9: .line 598
            aload 3 /* delegationSubjects */
        10: .line 596
            invokeinterface javax.management.remote.rmi.RMIConnection.addNotificationListeners:([Ljavax/management/ObjectName;[Ljava/rmi/MarshalledObject;[Ljavax/security/auth/Subject;)[Ljava/lang/Integer;
            astore 7 /* listenerIDs */
        11: .line 599
            goto 28
      StackMap locals: javax.management.remote.rmi.RMIConnector javax.management.ObjectName[] java.rmi.MarshalledObject[] javax.security.auth.Subject[] int int java.lang.ClassLoader java.lang.Integer[]
      StackMap stack: java.rmi.NoSuchObjectException
        12: astore 8 /* noe */
        start local 8 // java.rmi.NoSuchObjectException noe
        13: .line 601
            iload 4 /* reconnect */
            ifeq 20
        14: .line 602
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.communicatorAdmin:Lcom/sun/jmx/remote/internal/ClientCommunicatorAdmin;
            aload 8 /* noe */
            invokevirtual com.sun.jmx.remote.internal.ClientCommunicatorAdmin.gotIOException:(Ljava/io/IOException;)V
        15: .line 604
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.connection:Ljavax/management/remote/rmi/RMIConnection;
            aload 1 /* names */
        16: .line 605
            aload 2 /* filters */
        17: .line 606
            aload 3 /* delegationSubjects */
        18: .line 604
            invokeinterface javax.management.remote.rmi.RMIConnection.addNotificationListeners:([Ljavax/management/ObjectName;[Ljava/rmi/MarshalledObject;[Ljavax/security/auth/Subject;)[Ljava/lang/Integer;
            astore 7 /* listenerIDs */
        19: .line 607
            goto 21
        20: .line 608
      StackMap locals: java.rmi.NoSuchObjectException
      StackMap stack:
            aload 8 /* noe */
            athrow
        end local 8 // java.rmi.NoSuchObjectException noe
        21: .line 614
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* old */
            invokevirtual javax.management.remote.rmi.RMIConnector.popDefaultClassLoader:(Ljava/lang/ClassLoader;)V
            goto 29
        22: .line 610
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 8 /* ioe */
        start local 8 // java.io.IOException ioe
        23: .line 612
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.communicatorAdmin:Lcom/sun/jmx/remote/internal/ClientCommunicatorAdmin;
            aload 8 /* ioe */
            invokevirtual com.sun.jmx.remote.internal.ClientCommunicatorAdmin.gotIOException:(Ljava/io/IOException;)V
        end local 8 // java.io.IOException ioe
        24: .line 614
            aload 0 /* this */
            aload 6 /* old */
            invokevirtual javax.management.remote.rmi.RMIConnector.popDefaultClassLoader:(Ljava/lang/ClassLoader;)V
            goto 29
        25: .line 613
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 9
        26: .line 614
            aload 0 /* this */
            aload 6 /* old */
            invokevirtual javax.management.remote.rmi.RMIConnector.popDefaultClassLoader:(Ljava/lang/ClassLoader;)V
        27: .line 615
            aload 9
            athrow
        28: .line 614
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* old */
            invokevirtual javax.management.remote.rmi.RMIConnector.popDefaultClassLoader:(Ljava/lang/ClassLoader;)V
        29: .line 617
      StackMap locals:
      StackMap stack:
            iload 5 /* debug */
            ifeq 35
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "addListenersWithSubjects"
            new java.lang.StringBuilder
            dup
            ldc "registered "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        30: .line 618
            aload 7 /* listenerIDs */
            ifnonnull 31
            iconst_0
            goto 32
      StackMap locals: javax.management.remote.rmi.RMIConnector javax.management.ObjectName[] java.rmi.MarshalledObject[] javax.security.auth.Subject[] int int java.lang.ClassLoader java.lang.Integer[]
      StackMap stack: com.sun.jmx.remote.util.ClassLogger java.lang.String java.lang.StringBuilder
        31: aload 7 /* listenerIDs */
            arraylength
      StackMap locals: javax.management.remote.rmi.RMIConnector javax.management.ObjectName[] java.rmi.MarshalledObject[] javax.security.auth.Subject[] int int java.lang.ClassLoader java.lang.Integer[]
      StackMap stack: com.sun.jmx.remote.util.ClassLogger java.lang.String java.lang.StringBuilder int
        32: invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        33: .line 619
            ldc " listener(s)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        34: .line 617
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/String;)V
        35: .line 620
      StackMap locals:
      StackMap stack:
            aload 7 /* listenerIDs */
            areturn
        end local 7 // java.lang.Integer[] listenerIDs
        end local 6 // java.lang.ClassLoader old
        end local 5 // boolean debug
        end local 4 // boolean reconnect
        end local 3 // javax.security.auth.Subject[] delegationSubjects
        end local 2 // java.rmi.MarshalledObject[] filters
        end local 1 // javax.management.ObjectName[] names
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   36     0                this  Ljavax/management/remote/rmi/RMIConnector;
            0   36     1               names  [Ljavax/management/ObjectName;
            0   36     2             filters  [Ljava/rmi/MarshalledObject;
            0   36     3  delegationSubjects  [Ljavax/security/auth/Subject;
            0   36     4           reconnect  Z
            1   36     5               debug  Z
            6   36     6                 old  Ljava/lang/ClassLoader;
            7   36     7         listenerIDs  [Ljava/lang/Integer;
           13   21     8                 noe  Ljava/rmi/NoSuchObjectException;
           23   24     8                 ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           7    11      12  Class java.rmi.NoSuchObjectException
           7    11      22  Class java.io.IOException
           7    21      25  any
          22    24      25  any
    Exceptions:
      throws javax.management.InstanceNotFoundException, java.io.IOException
    Signature: ([Ljavax/management/ObjectName;[Ljava/rmi/MarshalledObject<Ljavax/management/NotificationFilter;>;[Ljavax/security/auth/Subject;Z)[Ljava/lang/Integer;
    MethodParameters:
                    Name  Flags
      names               
      filters             
      delegationSubjects  
      reconnect           

  static javax.management.remote.rmi.RMIServer connectStub(javax.management.remote.rmi.RMIServer, java.util.Map<java.lang.String, ?>);
    descriptor: (Ljavax/management/remote/rmi/RMIServer;Ljava/util/Map;)Ljavax/management/remote/rmi/RMIServer;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.management.remote.rmi.RMIServer rmiServer
        start local 1 // java.util.Map environment
         0: .line 1713
            aload 0 /* rmiServer */
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.isStub:(Ljava/lang/Object;)Z
            ifeq 5
         1: .line 1715
            aload 0 /* rmiServer */
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.getOrb:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 1716
            goto 5
      StackMap locals:
      StackMap stack: java.lang.UnsupportedOperationException
         3: pop
         4: .line 1718
            aload 0 /* rmiServer */
            aload 1 /* environment */
            invokestatic javax.management.remote.rmi.RMIConnector.resolveOrb:(Ljava/util/Map;)Ljava/lang/Object;
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.connect:(Ljava/lang/Object;Ljava/lang/Object;)V
         5: .line 1721
      StackMap locals:
      StackMap stack:
            aload 0 /* rmiServer */
            areturn
        end local 1 // java.util.Map environment
        end local 0 // javax.management.remote.rmi.RMIServer rmiServer
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0    rmiServer  Ljavax/management/remote/rmi/RMIServer;
            0    6     1  environment  Ljava/util/Map<Ljava/lang/String;*>;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.UnsupportedOperationException
    Exceptions:
      throws java.io.IOException
    Signature: (Ljavax/management/remote/rmi/RMIServer;Ljava/util/Map<Ljava/lang/String;*>;)Ljavax/management/remote/rmi/RMIServer;
    MethodParameters:
             Name  Flags
      rmiServer    
      environment  

  static  resolveOrb(java.util.Map<java.lang.String, ?>);
    descriptor: (Ljava/util/Map;)Ljava/lang/Object;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.util.Map environment
         0: .line 1747
            aload 0 /* environment */
            ifnull 5
         1: .line 1748
            aload 0 /* environment */
            ldc "java.naming.corba.orb"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 1 /* orb */
        start local 1 // java.lang.Object orb
         2: .line 1749
            aload 1 /* orb */
            ifnull 4
            aload 1 /* orb */
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.isOrb:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 1750
            new java.lang.IllegalArgumentException
            dup
            ldc "java.naming.corba.orb must be an instance of org.omg.CORBA.ORB."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1752
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1 /* orb */
            ifnull 5
            aload 1 /* orb */
            areturn
        end local 1 // java.lang.Object orb
         5: .line 1755
      StackMap locals:
      StackMap stack:
            getstatic javax.management.remote.rmi.RMIConnector.orb:Ljava/lang/ref/WeakReference;
            ifnonnull 6
            aconst_null
            goto 7
      StackMap locals:
      StackMap stack:
         6: getstatic javax.management.remote.rmi.RMIConnector.orb:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
         7: .line 1754
      StackMap locals:
      StackMap stack: java.lang.Object
            astore 1 /* orb */
        start local 1 // java.lang.Object orb
         8: .line 1756
            aload 1 /* orb */
            ifnull 9
            aload 1 /* orb */
            areturn
         9: .line 1759
      StackMap locals: java.lang.Object
      StackMap stack:
            aconst_null
            aconst_null
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.createOrb:([Ljava/lang/String;Ljava/util/Properties;)Ljava/lang/Object;
        10: .line 1758
            astore 2 /* newOrb */
        start local 2 // java.lang.Object newOrb
        11: .line 1760
            new java.lang.ref.WeakReference
            dup
            aload 2 /* newOrb */
            invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
            putstatic javax.management.remote.rmi.RMIConnector.orb:Ljava/lang/ref/WeakReference;
        12: .line 1761
            aload 2 /* newOrb */
            areturn
        end local 2 // java.lang.Object newOrb
        end local 1 // java.lang.Object orb
        end local 0 // java.util.Map environment
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0  environment  Ljava/util/Map<Ljava/lang/String;*>;
            2    5     1          orb  Ljava/lang/Object;
            8   13     1          orb  Ljava/lang/Object;
           11   13     2       newOrb  Ljava/lang/Object;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/util/Map<Ljava/lang/String;*>;)Ljava/lang/Object;
    MethodParameters:
             Name  Flags
      environment  

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // java.io.ObjectInputStream s
         0: .line 1777
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 1779
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmiServer:Ljavax/management/remote/rmi/RMIServer;
            ifnonnull 4
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
            ifnonnull 4
         2: .line 1780
            new java.io.InvalidObjectException
            dup
            ldc "rmiServer and jmxServiceURL both null"
         3: .line 1779
            invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1782
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javax.management.remote.rmi.RMIConnector.initTransients:()V
         5: .line 1783
            return
        end local 1 // java.io.ObjectInputStream s
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavax/management/remote/rmi/RMIConnector;
            0    6     1     s  Ljava/io/ObjectInputStream;
    Exceptions:
      throws java.io.IOException, java.lang.ClassNotFoundException
    MethodParameters:
      Name  Flags
      s     

  private void writeObject(java.io.ObjectOutputStream);
    descriptor: (Ljava/io/ObjectOutputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // java.io.ObjectOutputStream s
         0: .line 1818
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmiServer:Ljavax/management/remote/rmi/RMIServer;
            ifnonnull 3
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.jmxServiceURL:Ljavax/management/remote/JMXServiceURL;
            ifnonnull 3
         1: .line 1819
            new java.io.InvalidObjectException
            dup
            ldc "rmiServer and jmxServiceURL both null."
         2: .line 1818
            invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1820
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmiServer:Ljavax/management/remote/rmi/RMIServer;
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.env:Ljava/util/Map;
            invokestatic javax.management.remote.rmi.RMIConnector.connectStub:(Ljavax/management/remote/rmi/RMIServer;Ljava/util/Map;)Ljavax/management/remote/rmi/RMIServer;
            pop
         4: .line 1821
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
         5: .line 1822
            return
        end local 1 // java.io.ObjectOutputStream s
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavax/management/remote/rmi/RMIConnector;
            0    6     1     s  Ljava/io/ObjectOutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  private void initTransients();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.management.remote.rmi.RMIConnector this
         0: .line 1826
            aload 0 /* this */
            new java.util.WeakHashMap
            dup
            invokespecial java.util.WeakHashMap.<init>:()V
            putfield javax.management.remote.rmi.RMIConnector.rmbscMap:Ljava/util/WeakHashMap;
         1: .line 1827
            aload 0 /* this */
            iconst_0
            putfield javax.management.remote.rmi.RMIConnector.connected:Z
         2: .line 1828
            aload 0 /* this */
            iconst_0
            putfield javax.management.remote.rmi.RMIConnector.terminated:Z
         3: .line 1830
            aload 0 /* this */
            new javax.management.NotificationBroadcasterSupport
            dup
            invokespecial javax.management.NotificationBroadcasterSupport.<init>:()V
            putfield javax.management.remote.rmi.RMIConnector.connectionBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
         4: .line 1831
            return
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavax/management/remote/rmi/RMIConnector;

  private static void checkStub(java.rmi.Remote, java.lang.Class<?>);
    descriptor: (Ljava/rmi/Remote;Ljava/lang/Class;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.rmi.Remote stub
        start local 1 // java.lang.Class stubClass
         0: .line 1842
            aload 0 /* stub */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* stubClass */
            if_acmpeq 14
         1: .line 1843
            aload 0 /* stub */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic java.lang.reflect.Proxy.isProxyClass:(Ljava/lang/Class;)Z
            ifne 5
         2: .line 1844
            new java.lang.SecurityException
            dup
         3: .line 1845
            new java.lang.StringBuilder
            dup
            ldc "Expecting a "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* stubClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " stub!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 1844
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 1847
      StackMap locals:
      StackMap stack:
            aload 0 /* stub */
            invokestatic java.lang.reflect.Proxy.getInvocationHandler:(Ljava/lang/Object;)Ljava/lang/reflect/InvocationHandler;
            astore 2 /* handler */
        start local 2 // java.lang.reflect.InvocationHandler handler
         6: .line 1848
            aload 2 /* handler */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljava/rmi/server/RemoteObjectInvocationHandler;
            if_acmpeq 13
         7: .line 1849
            new java.lang.SecurityException
            dup
         8: .line 1850
            new java.lang.StringBuilder
            dup
            ldc "Expecting a dynamic proxy instance with a "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         9: .line 1851
            ldc Ljava/rmi/server/RemoteObjectInvocationHandler;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 1852
            ldc " invocation handler!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 1850
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        12: .line 1849
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 1854
      StackMap locals: java.lang.reflect.InvocationHandler
      StackMap stack:
            aload 2 /* handler */
            checkcast java.rmi.Remote
            astore 0 /* stub */
        end local 2 // java.lang.reflect.InvocationHandler handler
        14: .line 1861
      StackMap locals:
      StackMap stack:
            aload 0 /* stub */
            checkcast java.rmi.server.RemoteObject
            invokevirtual java.rmi.server.RemoteObject.getRef:()Ljava/rmi/server/RemoteRef;
            astore 2 /* ref */
        start local 2 // java.rmi.server.RemoteRef ref
        15: .line 1862
            aload 2 /* ref */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Lsun/rmi/server/UnicastRef2;
            if_acmpeq 21
        16: .line 1863
            new java.lang.SecurityException
            dup
        17: .line 1864
            new java.lang.StringBuilder
            dup
            ldc "Expecting a "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc Lsun/rmi/server/UnicastRef2;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        18: .line 1865
            ldc " remote reference in stub!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        19: .line 1864
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        20: .line 1863
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 1870
      StackMap locals: java.rmi.server.RemoteRef
      StackMap stack:
            aload 2 /* ref */
            checkcast sun.rmi.server.UnicastRef2
            invokevirtual sun.rmi.server.UnicastRef2.getLiveRef:()Lsun/rmi/transport/LiveRef;
            astore 3 /* liveRef */
        start local 3 // sun.rmi.transport.LiveRef liveRef
        22: .line 1871
            aload 3 /* liveRef */
            invokevirtual sun.rmi.transport.LiveRef.getClientSocketFactory:()Ljava/rmi/server/RMIClientSocketFactory;
            astore 4 /* csf */
        start local 4 // java.rmi.server.RMIClientSocketFactory csf
        23: .line 1872
            aload 4 /* csf */
            ifnull 24
            aload 4 /* csf */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Ljavax/rmi/ssl/SslRMIClientSocketFactory;
            if_acmpeq 29
        24: .line 1873
      StackMap locals: sun.rmi.transport.LiveRef java.rmi.server.RMIClientSocketFactory
      StackMap stack:
            new java.lang.SecurityException
            dup
        25: .line 1874
            new java.lang.StringBuilder
            dup
            ldc "Expecting a "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc Ljavax/rmi/ssl/SslRMIClientSocketFactory;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        26: .line 1875
            ldc " RMI client socket factory in stub!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        27: .line 1874
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        28: .line 1873
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        29: .line 1876
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.rmi.server.RMIClientSocketFactory csf
        end local 3 // sun.rmi.transport.LiveRef liveRef
        end local 2 // java.rmi.server.RemoteRef ref
        end local 1 // java.lang.Class stubClass
        end local 0 // java.rmi.Remote stub
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   30     0       stub  Ljava/rmi/Remote;
            0   30     1  stubClass  Ljava/lang/Class<*>;
            6   14     2    handler  Ljava/lang/reflect/InvocationHandler;
           15   30     2        ref  Ljava/rmi/server/RemoteRef;
           22   30     3    liveRef  Lsun/rmi/transport/LiveRef;
           23   30     4        csf  Ljava/rmi/server/RMIClientSocketFactory;
    Signature: (Ljava/rmi/Remote;Ljava/lang/Class<*>;)V
    MethodParameters:
           Name  Flags
      stub       
      stubClass  

  private javax.management.remote.rmi.RMIServer findRMIServer(javax.management.remote.JMXServiceURL, java.util.Map<java.lang.String, java.lang.Object>);
    descriptor: (Ljavax/management/remote/JMXServiceURL;Ljava/util/Map;)Ljavax/management/remote/rmi/RMIServer;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.management.remote.JMXServiceURL directoryURL
        start local 2 // java.util.Map environment
         0: .line 1885
            aload 1 /* directoryURL */
            iconst_1
            invokestatic javax.management.remote.rmi.RMIConnectorServer.isIiopURL:(Ljavax/management/remote/JMXServiceURL;Z)Z
            istore 3 /* isIiop */
        start local 3 // boolean isIiop
         1: .line 1886
            iload 3 /* isIiop */
            ifeq 3
         2: .line 1888
            aload 2 /* environment */
            ldc "java.naming.corba.orb"
            aload 2 /* environment */
            invokestatic javax.management.remote.rmi.RMIConnector.resolveOrb:(Ljava/util/Map;)Ljava/lang/Object;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 1891
      StackMap locals: int
      StackMap stack:
            aload 1 /* directoryURL */
            invokevirtual javax.management.remote.JMXServiceURL.getURLPath:()Ljava/lang/String;
            astore 4 /* path */
        start local 4 // java.lang.String path
         4: .line 1892
            aload 4 /* path */
            bipush 59
            invokevirtual java.lang.String.indexOf:(I)I
            istore 5 /* end */
        start local 5 // int end
         5: .line 1893
            iload 5 /* end */
            ifge 6
            aload 4 /* path */
            invokevirtual java.lang.String.length:()I
            istore 5 /* end */
         6: .line 1894
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 4 /* path */
            ldc "/jndi/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 8
         7: .line 1895
            aload 0 /* this */
            aload 4 /* path */
            bipush 6
            iload 5 /* end */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            aload 2 /* environment */
            iload 3 /* isIiop */
            invokevirtual javax.management.remote.rmi.RMIConnector.findRMIServerJNDI:(Ljava/lang/String;Ljava/util/Map;Z)Ljavax/management/remote/rmi/RMIServer;
            areturn
         8: .line 1896
      StackMap locals:
      StackMap stack:
            aload 4 /* path */
            ldc "/stub/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 10
         9: .line 1897
            aload 0 /* this */
            aload 4 /* path */
            bipush 6
            iload 5 /* end */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            aload 2 /* environment */
            iload 3 /* isIiop */
            invokevirtual javax.management.remote.rmi.RMIConnector.findRMIServerJRMP:(Ljava/lang/String;Ljava/util/Map;Z)Ljavax/management/remote/rmi/RMIServer;
            areturn
        10: .line 1898
      StackMap locals:
      StackMap stack:
            aload 4 /* path */
            ldc "/ior/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 14
        11: .line 1899
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.isAvailable:()Z
            ifne 13
        12: .line 1900
            new java.io.IOException
            dup
            ldc "iiop protocol not available"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 1901
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* path */
            iconst_5
            iload 5 /* end */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            aload 2 /* environment */
            iload 3 /* isIiop */
            invokevirtual javax.management.remote.rmi.RMIConnector.findRMIServerIIOP:(Ljava/lang/String;Ljava/util/Map;Z)Ljavax/management/remote/rmi/RMIServer;
            areturn
        14: .line 1903
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "URL path must begin with /jndi/ or /stub/ or /ior/: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        15: .line 1904
            aload 4 /* path */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        16: .line 1903
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* msg */
        start local 6 // java.lang.String msg
        17: .line 1905
            new java.net.MalformedURLException
            dup
            aload 6 /* msg */
            invokespecial java.net.MalformedURLException.<init>:(Ljava/lang/String;)V
            athrow
        end local 6 // java.lang.String msg
        end local 5 // int end
        end local 4 // java.lang.String path
        end local 3 // boolean isIiop
        end local 2 // java.util.Map environment
        end local 1 // javax.management.remote.JMXServiceURL directoryURL
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Ljavax/management/remote/rmi/RMIConnector;
            0   18     1  directoryURL  Ljavax/management/remote/JMXServiceURL;
            0   18     2   environment  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
            1   18     3        isIiop  Z
            4   18     4          path  Ljava/lang/String;
            5   18     5           end  I
           17   18     6           msg  Ljava/lang/String;
    Exceptions:
      throws javax.naming.NamingException, java.io.IOException
    Signature: (Ljavax/management/remote/JMXServiceURL;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Ljavax/management/remote/rmi/RMIServer;
    MethodParameters:
              Name  Flags
      directoryURL  
      environment   

  private javax.management.remote.rmi.RMIServer findRMIServerJNDI(java.lang.String, java.util.Map<java.lang.String, ?>, boolean);
    descriptor: (Ljava/lang/String;Ljava/util/Map;Z)Ljavax/management/remote/rmi/RMIServer;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // java.lang.String jndiURL
        start local 2 // java.util.Map env
        start local 3 // boolean isIiop
         0: .line 1926
            new javax.naming.InitialContext
            dup
            aload 2 /* env */
            invokestatic com.sun.jmx.remote.util.EnvHelp.mapToHashtable:(Ljava/util/Map;)Ljava/util/Hashtable;
            invokespecial javax.naming.InitialContext.<init>:(Ljava/util/Hashtable;)V
            astore 4 /* ctx */
        start local 4 // javax.naming.InitialContext ctx
         1: .line 1928
            aload 4 /* ctx */
            aload 1 /* jndiURL */
            invokevirtual javax.naming.InitialContext.lookup:(Ljava/lang/String;)Ljava/lang/Object;
            astore 5 /* objref */
        start local 5 // java.lang.Object objref
         2: .line 1929
            aload 4 /* ctx */
            invokevirtual javax.naming.InitialContext.close:()V
         3: .line 1931
            iload 3 /* isIiop */
            ifeq 5
         4: .line 1932
            aload 5 /* objref */
            invokestatic javax.management.remote.rmi.RMIConnector.narrowIIOPServer:(Ljava/lang/Object;)Ljavax/management/remote/rmi/RMIServer;
            areturn
         5: .line 1934
      StackMap locals: javax.naming.InitialContext java.lang.Object
      StackMap stack:
            aload 5 /* objref */
            invokestatic javax.management.remote.rmi.RMIConnector.narrowJRMPServer:(Ljava/lang/Object;)Ljavax/management/remote/rmi/RMIServer;
            areturn
        end local 5 // java.lang.Object objref
        end local 4 // javax.naming.InitialContext ctx
        end local 3 // boolean isIiop
        end local 2 // java.util.Map env
        end local 1 // java.lang.String jndiURL
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Ljavax/management/remote/rmi/RMIConnector;
            0    6     1  jndiURL  Ljava/lang/String;
            0    6     2      env  Ljava/util/Map<Ljava/lang/String;*>;
            0    6     3   isIiop  Z
            1    6     4      ctx  Ljavax/naming/InitialContext;
            2    6     5   objref  Ljava/lang/Object;
    Exceptions:
      throws javax.naming.NamingException
    Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;*>;Z)Ljavax/management/remote/rmi/RMIServer;
    MethodParameters:
         Name  Flags
      jndiURL  
      env      
      isIiop   

  private static javax.management.remote.rmi.RMIServer narrowJRMPServer(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljavax/management/remote/rmi/RMIServer;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object objref
         0: .line 1939
            aload 0 /* objref */
            checkcast javax.management.remote.rmi.RMIServer
            areturn
        end local 0 // java.lang.Object objref
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  objref  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      objref  

  private static javax.management.remote.rmi.RMIServer narrowIIOPServer(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljavax/management/remote/rmi/RMIServer;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.Object objref
         0: .line 1944
            aload 0 /* objref */
            ldc Ljavax/management/remote/rmi/RMIServer;
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.narrow:(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast javax.management.remote.rmi.RMIServer
         1: areturn
         2: .line 1945
      StackMap locals:
      StackMap stack: java.lang.ClassCastException
            astore 1 /* e */
        start local 1 // java.lang.ClassCastException e
         3: .line 1946
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.traceOn:()Z
            ifeq 7
         4: .line 1947
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "narrowIIOPServer"
            new java.lang.StringBuilder
            dup
            ldc "Failed to narrow objref="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         5: .line 1948
            aload 0 /* objref */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 1947
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
         7: .line 1949
      StackMap locals: java.lang.ClassCastException
      StackMap stack:
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debugOn:()Z
            ifeq 8
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "narrowIIOPServer"
            aload 1 /* e */
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/Throwable;)V
         8: .line 1950
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.ClassCastException e
        end local 0 // java.lang.Object objref
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0  objref  Ljava/lang/Object;
            3    9     1       e  Ljava/lang/ClassCastException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.ClassCastException
    MethodParameters:
        Name  Flags
      objref  

  private javax.management.remote.rmi.RMIServer findRMIServerIIOP(java.lang.String, java.util.Map<java.lang.String, ?>, boolean);
    descriptor: (Ljava/lang/String;Ljava/util/Map;Z)Ljavax/management/remote/rmi/RMIServer;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=4
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // java.lang.String ior
        start local 2 // java.util.Map env
        start local 3 // boolean isIiop
         0: .line 1956
            aload 2 /* env */
            ldc "java.naming.corba.orb"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 4 /* orb */
        start local 4 // java.lang.Object orb
         1: .line 1957
            aload 4 /* orb */
            aload 1 /* ior */
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.stringToObject:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            astore 5 /* stub */
        start local 5 // java.lang.Object stub
         2: .line 1958
            aload 5 /* stub */
            ldc Ljavax/management/remote/rmi/RMIServer;
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.narrow:(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast javax.management.remote.rmi.RMIServer
            areturn
        end local 5 // java.lang.Object stub
        end local 4 // java.lang.Object orb
        end local 3 // boolean isIiop
        end local 2 // java.util.Map env
        end local 1 // java.lang.String ior
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljavax/management/remote/rmi/RMIConnector;
            0    3     1     ior  Ljava/lang/String;
            0    3     2     env  Ljava/util/Map<Ljava/lang/String;*>;
            0    3     3  isIiop  Z
            1    3     4     orb  Ljava/lang/Object;
            2    3     5    stub  Ljava/lang/Object;
    Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;*>;Z)Ljavax/management/remote/rmi/RMIServer;
    MethodParameters:
        Name  Flags
      ior     
      env     
      isIiop  

  private javax.management.remote.rmi.RMIServer findRMIServerJRMP(java.lang.String, java.util.Map<java.lang.String, ?>, boolean);
    descriptor: (Ljava/lang/String;Ljava/util/Map;Z)Ljavax/management/remote/rmi/RMIServer;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // java.lang.String base64
        start local 2 // java.util.Map env
        start local 3 // boolean isIiop
         0: .line 1966
            aload 1 /* base64 */
            invokestatic javax.management.remote.rmi.RMIConnector.base64ToByteArray:(Ljava/lang/String;)[B
            astore 4 /* serialized */
        start local 4 // byte[] serialized
         1: .line 1967
            goto 6
        end local 4 // byte[] serialized
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
         2: astore 5 /* e */
        start local 5 // java.lang.IllegalArgumentException e
         3: .line 1968
            new java.net.MalformedURLException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Bad BASE64 encoding: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 1969
            aload 5 /* e */
            invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 1968
            invokespecial java.net.MalformedURLException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.IllegalArgumentException e
        start local 4 // byte[] serialized
         6: .line 1971
      StackMap locals: byte[]
      StackMap stack:
            new java.io.ByteArrayInputStream
            dup
            aload 4 /* serialized */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            astore 5 /* bin */
        start local 5 // java.io.ByteArrayInputStream bin
         7: .line 1973
            aload 2 /* env */
            invokestatic com.sun.jmx.remote.util.EnvHelp.resolveClientClassLoader:(Ljava/util/Map;)Ljava/lang/ClassLoader;
            astore 6 /* loader */
        start local 6 // java.lang.ClassLoader loader
         8: .line 1975
            aload 6 /* loader */
            ifnonnull 10
         9: .line 1976
            new java.io.ObjectInputStream
            dup
            aload 5 /* bin */
            invokespecial java.io.ObjectInputStream.<init>:(Ljava/io/InputStream;)V
            goto 11
        10: .line 1977
      StackMap locals: java.io.ByteArrayInputStream java.lang.ClassLoader
      StackMap stack:
            new javax.management.remote.rmi.RMIConnector$ObjectInputStreamWithLoader
            dup
            aload 5 /* bin */
            aload 6 /* loader */
            invokespecial javax.management.remote.rmi.RMIConnector$ObjectInputStreamWithLoader.<init>:(Ljava/io/InputStream;Ljava/lang/ClassLoader;)V
        11: .line 1974
      StackMap locals:
      StackMap stack: java.io.ObjectInputStream
            astore 7 /* oin */
        start local 7 // java.io.ObjectInputStream oin
        12: .line 1980
            aload 7 /* oin */
            invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
            astore 8 /* stub */
        start local 8 // java.lang.Object stub
        13: .line 1981
            goto 16
        end local 8 // java.lang.Object stub
      StackMap locals: javax.management.remote.rmi.RMIConnector java.lang.String java.util.Map int byte[] java.io.ByteArrayInputStream java.lang.ClassLoader java.io.ObjectInputStream
      StackMap stack: java.lang.ClassNotFoundException
        14: astore 9 /* e */
        start local 9 // java.lang.ClassNotFoundException e
        15: .line 1982
            new java.net.MalformedURLException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Class not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.net.MalformedURLException.<init>:(Ljava/lang/String;)V
            athrow
        end local 9 // java.lang.ClassNotFoundException e
        start local 8 // java.lang.Object stub
        16: .line 1984
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 8 /* stub */
            checkcast javax.management.remote.rmi.RMIServer
            areturn
        end local 8 // java.lang.Object stub
        end local 7 // java.io.ObjectInputStream oin
        end local 6 // java.lang.ClassLoader loader
        end local 5 // java.io.ByteArrayInputStream bin
        end local 4 // byte[] serialized
        end local 3 // boolean isIiop
        end local 2 // java.util.Map env
        end local 1 // java.lang.String base64
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0        this  Ljavax/management/remote/rmi/RMIConnector;
            0   17     1      base64  Ljava/lang/String;
            0   17     2         env  Ljava/util/Map<Ljava/lang/String;*>;
            0   17     3      isIiop  Z
            1    2     4  serialized  [B
            6   17     4  serialized  [B
            3    6     5           e  Ljava/lang/IllegalArgumentException;
            7   17     5         bin  Ljava/io/ByteArrayInputStream;
            8   17     6      loader  Ljava/lang/ClassLoader;
           12   17     7         oin  Ljava/io/ObjectInputStream;
           13   14     8        stub  Ljava/lang/Object;
           16   17     8        stub  Ljava/lang/Object;
           15   16     9           e  Ljava/lang/ClassNotFoundException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.IllegalArgumentException
          12    13      14  Class java.lang.ClassNotFoundException
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;*>;Z)Ljavax/management/remote/rmi/RMIServer;
    MethodParameters:
        Name  Flags
      base64  
      env     
      isIiop  

  private javax.management.MBeanServerConnection getConnectionWithSubject(javax.security.auth.Subject);
    descriptor: (Ljavax/security/auth/Subject;)Ljavax/management/MBeanServerConnection;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // javax.security.auth.Subject delegationSubject
         0: .line 2007
            aconst_null
            astore 2 /* conn */
        start local 2 // javax.management.MBeanServerConnection conn
         1: .line 2009
            aload 1 /* delegationSubject */
            ifnonnull 7
         2: .line 2010
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.nullSubjectConnRef:Ljava/lang/ref/WeakReference;
            ifnull 4
         3: .line 2011
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.nullSubjectConnRef:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast javax.management.MBeanServerConnection
            dup
            astore 2 /* conn */
            ifnonnull 11
         4: .line 2012
      StackMap locals: javax.management.MBeanServerConnection
      StackMap stack:
            new javax.management.remote.rmi.RMIConnector$RemoteMBeanServerConnection
            dup
            aload 0 /* this */
            aconst_null
            invokespecial javax.management.remote.rmi.RMIConnector$RemoteMBeanServerConnection.<init>:(Ljavax/management/remote/rmi/RMIConnector;Ljavax/security/auth/Subject;)V
            astore 2 /* conn */
         5: .line 2013
            aload 0 /* this */
            new java.lang.ref.WeakReference
            dup
            aload 2 /* conn */
            invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
            putfield javax.management.remote.rmi.RMIConnector.nullSubjectConnRef:Ljava/lang/ref/WeakReference;
         6: .line 2015
            goto 11
         7: .line 2016
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmbscMap:Ljava/util/WeakHashMap;
            aload 1 /* delegationSubject */
            invokevirtual java.util.WeakHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.ref.WeakReference
            astore 3 /* wr */
        start local 3 // java.lang.ref.WeakReference wr
         8: .line 2017
            aload 3 /* wr */
            ifnull 9
            aload 3 /* wr */
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast javax.management.MBeanServerConnection
            dup
            astore 2 /* conn */
            ifnonnull 11
         9: .line 2018
      StackMap locals: java.lang.ref.WeakReference
      StackMap stack:
            new javax.management.remote.rmi.RMIConnector$RemoteMBeanServerConnection
            dup
            aload 0 /* this */
            aload 1 /* delegationSubject */
            invokespecial javax.management.remote.rmi.RMIConnector$RemoteMBeanServerConnection.<init>:(Ljavax/management/remote/rmi/RMIConnector;Ljavax/security/auth/Subject;)V
            astore 2 /* conn */
        10: .line 2019
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.rmbscMap:Ljava/util/WeakHashMap;
            aload 1 /* delegationSubject */
            new java.lang.ref.WeakReference
            dup
            aload 2 /* conn */
            invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
            invokevirtual java.util.WeakHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 3 // java.lang.ref.WeakReference wr
        11: .line 2022
      StackMap locals:
      StackMap stack:
            aload 2 /* conn */
            areturn
        end local 2 // javax.management.MBeanServerConnection conn
        end local 1 // javax.security.auth.Subject delegationSubject
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0               this  Ljavax/management/remote/rmi/RMIConnector;
            0   12     1  delegationSubject  Ljavax/security/auth/Subject;
            1   12     2               conn  Ljavax/management/MBeanServerConnection;
            8   11     3                 wr  Ljava/lang/ref/WeakReference<Ljavax/management/MBeanServerConnection;>;
    MethodParameters:
                   Name  Flags
      delegationSubject  

  private static javax.management.remote.rmi.RMIConnection shadowJrmpStub(java.rmi.server.RemoteObject);
    descriptor: (Ljava/rmi/server/RemoteObject;)Ljavax/management/remote/rmi/RMIConnection;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // java.rmi.server.RemoteObject stub
         0: .line 2166
            aload 0 /* stub */
            invokevirtual java.rmi.server.RemoteObject.getRef:()Ljava/rmi/server/RemoteRef;
            astore 1 /* ref */
        start local 1 // java.rmi.server.RemoteRef ref
         1: .line 2168
            getstatic javax.management.remote.rmi.RMIConnector.proxyRefConstructor:Ljava/lang/reflect/Constructor;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* ref */
            aastore
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.rmi.server.RemoteRef
         2: .line 2167
            astore 2 /* proxyRef */
        start local 2 // java.rmi.server.RemoteRef proxyRef
         3: .line 2170
            getstatic javax.management.remote.rmi.RMIConnector.rmiConnectionImplStubClass:Ljava/lang/Class;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/rmi/server/RemoteRef;
            aastore
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
         4: .line 2169
            astore 3 /* rmiConnectionImplStubConstructor */
        start local 3 // java.lang.reflect.Constructor rmiConnectionImplStubConstructor
         5: .line 2171
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* proxyRef */
            aastore
            astore 4 /* args */
        start local 4 // java.lang.Object[] args
         6: .line 2173
            aload 3 /* rmiConnectionImplStubConstructor */
            aload 4 /* args */
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.management.remote.rmi.RMIConnection
         7: .line 2172
            astore 5 /* proxyStub */
        start local 5 // javax.management.remote.rmi.RMIConnection proxyStub
         8: .line 2174
            aload 5 /* proxyStub */
            areturn
        end local 5 // javax.management.remote.rmi.RMIConnection proxyStub
        end local 4 // java.lang.Object[] args
        end local 3 // java.lang.reflect.Constructor rmiConnectionImplStubConstructor
        end local 2 // java.rmi.server.RemoteRef proxyRef
        end local 1 // java.rmi.server.RemoteRef ref
        end local 0 // java.rmi.server.RemoteObject stub
      LocalVariableTable:
        Start  End  Slot                              Name  Signature
            0    9     0                              stub  Ljava/rmi/server/RemoteObject;
            1    9     1                               ref  Ljava/rmi/server/RemoteRef;
            3    9     2                          proxyRef  Ljava/rmi/server/RemoteRef;
            5    9     3  rmiConnectionImplStubConstructor  Ljava/lang/reflect/Constructor<*>;
            6    9     4                              args  [Ljava/lang/Object;
            8    9     5                         proxyStub  Ljavax/management/remote/rmi/RMIConnection;
    Exceptions:
      throws java.lang.InstantiationException, java.lang.IllegalAccessException, java.lang.reflect.InvocationTargetException, java.lang.ClassNotFoundException, java.lang.NoSuchMethodException
    MethodParameters:
      Name  Flags
      stub  

  private static javax.management.remote.rmi.RMIConnection shadowIiopStub(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljavax/management/remote/rmi/RMIConnection;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.Object stub
         0: .line 2386
            aconst_null
            astore 1 /* proxyStub */
        start local 1 // java.lang.Object proxyStub
         1: .line 2388
            new javax.management.remote.rmi.RMIConnector$3
            dup
            invokespecial javax.management.remote.rmi.RMIConnector$3.<init>:()V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            astore 1 /* proxyStub */
         2: .line 2393
            goto 5
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack: java.security.PrivilegedActionException
         3: pop
         4: .line 2394
            new java.lang.InternalError
            dup
            invokespecial java.lang.InternalError.<init>:()V
            athrow
         5: .line 2396
      StackMap locals:
      StackMap stack:
            aload 1 /* proxyStub */
            aload 0 /* stub */
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.getDelegate:(Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic com.sun.jmx.remote.internal.IIOPHelper.setDelegate:(Ljava/lang/Object;Ljava/lang/Object;)V
         6: .line 2397
            aload 1 /* proxyStub */
            checkcast javax.management.remote.rmi.RMIConnection
            areturn
        end local 1 // java.lang.Object proxyStub
        end local 0 // java.lang.Object stub
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       stub  Ljava/lang/Object;
            1    7     1  proxyStub  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           1     2       3  Class java.security.PrivilegedActionException
    Exceptions:
      throws java.lang.InstantiationException, java.lang.IllegalAccessException
    MethodParameters:
      Name  Flags
      stub  

  private static javax.management.remote.rmi.RMIConnection getConnection(javax.management.remote.rmi.RMIServer, java.lang.Object, boolean);
    descriptor: (Ljavax/management/remote/rmi/RMIServer;Ljava/lang/Object;Z)Ljavax/management/remote/rmi/RMIConnection;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // javax.management.remote.rmi.RMIServer server
        start local 1 // java.lang.Object credentials
        start local 2 // boolean checkStub
         0: .line 2403
            aload 0 /* server */
            aload 1 /* credentials */
            invokeinterface javax.management.remote.rmi.RMIServer.newClient:(Ljava/lang/Object;)Ljavax/management/remote/rmi/RMIConnection;
            astore 3 /* c */
        start local 3 // javax.management.remote.rmi.RMIConnection c
         1: .line 2404
            iload 2 /* checkStub */
            ifeq 2
            aload 3 /* c */
            getstatic javax.management.remote.rmi.RMIConnector.rmiConnectionImplStubClass:Ljava/lang/Class;
            invokestatic javax.management.remote.rmi.RMIConnector.checkStub:(Ljava/rmi/Remote;Ljava/lang/Class;)V
         2: .line 2406
      StackMap locals: javax.management.remote.rmi.RMIConnection
      StackMap stack:
            aload 3 /* c */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            getstatic javax.management.remote.rmi.RMIConnector.rmiConnectionImplStubClass:Ljava/lang/Class;
            if_acmpne 5
         3: .line 2407
            aload 3 /* c */
            checkcast java.rmi.server.RemoteObject
            invokestatic javax.management.remote.rmi.RMIConnector.shadowJrmpStub:(Ljava/rmi/server/RemoteObject;)Ljavax/management/remote/rmi/RMIConnection;
         4: areturn
         5: .line 2408
      StackMap locals:
      StackMap stack:
            aload 3 /* c */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "org.omg.stub.javax.management.remote.rmi._RMIConnection_Stub"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 2409
            aload 3 /* c */
            invokestatic javax.management.remote.rmi.RMIConnector.shadowIiopStub:(Ljava/lang/Object;)Ljavax/management/remote/rmi/RMIConnection;
         7: areturn
         8: .line 2410
      StackMap locals:
      StackMap stack:
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "getConnection"
         9: .line 2411
            new java.lang.StringBuilder
            dup
            ldc "Did not wrap "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* c */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " to foil "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 2412
            ldc "stack search for classes: class loading semantics "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 2413
            ldc "may be incorrect"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 2411
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 2410
            invokevirtual com.sun.jmx.remote.util.ClassLogger.trace:(Ljava/lang/String;Ljava/lang/String;)V
        14: .line 2414
            goto 23
      StackMap locals:
      StackMap stack: java.lang.Exception
        15: astore 4 /* e */
        start local 4 // java.lang.Exception e
        16: .line 2415
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "getConnection"
        17: .line 2416
            new java.lang.StringBuilder
            dup
            ldc "Could not wrap "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* c */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " to foil "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        18: .line 2417
            ldc "stack search for classes: class loading semantics "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        19: .line 2418
            ldc "may be incorrect: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        20: .line 2416
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        21: .line 2415
            invokevirtual com.sun.jmx.remote.util.ClassLogger.error:(Ljava/lang/String;Ljava/lang/String;)V
        22: .line 2419
            getstatic javax.management.remote.rmi.RMIConnector.logger:Lcom/sun/jmx/remote/util/ClassLogger;
            ldc "getConnection"
            aload 4 /* e */
            invokevirtual com.sun.jmx.remote.util.ClassLogger.debug:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 4 // java.lang.Exception e
        23: .line 2423
      StackMap locals:
      StackMap stack:
            aload 3 /* c */
            areturn
        end local 3 // javax.management.remote.rmi.RMIConnection c
        end local 2 // boolean checkStub
        end local 1 // java.lang.Object credentials
        end local 0 // javax.management.remote.rmi.RMIServer server
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   24     0       server  Ljavax/management/remote/rmi/RMIServer;
            0   24     1  credentials  Ljava/lang/Object;
            0   24     2    checkStub  Z
            1   24     3            c  Ljavax/management/remote/rmi/RMIConnection;
           16   23     4            e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2     4      15  Class java.lang.Exception
           5     7      15  Class java.lang.Exception
           8    14      15  Class java.lang.Exception
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      server       
      credentials  
      checkStub    

  private static byte[] base64ToByteArray(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=13, args_size=1
        start local 0 // java.lang.String s
         0: .line 2427
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            istore 1 /* sLen */
        start local 1 // int sLen
         1: .line 2428
            iload 1 /* sLen */
            iconst_4
            idiv
            istore 2 /* numGroups */
        start local 2 // int numGroups
         2: .line 2429
            iconst_4
            iload 2 /* numGroups */
            imul
            iload 1 /* sLen */
            if_icmpeq 6
         3: .line 2430
            new java.lang.IllegalArgumentException
            dup
         4: .line 2431
            ldc "String length must be a multiple of four."
         5: .line 2430
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 2432
      StackMap locals: int int
      StackMap stack:
            iconst_0
            istore 3 /* missingBytesInLastGroup */
        start local 3 // int missingBytesInLastGroup
         7: .line 2433
            iload 2 /* numGroups */
            istore 4 /* numFullGroups */
        start local 4 // int numFullGroups
         8: .line 2434
            iload 1 /* sLen */
            ifeq 14
         9: .line 2435
            aload 0 /* s */
            iload 1 /* sLen */
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 61
            if_icmpne 12
        10: .line 2436
            iinc 3 /* missingBytesInLastGroup */ 1
        11: .line 2437
            iinc 4 /* numFullGroups */ -1
        12: .line 2439
      StackMap locals: int int
      StackMap stack:
            aload 0 /* s */
            iload 1 /* sLen */
            iconst_2
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 61
            if_icmpne 14
        13: .line 2440
            iinc 3 /* missingBytesInLastGroup */ 1
        14: .line 2442
      StackMap locals:
      StackMap stack:
            iconst_3
            iload 2 /* numGroups */
            imul
            iload 3 /* missingBytesInLastGroup */
            isub
            newarray 8
            astore 5 /* result */
        start local 5 // byte[] result
        15: .line 2445
            iconst_0
            istore 6 /* inCursor */
        start local 6 // int inCursor
        16: iconst_0
            istore 7 /* outCursor */
        start local 7 // int outCursor
        17: .line 2446
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        18: goto 27
        19: .line 2447
      StackMap locals: java.lang.String int int int int byte[] int int int
      StackMap stack:
            aload 0 /* s */
            iload 6 /* inCursor */
            iinc 6 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic javax.management.remote.rmi.RMIConnector.base64toInt:(C)I
            istore 9 /* ch0 */
        start local 9 // int ch0
        20: .line 2448
            aload 0 /* s */
            iload 6 /* inCursor */
            iinc 6 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic javax.management.remote.rmi.RMIConnector.base64toInt:(C)I
            istore 10 /* ch1 */
        start local 10 // int ch1
        21: .line 2449
            aload 0 /* s */
            iload 6 /* inCursor */
            iinc 6 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic javax.management.remote.rmi.RMIConnector.base64toInt:(C)I
            istore 11 /* ch2 */
        start local 11 // int ch2
        22: .line 2450
            aload 0 /* s */
            iload 6 /* inCursor */
            iinc 6 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic javax.management.remote.rmi.RMIConnector.base64toInt:(C)I
            istore 12 /* ch3 */
        start local 12 // int ch3
        23: .line 2451
            aload 5 /* result */
            iload 7 /* outCursor */
            iinc 7 /* outCursor */ 1
            iload 9 /* ch0 */
            iconst_2
            ishl
            iload 10 /* ch1 */
            iconst_4
            ishr
            ior
            i2b
            bastore
        24: .line 2452
            aload 5 /* result */
            iload 7 /* outCursor */
            iinc 7 /* outCursor */ 1
            iload 10 /* ch1 */
            iconst_4
            ishl
            iload 11 /* ch2 */
            iconst_2
            ishr
            ior
            i2b
            bastore
        25: .line 2453
            aload 5 /* result */
            iload 7 /* outCursor */
            iinc 7 /* outCursor */ 1
            iload 11 /* ch2 */
            bipush 6
            ishl
            iload 12 /* ch3 */
            ior
            i2b
            bastore
        end local 12 // int ch3
        end local 11 // int ch2
        end local 10 // int ch1
        end local 9 // int ch0
        26: .line 2446
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 8 /* i */
            iload 4 /* numFullGroups */
            if_icmplt 19
        end local 8 // int i
        28: .line 2457
            iload 3 /* missingBytesInLastGroup */
            ifeq 35
        29: .line 2458
            aload 0 /* s */
            iload 6 /* inCursor */
            iinc 6 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic javax.management.remote.rmi.RMIConnector.base64toInt:(C)I
            istore 8 /* ch0 */
        start local 8 // int ch0
        30: .line 2459
            aload 0 /* s */
            iload 6 /* inCursor */
            iinc 6 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic javax.management.remote.rmi.RMIConnector.base64toInt:(C)I
            istore 9 /* ch1 */
        start local 9 // int ch1
        31: .line 2460
            aload 5 /* result */
            iload 7 /* outCursor */
            iinc 7 /* outCursor */ 1
            iload 8 /* ch0 */
            iconst_2
            ishl
            iload 9 /* ch1 */
            iconst_4
            ishr
            ior
            i2b
            bastore
        32: .line 2462
            iload 3 /* missingBytesInLastGroup */
            iconst_1
            if_icmpne 35
        33: .line 2463
            aload 0 /* s */
            iload 6 /* inCursor */
            iinc 6 /* inCursor */ 1
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic javax.management.remote.rmi.RMIConnector.base64toInt:(C)I
            istore 10 /* ch2 */
        start local 10 // int ch2
        34: .line 2464
            aload 5 /* result */
            iload 7 /* outCursor */
            iinc 7 /* outCursor */ 1
            iload 9 /* ch1 */
            iconst_4
            ishl
            iload 10 /* ch2 */
            iconst_2
            ishr
            ior
            i2b
            bastore
        end local 10 // int ch2
        end local 9 // int ch1
        end local 8 // int ch0
        35: .line 2469
      StackMap locals:
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 7 // int outCursor
        end local 6 // int inCursor
        end local 5 // byte[] result
        end local 4 // int numFullGroups
        end local 3 // int missingBytesInLastGroup
        end local 2 // int numGroups
        end local 1 // int sLen
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   36     0                        s  Ljava/lang/String;
            1   36     1                     sLen  I
            2   36     2                numGroups  I
            7   36     3  missingBytesInLastGroup  I
            8   36     4            numFullGroups  I
           15   36     5                   result  [B
           16   36     6                 inCursor  I
           17   36     7                outCursor  I
           18   28     8                        i  I
           20   26     9                      ch0  I
           21   26    10                      ch1  I
           22   26    11                      ch2  I
           23   26    12                      ch3  I
           30   35     8                      ch0  I
           31   35     9                      ch1  I
           34   35    10                      ch2  I
    MethodParameters:
      Name  Flags
      s     

  private static int base64toInt(char);
    descriptor: (C)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // char c
         0: .line 2482
            iload 0 /* c */
            getstatic javax.management.remote.rmi.RMIConnector.base64ToInt:[B
            arraylength
            if_icmplt 3
         1: .line 2483
            iconst_m1
            istore 1 /* result */
        start local 1 // int result
         2: goto 4
        end local 1 // int result
         3: .line 2485
      StackMap locals:
      StackMap stack:
            getstatic javax.management.remote.rmi.RMIConnector.base64ToInt:[B
            iload 0 /* c */
            baload
            istore 1 /* result */
        start local 1 // int result
         4: .line 2487
      StackMap locals: int
      StackMap stack:
            iload 1 /* result */
            ifge 6
         5: .line 2488
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Illegal character "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 2489
      StackMap locals:
      StackMap stack:
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0       c  C
            2    3     1  result  I
            4    7     1  result  I
    MethodParameters:
      Name  Flags
      c     

  private java.lang.ClassLoader pushDefaultClassLoader();
    descriptor: ()Ljava/lang/ClassLoader;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // javax.management.remote.rmi.RMIConnector this
         0: .line 2513
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            astore 1 /* t */
        start local 1 // java.lang.Thread t
         1: .line 2514
            aload 1 /* t */
            invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
            astore 2 /* old */
        start local 2 // java.lang.ClassLoader old
         2: .line 2515
            aload 0 /* this */
            getfield javax.management.remote.rmi.RMIConnector.defaultClassLoader:Ljava/lang/ClassLoader;
            ifnull 4
         3: .line 2516
            new javax.management.remote.rmi.RMIConnector$4
            dup
            aload 0 /* this */
            aload 1 /* t */
            invokespecial javax.management.remote.rmi.RMIConnector$4.<init>:(Ljavax/management/remote/rmi/RMIConnector;Ljava/lang/Thread;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         4: .line 2522
      StackMap locals: java.lang.Thread java.lang.ClassLoader
      StackMap stack:
            aload 2 /* old */
            areturn
        end local 2 // java.lang.ClassLoader old
        end local 1 // java.lang.Thread t
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavax/management/remote/rmi/RMIConnector;
            1    5     1     t  Ljava/lang/Thread;
            2    5     2   old  Ljava/lang/ClassLoader;

  private void popDefaultClassLoader(java.lang.ClassLoader);
    descriptor: (Ljava/lang/ClassLoader;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // javax.management.remote.rmi.RMIConnector this
        start local 1 // java.lang.ClassLoader old
         0: .line 2526
            new javax.management.remote.rmi.RMIConnector$5
            dup
            aload 0 /* this */
            aload 1 /* old */
            invokespecial javax.management.remote.rmi.RMIConnector$5.<init>:(Ljavax/management/remote/rmi/RMIConnector;Ljava/lang/ClassLoader;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         1: .line 2532
            return
        end local 1 // java.lang.ClassLoader old
        end local 0 // javax.management.remote.rmi.RMIConnector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/management/remote/rmi/RMIConnector;
            0    2     1   old  Ljava/lang/ClassLoader;
    MethodParameters:
      Name  Flags
      old   final

  private static java.lang.String objects(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object[] objs
         0: .line 2601
            aload 0 /* objs */
            ifnonnull 2
         1: .line 2602
            ldc "null"
            areturn
         2: .line 2604
      StackMap locals:
      StackMap stack:
            aload 0 /* objs */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.Object[] objs
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  objs  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      objs  final

  private static java.lang.String strings(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String[] strs
         0: .line 2608
            aload 0 /* strs */
            invokestatic javax.management.remote.rmi.RMIConnector.objects:([Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String[] strs
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  strs  [Ljava/lang/String;
    MethodParameters:
      Name  Flags
      strs  final

  static java.lang.String getAttributesNames(javax.management.AttributeList);
    descriptor: (Ljavax/management/AttributeList;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // javax.management.AttributeList attributes
         0: .line 2612
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 1 /* builder */
        start local 1 // java.lang.StringBuilder builder
         1: .line 2613
            aload 0 /* attributes */
            ifnull 8
         2: .line 2614
            aload 0 /* attributes */
            invokevirtual javax.management.AttributeList.asList:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2 /* i */
        start local 2 // java.util.Iterator i
         3: .line 2615
            goto 7
         4: .line 2616
      StackMap locals: java.lang.StringBuilder java.util.Iterator
      StackMap stack:
            aload 1 /* builder */
            aload 2 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.management.Attribute
            invokevirtual javax.management.Attribute.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 2617
            aload 2 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 7
         6: .line 2618
            aload 1 /* builder */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 2615
      StackMap locals:
      StackMap stack:
            aload 2 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 2 // java.util.Iterator i
         8: .line 2621
      StackMap locals:
      StackMap stack:
            aload 1 /* builder */
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 2622
            aload 1 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder builder
        end local 0 // javax.management.AttributeList attributes
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0  attributes  Ljavax/management/AttributeList;
            1   10     1     builder  Ljava/lang/StringBuilder;
            3    8     2           i  Ljava/util/Iterator<Ljavax/management/Attribute;>;
    MethodParameters:
            Name  Flags
      attributes  
}
SourceFile: "RMIConnector.java"
NestMembers:
  javax.management.remote.rmi.RMIConnector$1  javax.management.remote.rmi.RMIConnector$2  javax.management.remote.rmi.RMIConnector$3  javax.management.remote.rmi.RMIConnector$4  javax.management.remote.rmi.RMIConnector$5  javax.management.remote.rmi.RMIConnector$ObjectInputStreamWithLoader  javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin  javax.management.remote.rmi.RMIConnector$RMINotifClient  javax.management.remote.rmi.RMIConnector$RemoteMBeanServerConnection
InnerClasses:
  javax.management.remote.rmi.RMIConnector$1
  javax.management.remote.rmi.RMIConnector$2
  javax.management.remote.rmi.RMIConnector$3
  javax.management.remote.rmi.RMIConnector$4
  javax.management.remote.rmi.RMIConnector$5
  private final ObjectInputStreamWithLoader = javax.management.remote.rmi.RMIConnector$ObjectInputStreamWithLoader of javax.management.remote.rmi.RMIConnector
  private RMIClientCommunicatorAdmin = javax.management.remote.rmi.RMIConnector$RMIClientCommunicatorAdmin of javax.management.remote.rmi.RMIConnector
  private RMINotifClient = javax.management.remote.rmi.RMIConnector$RMINotifClient of javax.management.remote.rmi.RMIConnector
  private RemoteMBeanServerConnection = javax.management.remote.rmi.RMIConnector$RemoteMBeanServerConnection of javax.management.remote.rmi.RMIConnector