public abstract class com.sun.jmx.snmp.daemon.CommunicatorServer implements java.lang.Runnable, javax.management.MBeanRegistration, javax.management.NotificationBroadcaster, com.sun.jmx.snmp.daemon.CommunicatorServerMBean
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.sun.jmx.snmp.daemon.CommunicatorServer
  super_class: java.lang.Object
{
  public static final int ONLINE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int OFFLINE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int STOPPING;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int STARTING;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final int SNMP_TYPE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  volatile transient int state;
    descriptor: I
    flags: (0x00c0) ACC_VOLATILE, ACC_TRANSIENT

  javax.management.ObjectName objectName;
    descriptor: Ljavax/management/ObjectName;
    flags: (0x0000) 

  javax.management.MBeanServer topMBS;
    descriptor: Ljavax/management/MBeanServer;
    flags: (0x0000) 

  javax.management.MBeanServer bottomMBS;
    descriptor: Ljavax/management/MBeanServer;
    flags: (0x0000) 

  transient java.lang.String dbgTag;
    descriptor: Ljava/lang/String;
    flags: (0x0080) ACC_TRANSIENT

  int maxActiveClientCount;
    descriptor: I
    flags: (0x0000) 

  transient int servedClientCount;
    descriptor: I
    flags: (0x0080) ACC_TRANSIENT

  java.lang.String host;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

  int port;
    descriptor: I
    flags: (0x0000) 

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

  private transient java.util.Vector<com.sun.jmx.snmp.daemon.ClientHandler> clientHandlerVector;
    descriptor: Ljava/util/Vector;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: Ljava/util/Vector<Lcom/sun/jmx/snmp/daemon/ClientHandler;>;

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

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

  private volatile boolean stopRequested;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

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

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

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

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

  private transient javax.management.MBeanNotificationInfo[] notifInfos;
    descriptor: [Ljavax/management/MBeanNotificationInfo;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  public void <init>(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // int connectorType
         0: .line 253
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 179
            aload 0 /* this */
            iconst_1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
         2: .line 192
            aload 0 /* this */
            aconst_null
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         3: .line 199
            aload 0 /* this */
            iconst_1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.maxActiveClientCount:I
         4: .line 203
            aload 0 /* this */
            iconst_0
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.servedClientCount:I
         5: .line 209
            aload 0 /* this */
            aconst_null
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.host:Ljava/lang/String;
         6: .line 215
            aload 0 /* this */
            iconst_m1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.port:I
         7: .line 225
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
         8: .line 228
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
         9: .line 230
            aload 0 /* this */
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.fatherThread:Ljava/lang/Thread;
        10: .line 231
            aload 0 /* this */
            aconst_null
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.mainThread:Ljava/lang/Thread;
        11: .line 233
            aload 0 /* this */
            iconst_0
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stopRequested:Z
        12: .line 234
            aload 0 /* this */
            iconst_0
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
        13: .line 235
            aload 0 /* this */
            aconst_null
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
        14: .line 238
            aload 0 /* this */
            lconst_0
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
        15: .line 239
            aload 0 /* this */
        16: .line 240
            new javax.management.NotificationBroadcasterSupport
            dup
            invokespecial javax.management.NotificationBroadcasterSupport.<init>:()V
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
        17: .line 241
            aload 0 /* this */
            aconst_null
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
        18: .line 255
            iload 1 /* connectorType */
            tableswitch { // 4 - 4
                    4: 19
              default: 20
          }
        19: .line 258
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int
      StackMap stack:
            goto 21
        20: .line 260
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Invalid connector Type"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 262
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.makeDebugTag:()Ljava/lang/String;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        22: .line 263
            return
        end local 1 // int connectorType
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   23     0           this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   23     1  connectorType  I
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
               Name  Flags
      connectorType  

  protected java.lang.Thread createMainThread();
    descriptor: ()Ljava/lang/Thread;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 266
            new java.lang.Thread
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.makeThreadName:()Ljava/lang/String;
            invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;Ljava/lang/String;)V
            areturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;

  public void start(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // long timeout
         0: .line 290
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 4
            monitorenter
         1: .line 291
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iconst_2
            if_icmpne 3
         2: .line 294
            aload 0 /* this */
            iconst_1
            ldc 60000
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitState:(IJ)Z
            pop
         3: .line 296
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer long top java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iconst_1
            if_icmpne 4
            iconst_1
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 3 /* start */
        start local 3 // boolean start
         6: .line 297
            iload 3 /* start */
            ifeq 11
         7: .line 298
            aload 0 /* this */
            iconst_3
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
         8: .line 299
            aload 0 /* this */
            iconst_0
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stopRequested:Z
         9: .line 300
            aload 0 /* this */
            iconst_0
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
        10: .line 301
            aload 0 /* this */
            aconst_null
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
        11: .line 290
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer long int java.lang.Object
      StackMap stack:
            aload 4
            monitorexit
        12: goto 15
        end local 3 // boolean start
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer long top java.lang.Object
      StackMap stack: java.lang.Throwable
        13: aload 4
            monitorexit
        14: athrow
        start local 3 // boolean start
        15: .line 305
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer long int
      StackMap stack:
            iload 3 /* start */
            ifne 21
        16: .line 306
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 20
        17: .line 307
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        18: .line 308
            ldc "start"
            ldc "Connector is not OFFLINE"
        19: .line 307
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        20: .line 310
      StackMap locals:
      StackMap stack:
            return
        21: .line 313
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 25
        22: .line 314
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        23: .line 315
            ldc "start"
            ldc "--> Start connector "
        24: .line 314
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        25: .line 318
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.createMainThread:()Ljava/lang/Thread;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.mainThread:Ljava/lang/Thread;
        26: .line 320
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.mainThread:Ljava/lang/Thread;
            invokevirtual java.lang.Thread.start:()V
        27: .line 322
            lload 1 /* timeout */
            lconst_0
            lcmp
            ifle 28
            aload 0 /* this */
            lload 1 /* timeout */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitForStart:(J)V
        28: .line 323
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean start
        end local 1 // long timeout
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   29     0     this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   29     1  timeout  J
            6   13     3    start  Z
           15   29     3    start  Z
      Exception table:
        from    to  target  type
           1    12      13  any
          13    14      13  any
    Exceptions:
      throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException
    MethodParameters:
         Name  Flags
      timeout  

  public void start();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 333
            aload 0 /* this */
            lconst_0
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.start:(J)V
         1: .line 334
            goto 7
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
         2: astore 1 /* x */
        start local 1 // java.lang.InterruptedException x
         3: .line 336
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 7
         4: .line 337
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         5: .line 338
            ldc "start"
            ldc "interrupted"
            aload 1 /* x */
         6: .line 337
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 1 // java.lang.InterruptedException x
         7: .line 341
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            3    7     1     x  Ljava/lang/InterruptedException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.InterruptedException

  public void stop();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 350
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 351
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iconst_1
            if_icmpeq 2
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iconst_2
            if_icmpne 8
         2: .line 352
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 6
         3: .line 353
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         4: .line 354
            ldc "stop"
            ldc "Connector is not ONLINE"
         5: .line 353
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         6: .line 356
      StackMap locals:
      StackMap stack:
            aload 1
            monitorexit
         7: return
         8: .line 358
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
         9: .line 362
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 13
        10: .line 363
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        11: .line 364
            ldc "stop"
            ldc "Interrupt main thread"
        12: .line 363
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        13: .line 366
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stopRequested:Z
        14: .line 367
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
            ifne 17
        15: .line 368
            aload 0 /* this */
            iconst_1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
        16: .line 369
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.mainThread:Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
        17: .line 350
      StackMap locals:
      StackMap stack:
            aload 1
            monitorexit
        18: goto 21
      StackMap locals:
      StackMap stack: java.lang.Throwable
        19: aload 1
            monitorexit
        20: athrow
        21: .line 376
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 25
        22: .line 377
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        23: .line 378
            ldc "stop"
            ldc "terminateAllClient"
        24: .line 377
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        25: .line 380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.terminateAllClient:()V
        26: .line 385
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
        27: .line 386
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iconst_3
            if_icmpne 29
        28: .line 387
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        29: .line 385
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1
            monitorexit
        30: goto 33
      StackMap locals:
      StackMap stack: java.lang.Throwable
        31: aload 1
            monitorexit
        32: athrow
        33: .line 389
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   34     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
      Exception table:
        from    to  target  type
           1     7      19  any
           8    18      19  any
          19    20      19  any
          27    30      31  any
          31    32      31  any

  public boolean isActive();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 397
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 398
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            ifne 2
            iconst_1
            goto 3
      StackMap locals: java.lang.Object
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: aload 1
            monitorexit
         4: ireturn
         5: .line 397
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         6: athrow
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any

  public boolean waitState(int, long);
    descriptor: (IJ)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=9, args_size=3
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // int wantedState
        start local 2 // long timeOut
         0: .line 435
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 5
         1: .line 436
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         2: .line 437
            ldc "waitState"
            new java.lang.StringBuilder
            dup
            iload 1 /* wantedState */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "(0on,1off,2st) TO="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            lload 2 /* timeOut */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
         3: .line 438
            ldc " ; current state = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getStateString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 436
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         5: .line 441
      StackMap locals:
      StackMap stack:
            lconst_0
            lstore 4 /* endTime */
        start local 4 // long endTime
         6: .line 442
            lload 2 /* timeOut */
            lconst_0
            lcmp
            ifle 8
         7: .line 443
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 2 /* timeOut */
            ladd
            lstore 4 /* endTime */
         8: .line 445
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 6
            monitorenter
         9: .line 446
            goto 39
        10: .line 447
      StackMap locals: java.lang.Object
      StackMap stack:
            lload 2 /* timeOut */
            lconst_0
            lcmp
            ifge 17
        11: .line 448
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 15
        12: .line 449
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        13: .line 450
            ldc "waitState"
            ldc "timeOut < 0, return without wait"
        14: .line 449
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        15: .line 452
      StackMap locals:
      StackMap stack:
            aload 6
            monitorexit
        16: iconst_0
            ireturn
        17: .line 455
      StackMap locals:
      StackMap stack:
            lload 2 /* timeOut */
            lconst_0
            lcmp
            ifle 28
        18: .line 456
            lload 4 /* endTime */
            invokestatic java.lang.System.currentTimeMillis:()J
            lsub
            lstore 7 /* toWait */
        start local 7 // long toWait
        19: .line 457
            lload 7 /* toWait */
            lconst_0
            lcmp
            ifgt 26
        20: .line 458
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 24
        21: .line 459
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        22: .line 460
            ldc "waitState"
            ldc "timed out"
        23: .line 459
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        24: .line 462
      StackMap locals: long
      StackMap stack:
            aload 6
            monitorexit
        25: iconst_0
            ireturn
        26: .line 464
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            lload 7 /* toWait */
            invokevirtual java.lang.Object.wait:(J)V
        end local 7 // long toWait
        27: .line 465
            goto 39
        28: .line 466
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            invokevirtual java.lang.Object.wait:()V
        29: .line 468
            goto 39
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        30: pop
        31: .line 469
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 35
        32: .line 470
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        33: .line 471
            ldc "waitState"
            ldc "wait interrupted"
        34: .line 470
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        35: .line 473
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iload 1 /* wantedState */
            if_icmpne 36
            iconst_1
            goto 37
      StackMap locals:
      StackMap stack:
        36: iconst_0
      StackMap locals:
      StackMap stack: int
        37: aload 6
            monitorexit
        38: ireturn
        39: .line 446
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iload 1 /* wantedState */
            if_icmpne 10
        40: .line 477
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 44
        41: .line 478
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        42: .line 479
            ldc "waitState"
            ldc "returning in desired state"
        43: .line 478
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        44: .line 481
      StackMap locals:
      StackMap stack:
            aload 6
            monitorexit
        45: iconst_1
            ireturn
        46: .line 445
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 6
            monitorexit
        47: athrow
        end local 4 // long endTime
        end local 2 // long timeOut
        end local 1 // int wantedState
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   48     0         this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   48     1  wantedState  I
            0   48     2      timeOut  J
            6   48     4      endTime  J
           19   27     7       toWait  J
      Exception table:
        from    to  target  type
          17    24      30  Class java.lang.InterruptedException
          26    29      30  Class java.lang.InterruptedException
           9    16      46  any
          17    25      46  any
          26    38      46  any
          39    45      46  any
          46    47      46  any
    MethodParameters:
             Name  Flags
      wantedState  
      timeOut      

  private void waitForStart(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=11, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // long timeout
         0: .line 504
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 5
         1: .line 505
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         2: .line 506
            ldc "waitForStart"
            new java.lang.StringBuilder
            dup
            ldc "Timeout="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            lload 1 /* timeout */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
         3: .line 507
            ldc " ; current state = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getStateString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 505
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         5: .line 510
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 3 /* startTime */
        start local 3 // long startTime
         6: .line 512
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 5
            monitorenter
         7: .line 513
            goto 24
         8: .line 516
      StackMap locals: long java.lang.Object
      StackMap stack:
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 3 /* startTime */
            lsub
            lstore 6 /* elapsed */
        start local 6 // long elapsed
         9: .line 523
            lload 1 /* timeout */
            lload 6 /* elapsed */
            lsub
            lstore 8 /* remainingTime */
        start local 8 // long remainingTime
        10: .line 527
            lload 8 /* remainingTime */
            lconst_0
            lcmp
            ifge 16
        11: .line 528
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 15
        12: .line 529
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        13: .line 530
            ldc "waitForStart"
            ldc "timeout < 0, return without wait"
        14: .line 529
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        15: .line 532
      StackMap locals: long long
      StackMap stack:
            new java.lang.InterruptedException
            dup
            ldc "Timeout expired"
            invokespecial java.lang.InterruptedException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 540
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            lload 8 /* remainingTime */
            invokevirtual java.lang.Object.wait:(J)V
        17: .line 541
            goto 24
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        18: astore 10 /* e */
        start local 10 // java.lang.InterruptedException e
        19: .line 542
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 23
        20: .line 543
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        21: .line 544
            ldc "waitForStart"
            ldc "wait interrupted"
        22: .line 543
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        23: .line 551
      StackMap locals: java.lang.InterruptedException
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            ifeq 24
            aload 10 /* e */
            athrow
        end local 10 // java.lang.InterruptedException e
        end local 8 // long remainingTime
        end local 6 // long elapsed
        24: .line 513
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iconst_3
            if_icmpeq 8
        25: .line 557
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            ifne 32
        26: .line 560
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 30
        27: .line 561
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        28: .line 562
            ldc "waitForStart"
            ldc "started"
        29: .line 561
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        30: .line 564
      StackMap locals:
      StackMap stack:
            aload 5
            monitorexit
        31: return
        32: .line 565
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
            instanceof com.sun.jmx.snmp.daemon.CommunicationException
            ifeq 34
        33: .line 569
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
            checkcast com.sun.jmx.snmp.daemon.CommunicationException
            athrow
        34: .line 570
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
            instanceof java.lang.InterruptedException
            ifeq 36
        35: .line 574
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
            checkcast java.lang.InterruptedException
            athrow
        36: .line 575
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
            ifnull 42
        37: .line 579
            new com.sun.jmx.snmp.daemon.CommunicationException
            dup
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
        38: .line 580
            new java.lang.StringBuilder
            dup
            ldc "Failed to start: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        39: .line 581
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        40: .line 580
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        41: .line 579
            invokespecial com.sun.jmx.snmp.daemon.CommunicationException.<init>:(Ljava/lang/Throwable;Ljava/lang/String;)V
            athrow
        42: .line 586
      StackMap locals:
      StackMap stack:
            new com.sun.jmx.snmp.daemon.CommunicationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Failed to start: state is "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        43: .line 587
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            invokestatic com.sun.jmx.snmp.daemon.CommunicatorServer.getStringForState:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        44: .line 586
            invokespecial com.sun.jmx.snmp.daemon.CommunicationException.<init>:(Ljava/lang/String;)V
            athrow
        45: .line 512
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 5
            monitorexit
        46: athrow
        end local 3 // long startTime
        end local 1 // long timeout
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   47     0           this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   47     1        timeout  J
            6   47     3      startTime  J
            9   24     6        elapsed  J
           10   24     8  remainingTime  J
           19   24    10              e  Ljava/lang/InterruptedException;
      Exception table:
        from    to  target  type
          16    17      18  Class java.lang.InterruptedException
           7    31      45  any
          32    46      45  any
    Exceptions:
      throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException
    MethodParameters:
         Name  Flags
      timeout  

  public int getState();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 599
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 600
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            aload 1
            monitorexit
         2: ireturn
         3: .line 599
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         4: athrow
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  public java.lang.String getStateString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 611
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            invokestatic com.sun.jmx.snmp.daemon.CommunicatorServer.getStringForState:(I)Ljava/lang/String;
            areturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;

  public java.lang.String getHost();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 621
            aload 0 /* this */
            invokestatic java.net.InetAddress.getLocalHost:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.getHostName:()Ljava/lang/String;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.host:Ljava/lang/String;
         1: .line 622
            goto 4
      StackMap locals:
      StackMap stack: java.lang.Exception
         2: pop
         3: .line 623
            aload 0 /* this */
            ldc "Unknown host"
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.host:Ljava/lang/String;
         4: .line 625
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.host:Ljava/lang/String;
            areturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception

  public int getPort();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 634
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 635
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.port:I
            aload 1
            monitorexit
         2: ireturn
         3: .line 634
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         4: athrow
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  public void setPort(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // int port
         0: .line 649
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 650
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            ifeq 2
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iconst_3
            if_icmpne 3
         2: .line 651
      StackMap locals: java.lang.Object
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            ldc "Stop server before carrying out this operation"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 653
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* port */
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.port:I
         4: .line 654
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.makeDebugTag:()Ljava/lang/String;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         5: .line 649
            aload 2
            monitorexit
         6: goto 9
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: aload 2
            monitorexit
         8: athrow
         9: .line 656
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int port
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   10     1  port  I
      Exception table:
        from    to  target  type
           1     6       7  any
           7     8       7  any
    Exceptions:
      throws java.lang.IllegalStateException
    MethodParameters:
      Name  Flags
      port  

  public abstract java.lang.String getProtocol();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  int getServedClientCount();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 674
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.servedClientCount:I
            ireturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;

  int getActiveClientCount();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 685
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            istore 1 /* result */
        start local 1 // int result
         1: .line 686
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            1    2     1  result  I

  int getMaxActiveClientCount();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 698
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.maxActiveClientCount:I
            ireturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;

  void setMaxActiveClientCount(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // int c
         0: .line 712
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 713
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            ifeq 2
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iconst_3
            if_icmpne 5
         2: .line 714
      StackMap locals: java.lang.Object
      StackMap stack:
            new java.lang.IllegalStateException
            dup
         3: .line 715
            ldc "Stop server before carrying out this operation"
         4: .line 714
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 717
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.maxActiveClientCount:I
         6: .line 712
            aload 2
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        10: .line 719
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int c
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   11     1     c  I
      Exception table:
        from    to  target  type
           1     7       8  any
           8     9       8  any
    Exceptions:
      throws java.lang.IllegalStateException
    MethodParameters:
      Name  Flags
      c     

  void notifyClientHandlerCreated(com.sun.jmx.snmp.daemon.ClientHandler);
    descriptor: (Lcom/sun/jmx/snmp/daemon/ClientHandler;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // com.sun.jmx.snmp.daemon.ClientHandler h
         0: .line 725
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
            aload 1 /* h */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         1: .line 726
            return
        end local 1 // com.sun.jmx.snmp.daemon.ClientHandler h
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0    2     1     h  Lcom/sun/jmx/snmp/daemon/ClientHandler;
    MethodParameters:
      Name  Flags
      h     

  synchronized void notifyClientHandlerDeleted(com.sun.jmx.snmp.daemon.ClientHandler);
    descriptor: (Lcom/sun/jmx/snmp/daemon/ClientHandler;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // com.sun.jmx.snmp.daemon.ClientHandler h
         0: .line 732
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
            aload 1 /* h */
            invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
            pop
         1: .line 733
            aload 0 /* this */
            invokevirtual java.lang.Object.notifyAll:()V
         2: .line 734
            return
        end local 1 // com.sun.jmx.snmp.daemon.ClientHandler h
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0    3     1     h  Lcom/sun/jmx/snmp/daemon/ClientHandler;
    MethodParameters:
      Name  Flags
      h     

  protected int getBindTries();
    descriptor: ()I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 741
            bipush 50
            ireturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;

  protected long getBindSleepTime();
    descriptor: ()J
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 749
            ldc 100
            lreturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 764
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: .line 765
            iconst_0
            istore 2 /* success */
        start local 2 // boolean success
         2: .line 773
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getBindTries:()I
            istore 3 /* bindRetries */
        start local 3 // int bindRetries
         3: .line 774
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getBindSleepTime:()J
            lstore 4 /* sleepTime */
        start local 4 // long sleepTime
         4: .line 775
            goto 14
         5: .line 779
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int int long
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doBind:()V
         6: .line 780
            iconst_1
            istore 2 /* success */
         7: .line 781
            goto 14
      StackMap locals:
      StackMap stack: com.sun.jmx.snmp.daemon.CommunicationException
         8: pop
         9: .line 782
            iinc 1 /* i */ 1
        10: .line 784
            lload 4 /* sleepTime */
            invokestatic java.lang.Thread.sleep:(J)V
        11: .line 785
            goto 14
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        12: astore 6 /* ie */
        start local 6 // java.lang.InterruptedException ie
        13: .line 786
            aload 6 /* ie */
            athrow
        end local 6 // java.lang.InterruptedException ie
        14: .line 775
      StackMap locals:
      StackMap stack:
            iload 1 /* i */
            iload 3 /* bindRetries */
            if_icmpge 15
            iload 2 /* success */
            ifeq 5
        15: .line 792
      StackMap locals:
      StackMap stack:
            iload 2 /* success */
            ifne 36
        16: .line 795
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doBind:()V
        end local 4 // long sleepTime
        end local 3 // int bindRetries
        17: .line 798
            goto 36
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
      StackMap stack: java.lang.Exception
        18: astore 3 /* x */
        start local 3 // java.lang.Exception x
        19: .line 799
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 23
        20: .line 800
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        21: .line 801
            ldc "run"
            ldc "Got unexpected exception"
            aload 3 /* x */
        22: .line 800
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
        23: .line 803
      StackMap locals: java.lang.Exception
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 4
            monitorenter
        24: .line 804
            aload 0 /* this */
            aload 3 /* x */
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
        25: .line 805
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        26: .line 803
            aload 4
            monitorexit
        27: goto 30
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int java.lang.Exception java.lang.Object
      StackMap stack: java.lang.Throwable
        28: aload 4
            monitorexit
        29: athrow
        30: .line 807
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 34
        31: .line 808
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        32: .line 809
            ldc "run"
            ldc "State is OFFLINE"
        33: .line 808
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        34: .line 811
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* x */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doError:(Ljava/lang/Exception;)V
        35: .line 812
            return
        end local 3 // java.lang.Exception x
        36: .line 819
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        37: .line 820
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 46
        38: .line 821
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        39: .line 822
            ldc "run"
            ldc "State is ONLINE"
        40: .line 821
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        41: .line 828
            goto 46
        42: .line 829
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.servedClientCount:I
            iconst_1
            iadd
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.servedClientCount:I
        43: .line 830
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doReceive:()V
        44: .line 831
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitIfTooManyClients:()V
        45: .line 832
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doProcess:()V
        46: .line 828
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stopRequested:Z
            ifeq 42
        47: .line 834
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 131
        48: .line 835
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        49: .line 836
            ldc "run"
            ldc "Stop has been requested"
        50: .line 835
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        51: .line 839
            goto 131
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        52: pop
        53: .line 840
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 57
        54: .line 841
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        55: .line 842
            ldc "run"
            ldc "Interrupt caught"
        56: .line 841
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        57: .line 844
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        58: .line 852
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 5
            monitorenter
        59: .line 853
            aload 0 /* this */
            iconst_1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
        60: .line 854
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            pop
            invokestatic java.lang.Thread.interrupted:()Z
            pop
        61: .line 852
            aload 5
            monitorexit
        62: goto 65
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Object
      StackMap stack: java.lang.Throwable
        63: aload 5
            monitorexit
        64: athrow
        65: .line 861
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doUnbind:()V
        66: .line 862
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitClientTermination:()V
        67: .line 863
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        68: .line 864
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 152
        69: .line 865
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        70: .line 866
            ldc "run"
            ldc "State is OFFLINE"
        71: .line 865
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        72: .line 868
            goto 152
      StackMap locals:
      StackMap stack: java.lang.Exception
        73: astore 5 /* x */
        start local 5 // java.lang.Exception x
        74: .line 869
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 78
        75: .line 870
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        76: .line 871
            ldc "run"
            ldc "Got unexpected exception"
            aload 5 /* x */
        77: .line 870
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
        78: .line 873
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Exception
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        end local 5 // java.lang.Exception x
        79: goto 152
        80: .line 845
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
      StackMap stack: java.lang.Exception
            astore 3 /* x */
        start local 3 // java.lang.Exception x
        81: .line 846
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 85
        82: .line 847
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        83: .line 848
            ldc "run"
            ldc "Got unexpected exception"
            aload 3 /* x */
        84: .line 847
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
        85: .line 850
      StackMap locals: java.lang.Exception
      StackMap stack:
            aload 0 /* this */
            iconst_2
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        end local 3 // java.lang.Exception x
        86: .line 852
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 5
            monitorenter
        87: .line 853
            aload 0 /* this */
            iconst_1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
        88: .line 854
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            pop
            invokestatic java.lang.Thread.interrupted:()Z
            pop
        89: .line 852
            aload 5
            monitorexit
        90: goto 93
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Object
      StackMap stack: java.lang.Throwable
        91: aload 5
            monitorexit
        92: athrow
        93: .line 861
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doUnbind:()V
        94: .line 862
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitClientTermination:()V
        95: .line 863
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        96: .line 864
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 152
        97: .line 865
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        98: .line 866
            ldc "run"
            ldc "State is OFFLINE"
        99: .line 865
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
       100: .line 868
            goto 152
      StackMap locals:
      StackMap stack: java.lang.Exception
       101: astore 5 /* x */
        start local 5 // java.lang.Exception x
       102: .line 869
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 106
       103: .line 870
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
       104: .line 871
            ldc "run"
            ldc "Got unexpected exception"
            aload 5 /* x */
       105: .line 870
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
       106: .line 873
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Exception
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        end local 5 // java.lang.Exception x
       107: goto 152
       108: .line 851
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
      StackMap stack: java.lang.Throwable
            astore 4
       109: .line 852
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 5
            monitorenter
       110: .line 853
            aload 0 /* this */
            iconst_1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
       111: .line 854
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            pop
            invokestatic java.lang.Thread.interrupted:()Z
            pop
       112: .line 852
            aload 5
            monitorexit
       113: goto 116
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top java.lang.Throwable java.lang.Object
      StackMap stack: java.lang.Throwable
       114: aload 5
            monitorexit
       115: athrow
       116: .line 861
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doUnbind:()V
       117: .line 862
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitClientTermination:()V
       118: .line 863
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
       119: .line 864
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 130
       120: .line 865
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
       121: .line 866
            ldc "run"
            ldc "State is OFFLINE"
       122: .line 865
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
       123: .line 868
            goto 130
      StackMap locals:
      StackMap stack: java.lang.Exception
       124: astore 5 /* x */
        start local 5 // java.lang.Exception x
       125: .line 869
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 129
       126: .line 870
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
       127: .line 871
            ldc "run"
            ldc "Got unexpected exception"
            aload 5 /* x */
       128: .line 870
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
       129: .line 873
      StackMap locals: java.lang.Exception
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        end local 5 // java.lang.Exception x
       130: .line 876
      StackMap locals:
      StackMap stack:
            aload 4
            athrow
       131: .line 852
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 5
            monitorenter
       132: .line 853
            aload 0 /* this */
            iconst_1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
       133: .line 854
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            pop
            invokestatic java.lang.Thread.interrupted:()Z
            pop
       134: .line 852
            aload 5
            monitorexit
       135: goto 138
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Object
      StackMap stack: java.lang.Throwable
       136: aload 5
            monitorexit
       137: athrow
       138: .line 861
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doUnbind:()V
       139: .line 862
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitClientTermination:()V
       140: .line 863
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
       141: .line 864
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 152
       142: .line 865
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
       143: .line 866
            ldc "run"
            ldc "State is OFFLINE"
       144: .line 865
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
       145: .line 868
            goto 152
      StackMap locals:
      StackMap stack: java.lang.Exception
       146: astore 5 /* x */
        start local 5 // java.lang.Exception x
       147: .line 869
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 151
       148: .line 870
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
       149: .line 871
            ldc "run"
            ldc "Got unexpected exception"
            aload 5 /* x */
       150: .line 870
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
       151: .line 873
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Exception
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
        end local 5 // java.lang.Exception x
       152: .line 877
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
      StackMap stack:
            return
        end local 2 // boolean success
        end local 1 // int i
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0  153     0         this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            1  153     1            i  I
            2  153     2      success  Z
            3   17     3  bindRetries  I
            4   17     4    sleepTime  J
           13   14     6           ie  Ljava/lang/InterruptedException;
           19   36     3            x  Ljava/lang/Exception;
           81   86     3            x  Ljava/lang/Exception;
           74   79     5            x  Ljava/lang/Exception;
          102  107     5            x  Ljava/lang/Exception;
          125  130     5            x  Ljava/lang/Exception;
          147  152     5            x  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           5     7       8  Class com.sun.jmx.snmp.daemon.CommunicationException
          10    11      12  Class java.lang.InterruptedException
           2    17      18  Class java.lang.Exception
          24    27      28  any
          28    29      28  any
          36    51      52  Class java.lang.InterruptedException
          59    62      63  any
          63    64      63  any
          65    72      73  Class java.lang.Exception
          36    51      80  Class java.lang.Exception
          87    90      91  any
          91    92      91  any
          93   100     101  Class java.lang.Exception
          36    58     108  any
          80    86     108  any
         110   113     114  any
         114   115     114  any
         116   123     124  Class java.lang.Exception
         132   135     136  any
         136   137     136  any
         138   145     146  Class java.lang.Exception

  protected abstract void doError(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws com.sun.jmx.snmp.daemon.CommunicationException
    MethodParameters:
      Name  Flags
      e     

  protected abstract void doBind();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException

  protected abstract void doReceive();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException

  protected abstract void doProcess();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException

  protected abstract void doUnbind();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException

  public synchronized javax.management.MBeanServer getMBeanServer();
    descriptor: ()Ljavax/management/MBeanServer;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 941
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.topMBS:Ljavax/management/MBeanServer;
            areturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;

  public synchronized void setMBeanServer(javax.management.MBeanServer);
    descriptor: (Ljavax/management/MBeanServer;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // javax.management.MBeanServer newMBS
         0: .line 964
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 965
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            ifeq 2
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iconst_3
            if_icmpne 3
         2: .line 966
      StackMap locals: java.lang.Object
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            ldc "Stop server before carrying out this operation"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 964
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
         4: goto 7
      StackMap locals:
      StackMap stack: java.lang.Throwable
         5: aload 2
            monitorexit
         6: athrow
         7: .line 973
      StackMap locals:
      StackMap stack:
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 2 /* seenMBS */
        start local 2 // java.util.Vector seenMBS
         8: .line 974
            aload 1 /* newMBS */
            astore 3 /* mbs */
        start local 3 // javax.management.MBeanServer mbs
         9: .line 975
            goto 16
        10: .line 977
      StackMap locals: java.util.Vector javax.management.MBeanServer
      StackMap stack:
            aload 3 /* mbs */
            instanceof javax.management.remote.MBeanServerForwarder
            ifne 12
        11: .line 978
            new java.lang.IllegalArgumentException
            dup
            ldc "MBeanServer argument must be MBean server where this server is registered, or an MBeanServerForwarder leading to that server"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 979
      StackMap locals:
      StackMap stack:
            aload 2 /* seenMBS */
            aload 3 /* mbs */
            invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
            ifeq 14
        13: .line 980
            new java.lang.IllegalArgumentException
            dup
            ldc "MBeanServerForwarder loop"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 982
      StackMap locals:
      StackMap stack:
            aload 2 /* seenMBS */
            aload 3 /* mbs */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        15: .line 976
            aload 3 /* mbs */
            checkcast javax.management.remote.MBeanServerForwarder
            invokeinterface javax.management.remote.MBeanServerForwarder.getMBeanServer:()Ljavax/management/MBeanServer;
            astore 3 /* mbs */
        16: .line 975
      StackMap locals:
      StackMap stack:
            aload 3 /* mbs */
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
            if_acmpne 10
        end local 3 // javax.management.MBeanServer mbs
        17: .line 984
            aload 0 /* this */
            aload 1 /* newMBS */
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.topMBS:Ljavax/management/MBeanServer;
        18: .line 985
            return
        end local 2 // java.util.Vector seenMBS
        end local 1 // javax.management.MBeanServer newMBS
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   19     1   newMBS  Ljavax/management/MBeanServer;
            8   19     2  seenMBS  Ljava/util/Vector<Ljavax/management/MBeanServer;>;
            9   17     3      mbs  Ljavax/management/MBeanServer;
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalStateException
    MethodParameters:
        Name  Flags
      newMBS  

  javax.management.ObjectName getObjectName();
    descriptor: ()Ljavax/management/ObjectName;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 994
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.objectName:Ljavax/management/ObjectName;
            areturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;

  void changeState(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // int newState
         0: .line 1002
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         1: .line 1003
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            iload 1 /* newState */
            if_icmpne 4
         2: .line 1004
            aload 3
            monitorexit
         3: return
         4: .line 1005
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int top java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
            istore 2 /* oldState */
        start local 2 // int oldState
         5: .line 1006
            aload 0 /* this */
            iload 1 /* newState */
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
         6: .line 1007
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
            invokevirtual java.lang.Object.notifyAll:()V
         7: .line 1002
            aload 3
            monitorexit
         8: goto 11
        end local 2 // int oldState
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 3
            monitorexit
        10: athrow
        start local 2 // int oldState
        11: .line 1009
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* oldState */
            iload 1 /* newState */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.sendStateChangeNotification:(II)V
        12: .line 1010
            return
        end local 2 // int oldState
        end local 1 // int newState
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   13     1  newState  I
            5    9     2  oldState  I
           11   13     2  oldState  I
      Exception table:
        from    to  target  type
           1     3       9  any
           4     8       9  any
           9    10       9  any
    MethodParameters:
          Name  Flags
      newState  

  java.lang.String makeDebugTag();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 1016
            new java.lang.StringBuilder
            dup
            ldc "CommunicatorServer["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getProtocol:()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 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getPort:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;

  java.lang.String makeThreadName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 1025
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.objectName:Ljavax/management/ObjectName;
            ifnonnull 3
         1: .line 1026
            ldc "CommunicatorServer"
            astore 1 /* result */
        start local 1 // java.lang.String result
         2: goto 4
        end local 1 // java.lang.String result
         3: .line 1028
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.objectName:Ljavax/management/ObjectName;
            invokevirtual javax.management.ObjectName.toString:()Ljava/lang/String;
            astore 1 /* result */
        start local 1 // java.lang.String result
         4: .line 1030
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* result */
            areturn
        end local 1 // java.lang.String result
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            2    3     1  result  Ljava/lang/String;
            4    5     1  result  Ljava/lang/String;

  private synchronized void waitIfTooManyClients();
    descriptor: ()V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 1040
            goto 6
         1: .line 1041
      StackMap locals:
      StackMap stack:
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 5
         2: .line 1042
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         3: .line 1043
            ldc "waitIfTooManyClients"
            ldc "Waiting for a client to terminate"
         4: .line 1042
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         5: .line 1045
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.Object.wait:()V
         6: .line 1040
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getActiveClientCount:()I
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.maxActiveClientCount:I
            if_icmpge 1
         7: .line 1047
            return
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
    Exceptions:
      throws java.lang.InterruptedException

  private void waitClientTermination();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=3, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 1053
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            istore 1 /* s */
        start local 1 // int s
         1: .line 1054
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 15
         2: .line 1055
            iload 1 /* s */
            iconst_1
            if_icmplt 15
         3: .line 1056
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         4: .line 1057
            ldc "waitClientTermination"
            new java.lang.StringBuilder
            dup
            ldc "waiting for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         5: .line 1058
            iload 1 /* s */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " clients to terminate"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 1056
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         7: .line 1074
            goto 15
         8: .line 1076
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
            invokevirtual java.util.Vector.firstElement:()Ljava/lang/Object;
            checkcast com.sun.jmx.snmp.daemon.ClientHandler
            invokevirtual com.sun.jmx.snmp.daemon.ClientHandler.join:()V
         9: .line 1077
            goto 15
      StackMap locals:
      StackMap stack: java.util.NoSuchElementException
        10: astore 2 /* x */
        start local 2 // java.util.NoSuchElementException x
        11: .line 1078
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 15
        12: .line 1079
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        13: .line 1080
            ldc "waitClientTermination"
            ldc "No elements left"
            aload 2 /* x */
        14: .line 1079
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 2 // java.util.NoSuchElementException x
        15: .line 1074
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
            invokevirtual java.util.Vector.isEmpty:()Z
            ifeq 8
        16: .line 1085
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 21
        17: .line 1086
            iload 1 /* s */
            iconst_1
            if_icmplt 21
        18: .line 1087
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        19: .line 1088
            ldc "waitClientTermination"
            ldc "Ok, let's go..."
        20: .line 1087
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        21: .line 1091
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int s
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            1   22     1     s  I
           11   15     2     x  Ljava/util/NoSuchElementException;
      Exception table:
        from    to  target  type
           8     9      10  Class java.util.NoSuchElementException

  private void terminateAllClient();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=8, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 1097
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            istore 1 /* s */
        start local 1 // int s
         1: .line 1098
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 6
         2: .line 1099
            iload 1 /* s */
            iconst_1
            if_icmplt 6
         3: .line 1100
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         4: .line 1101
            ldc "terminateAllClient"
            new java.lang.StringBuilder
            dup
            ldc "Interrupting "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* s */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " clients"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 1100
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         6: .line 1123
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
            iconst_0
            anewarray com.sun.jmx.snmp.daemon.ClientHandler
            invokevirtual java.util.Vector.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast com.sun.jmx.snmp.daemon.ClientHandler[]
         7: .line 1122
            astore 2 /* handlers */
        start local 2 // com.sun.jmx.snmp.daemon.ClientHandler[] handlers
         8: .line 1124
            aload 2 /* handlers */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 20
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int com.sun.jmx.snmp.daemon.ClientHandler[] top int int com.sun.jmx.snmp.daemon.ClientHandler[]
      StackMap stack:
         9: aload 6
            iload 4
            aaload
            astore 3 /* h */
        start local 3 // com.sun.jmx.snmp.daemon.ClientHandler h
        10: .line 1126
            aload 3 /* h */
            invokevirtual com.sun.jmx.snmp.daemon.ClientHandler.interrupt:()V
        11: .line 1127
            goto 19
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int com.sun.jmx.snmp.daemon.ClientHandler[] com.sun.jmx.snmp.daemon.ClientHandler int int com.sun.jmx.snmp.daemon.ClientHandler[]
      StackMap stack: java.lang.Exception
        12: astore 7 /* x */
        start local 7 // java.lang.Exception x
        13: .line 1128
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 19
        14: .line 1129
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        15: .line 1130
            ldc "terminateAllClient"
        16: .line 1131
            ldc "Failed to interrupt pending request. Ignore the exception."
        17: .line 1132
            aload 7 /* x */
        18: .line 1129
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 7 // java.lang.Exception x
        end local 3 // com.sun.jmx.snmp.daemon.ClientHandler h
        19: .line 1124
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int com.sun.jmx.snmp.daemon.ClientHandler[] top int int com.sun.jmx.snmp.daemon.ClientHandler[]
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        20: iload 4
            iload 5
            if_icmplt 9
        21: .line 1136
            return
        end local 2 // com.sun.jmx.snmp.daemon.ClientHandler[] handlers
        end local 1 // int s
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   22     0      this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            1   22     1         s  I
            8   22     2  handlers  [Lcom/sun/jmx/snmp/daemon/ClientHandler;
           10   19     3         h  Lcom/sun/jmx/snmp/daemon/ClientHandler;
           13   19     7         x  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          10    11      12  Class java.lang.Exception

  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 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // java.io.ObjectInputStream stream
         0: .line 1146
            aload 1 /* stream */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 1152
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
         2: .line 1153
            aload 0 /* this */
            iconst_1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
         3: .line 1154
            aload 0 /* this */
            iconst_0
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stopRequested:Z
         4: .line 1155
            aload 0 /* this */
            iconst_0
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.servedClientCount:I
         5: .line 1156
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
         6: .line 1157
            aload 0 /* this */
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.fatherThread:Ljava/lang/Thread;
         7: .line 1158
            aload 0 /* this */
            aconst_null
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.mainThread:Ljava/lang/Thread;
         8: .line 1159
            aload 0 /* this */
            lconst_0
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
         9: .line 1160
            aload 0 /* this */
            aconst_null
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
        10: .line 1161
            aload 0 /* this */
            new javax.management.NotificationBroadcasterSupport
            dup
            invokespecial javax.management.NotificationBroadcasterSupport.<init>:()V
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
        11: .line 1162
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.makeDebugTag:()Ljava/lang/String;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        12: .line 1163
            return
        end local 1 // java.io.ObjectInputStream stream
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0    this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   13     1  stream  Ljava/io/ObjectInputStream;
    Exceptions:
      throws java.io.IOException, java.lang.ClassNotFoundException
    MethodParameters:
        Name  Flags
      stream  

  public void addNotificationListener(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=7, locals=4, args_size=4
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // javax.management.NotificationListener listener
        start local 2 // javax.management.NotificationFilter filter
        start local 3 // java.lang.Object handback
         0: .line 1192
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 5
         1: .line 1193
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         2: .line 1194
            ldc "addNotificationListener"
            new java.lang.StringBuilder
            dup
            ldc "Adding listener "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* listener */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         3: .line 1195
            ldc " with filter "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* filter */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and handback "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* handback */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 1193
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         5: .line 1197
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
            aload 1 /* listener */
            aload 2 /* filter */
            aload 3 /* handback */
            invokevirtual javax.management.NotificationBroadcasterSupport.addNotificationListener:(Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
         6: .line 1198
            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 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0    7     1  listener  Ljavax/management/NotificationListener;
            0    7     2    filter  Ljavax/management/NotificationFilter;
            0    7     3  handback  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
          Name  Flags
      listener  
      filter    
      handback  

  public void removeNotificationListener(javax.management.NotificationListener);
    descriptor: (Ljavax/management/NotificationListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // javax.management.NotificationListener listener
         0: .line 1213
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 4
         1: .line 1214
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
         2: .line 1215
            ldc "removeNotificationListener"
            new java.lang.StringBuilder
            dup
            ldc "Removing listener "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* listener */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 1214
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         4: .line 1217
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
            aload 1 /* listener */
            invokevirtual javax.management.NotificationBroadcasterSupport.removeNotificationListener:(Ljavax/management/NotificationListener;)V
         5: .line 1218
            return
        end local 1 // javax.management.NotificationListener listener
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0    6     1  listener  Ljavax/management/NotificationListener;
    Exceptions:
      throws javax.management.ListenerNotFoundException
    MethodParameters:
          Name  Flags
      listener  

  public javax.management.MBeanNotificationInfo[] getNotificationInfo();
    descriptor: ()[Ljavax/management/MBeanNotificationInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 1232
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
            ifnonnull 9
         1: .line 1233
            aload 0 /* this */
            iconst_1
            anewarray javax.management.MBeanNotificationInfo
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
         2: .line 1234
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
         3: .line 1235
            ldc "jmx.attribute.change"
            aastore
         4: .line 1234
            astore 1 /* notifTypes */
        start local 1 // java.lang.String[] notifTypes
         5: .line 1236
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
            iconst_0
            new javax.management.MBeanNotificationInfo
            dup
            aload 1 /* notifTypes */
         6: .line 1237
            ldc Ljavax/management/AttributeChangeNotification;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         7: .line 1238
            ldc "Sent to notify that the value of the State attribute of this CommunicatorServer instance has changed."
            invokespecial javax.management.MBeanNotificationInfo.<init>:([Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         8: .line 1236
            aastore
        end local 1 // java.lang.String[] notifTypes
         9: .line 1242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
            areturn
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            5    9     1  notifTypes  [Ljava/lang/String;

  private void sendStateChangeNotification(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=14, locals=7, args_size=3
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // int oldState
        start local 2 // int newState
         0: .line 1250
            iload 1 /* oldState */
            invokestatic com.sun.jmx.snmp.daemon.CommunicatorServer.getStringForState:(I)Ljava/lang/String;
            astore 3 /* oldStateString */
        start local 3 // java.lang.String oldStateString
         1: .line 1251
            iload 2 /* newState */
            invokestatic com.sun.jmx.snmp.daemon.CommunicatorServer.getStringForState:(I)Ljava/lang/String;
            astore 4 /* newStateString */
        start local 4 // java.lang.String newStateString
         2: .line 1252
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
         3: .line 1253
            ldc " The value of attribute State has changed from "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
         4: .line 1254
            iload 1 /* oldState */
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            ldc " ("
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 3 /* oldStateString */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
         5: .line 1255
            ldc ") to "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            iload 2 /* newState */
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            ldc " ("
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
         6: .line 1256
            aload 4 /* newStateString */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            ldc ")."
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
         7: .line 1252
            astore 5 /* message */
        start local 5 // java.lang.String message
         8: .line 1258
            aload 0 /* this */
            dup
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
            lconst_1
            ladd
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
         9: .line 1260
            new javax.management.AttributeChangeNotification
            dup
            aload 0 /* this */
        10: .line 1261
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
        11: .line 1262
            invokestatic java.lang.System.currentTimeMillis:()J
        12: .line 1263
            aload 5 /* message */
        13: .line 1264
            ldc "State"
        14: .line 1265
            ldc "int"
        15: .line 1266
            new java.lang.Integer
            dup
            iload 1 /* oldState */
            invokespecial java.lang.Integer.<init>:(I)V
        16: .line 1267
            new java.lang.Integer
            dup
            iload 2 /* newState */
            invokespecial java.lang.Integer.<init>:(I)V
        17: .line 1260
            invokespecial javax.management.AttributeChangeNotification.<init>:(Ljava/lang/Object;JJLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        18: .line 1259
            astore 6 /* notif */
        start local 6 // javax.management.AttributeChangeNotification notif
        19: .line 1268
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 24
        20: .line 1269
            getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        21: .line 1270
            ldc "sendStateChangeNotification"
            new java.lang.StringBuilder
            dup
            ldc "Sending AttributeChangeNotification #"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        22: .line 1271
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " with message: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* message */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        23: .line 1269
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        24: .line 1273
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int java.lang.String java.lang.String java.lang.String javax.management.AttributeChangeNotification
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
            aload 6 /* notif */
            invokevirtual javax.management.NotificationBroadcasterSupport.sendNotification:(Ljavax/management/Notification;)V
        25: .line 1274
            return
        end local 6 // javax.management.AttributeChangeNotification notif
        end local 5 // java.lang.String message
        end local 4 // java.lang.String newStateString
        end local 3 // java.lang.String oldStateString
        end local 2 // int newState
        end local 1 // int oldState
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   26     0            this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   26     1        oldState  I
            0   26     2        newState  I
            1   26     3  oldStateString  Ljava/lang/String;
            2   26     4  newStateString  Ljava/lang/String;
            8   26     5         message  Ljava/lang/String;
           19   26     6           notif  Ljavax/management/AttributeChangeNotification;
    MethodParameters:
          Name  Flags
      oldState  
      newState  

  private static java.lang.String getStringForState(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // int s
         0: .line 1280
            iload 0 /* s */
            tableswitch { // 0 - 3
                    0: 1
                    1: 3
                    2: 4
                    3: 2
              default: 5
          }
         1: .line 1281
      StackMap locals:
      StackMap stack:
            ldc "ONLINE"
            areturn
         2: .line 1282
      StackMap locals:
      StackMap stack:
            ldc "STARTING"
            areturn
         3: .line 1283
      StackMap locals:
      StackMap stack:
            ldc "OFFLINE"
            areturn
         4: .line 1284
      StackMap locals:
      StackMap stack:
            ldc "STOPPING"
            areturn
         5: .line 1285
      StackMap locals:
      StackMap stack:
            ldc "UNDEFINED"
            areturn
        end local 0 // int s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     s  I
    MethodParameters:
      Name  Flags
      s     

  public javax.management.ObjectName preRegister(javax.management.MBeanServer, javax.management.ObjectName);
    descriptor: (Ljavax/management/MBeanServer;Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // javax.management.MBeanServer server
        start local 2 // javax.management.ObjectName name
         0: .line 1309
            aload 0 /* this */
            aload 2 /* name */
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.objectName:Ljavax/management/ObjectName;
         1: .line 1310
            aload 0 /* this */
            dup
            astore 3
            monitorenter
         2: .line 1311
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
            ifnull 4
         3: .line 1312
            new java.lang.IllegalArgumentException
            dup
            ldc "connector already registered in an MBean server"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1316
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* server */
            dup_x1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.topMBS:Ljavax/management/MBeanServer;
         5: .line 1310
            aload 3
            monitorexit
         6: goto 9
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: aload 3
            monitorexit
         8: athrow
         9: .line 1318
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.makeDebugTag:()Ljava/lang/String;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
        10: .line 1319
            aload 2 /* name */
            areturn
        end local 2 // javax.management.ObjectName name
        end local 1 // javax.management.MBeanServer server
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0   11     1  server  Ljavax/management/MBeanServer;
            0   11     2    name  Ljavax/management/ObjectName;
      Exception table:
        from    to  target  type
           2     6       7  any
           7     8       7  any
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
        Name  Flags
      server  
      name    

  public void postRegister(java.lang.Boolean);
    descriptor: (Ljava/lang/Boolean;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // java.lang.Boolean registrationDone
         0: .line 1329
            aload 1 /* registrationDone */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 7
         1: .line 1330
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         2: .line 1331
            aload 0 /* this */
            aload 0 /* this */
            aconst_null
            dup_x1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.topMBS:Ljavax/management/MBeanServer;
         3: .line 1330
            aload 2
            monitorexit
         4: goto 7
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer java.lang.Boolean com.sun.jmx.snmp.daemon.CommunicatorServer
      StackMap stack: java.lang.Throwable
         5: aload 2
            monitorexit
         6: athrow
         7: .line 1334
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Boolean registrationDone
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0    8     1  registrationDone  Ljava/lang/Boolean;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
    MethodParameters:
                  Name  Flags
      registrationDone  

  public void preDeregister();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 1344
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         1: .line 1345
            aload 0 /* this */
            aload 0 /* this */
            aconst_null
            dup_x1
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.topMBS:Ljavax/management/MBeanServer;
         2: .line 1344
            aload 1
            monitorexit
         3: goto 6
      StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer com.sun.jmx.snmp.daemon.CommunicatorServer
      StackMap stack: java.lang.Throwable
         4: aload 1
            monitorexit
         5: athrow
         6: .line 1347
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield com.sun.jmx.snmp.daemon.CommunicatorServer.objectName:Ljavax/management/ObjectName;
         7: .line 1348
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getState:()I
            istore 1 /* cstate */
        start local 1 // int cstate
         8: .line 1349
            iload 1 /* cstate */
            ifeq 9
            iload 1 /* cstate */
            iconst_3
            if_icmpne 10
         9: .line 1350
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.stop:()V
        10: .line 1352
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int cstate
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            8   11     1  cstate  I
      Exception table:
        from    to  target  type
           1     3       4  any
           4     5       4  any
    Exceptions:
      throws java.lang.Exception

  public void postDeregister();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
         0: .line 1358
            return
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;

  java.lang.Class loadClass(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
        start local 1 // java.lang.String className
         0: .line 1366
            aload 1 /* className */
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
         1: areturn
         2: .line 1367
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
         3: .line 1369
            aload 0 /* this */
            getfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
            invokestatic javax.management.MBeanServerFactory.getClassLoaderRepository:(Ljavax/management/MBeanServer;)Ljavax/management/loading/ClassLoaderRepository;
         4: .line 1368
            astore 2 /* clr */
        start local 2 // javax.management.loading.ClassLoaderRepository clr
         5: .line 1370
            aload 2 /* clr */
            ifnonnull 6
            new java.lang.ClassNotFoundException
            dup
            aload 1 /* className */
            invokespecial java.lang.ClassNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 1371
      StackMap locals: javax.management.loading.ClassLoaderRepository
      StackMap stack:
            aload 2 /* clr */
            aload 1 /* className */
            invokeinterface javax.management.loading.ClassLoaderRepository.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
            areturn
        end local 2 // javax.management.loading.ClassLoaderRepository clr
        end local 1 // java.lang.String className
        end local 0 // com.sun.jmx.snmp.daemon.CommunicatorServer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
            0    7     1  className  Ljava/lang/String;
            5    7     2        clr  Ljavax/management/loading/ClassLoaderRepository;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.ClassNotFoundException
    Exceptions:
      throws java.lang.ClassNotFoundException
    MethodParameters:
           Name  Flags
      className  
}
SourceFile: "CommunicatorServer.java"