public class com.sun.tools.jdi.InternalEventHandler implements java.lang.Runnable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.jdi.InternalEventHandler
  super_class: java.lang.Object
{
  com.sun.tools.jdi.EventQueueImpl queue;
    descriptor: Lcom/sun/tools/jdi/EventQueueImpl;
    flags: (0x0000) 

  com.sun.tools.jdi.VirtualMachineImpl vm;
    descriptor: Lcom/sun/tools/jdi/VirtualMachineImpl;
    flags: (0x0000) 

  void <init>(com.sun.tools.jdi.VirtualMachineImpl, com.sun.tools.jdi.EventQueueImpl);
    descriptor: (Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/EventQueueImpl;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // com.sun.tools.jdi.InternalEventHandler this
        start local 1 // com.sun.tools.jdi.VirtualMachineImpl vm
        start local 2 // com.sun.tools.jdi.EventQueueImpl queue
         0: .line 45
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 46
            aload 0 /* this */
            aload 1 /* vm */
            putfield com.sun.tools.jdi.InternalEventHandler.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
         2: .line 47
            aload 0 /* this */
            aload 2 /* queue */
            putfield com.sun.tools.jdi.InternalEventHandler.queue:Lcom/sun/tools/jdi/EventQueueImpl;
         3: .line 48
            new java.lang.Thread
            dup
            aload 1 /* vm */
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.threadGroupForJDI:()Ljava/lang/ThreadGroup;
            aload 0 /* this */
         4: .line 49
            ldc "JDI Internal Event Handler"
         5: .line 48
            invokespecial java.lang.Thread.<init>:(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;)V
            astore 3 /* thread */
        start local 3 // java.lang.Thread thread
         6: .line 50
            aload 3 /* thread */
            iconst_1
            invokevirtual java.lang.Thread.setDaemon:(Z)V
         7: .line 51
            aload 3 /* thread */
            invokevirtual java.lang.Thread.start:()V
         8: .line 52
            return
        end local 3 // java.lang.Thread thread
        end local 2 // com.sun.tools.jdi.EventQueueImpl queue
        end local 1 // com.sun.tools.jdi.VirtualMachineImpl vm
        end local 0 // com.sun.tools.jdi.InternalEventHandler this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lcom/sun/tools/jdi/InternalEventHandler;
            0    9     1      vm  Lcom/sun/tools/jdi/VirtualMachineImpl;
            0    9     2   queue  Lcom/sun/tools/jdi/EventQueueImpl;
            6    9     3  thread  Ljava/lang/Thread;
    MethodParameters:
       Name  Flags
      vm     
      queue  

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // com.sun.tools.jdi.InternalEventHandler this
         0: .line 55
            aload 0 /* this */
            getfield com.sun.tools.jdi.InternalEventHandler.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            getfield com.sun.tools.jdi.VirtualMachineImpl.traceFlags:I
            iconst_4
            iand
            ifeq 2
         1: .line 56
            aload 0 /* this */
            getfield com.sun.tools.jdi.InternalEventHandler.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            ldc "Internal event handler running"
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printTrace:(Ljava/lang/String;)V
         2: .line 61
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdi.InternalEventHandler.queue:Lcom/sun/tools/jdi/EventQueueImpl;
            invokevirtual com.sun.tools.jdi.EventQueueImpl.removeInternal:()Lcom/sun/jdi/event/EventSet;
            astore 1 /* eventSet */
        start local 1 // com.sun.jdi.event.EventSet eventSet
         3: .line 62
            aload 1 /* eventSet */
            invokeinterface com.sun.jdi.event.EventSet.eventIterator:()Lcom/sun/jdi/event/EventIterator;
            astore 2 /* it */
        start local 2 // com.sun.jdi.event.EventIterator it
         4: .line 63
            goto 22
         5: .line 64
      StackMap locals: com.sun.jdi.event.EventSet com.sun.jdi.event.EventIterator
      StackMap stack:
            aload 2 /* it */
            invokeinterface com.sun.jdi.event.EventIterator.nextEvent:()Lcom/sun/jdi/event/Event;
            astore 3 /* event */
        start local 3 // com.sun.jdi.event.Event event
         6: .line 65
            aload 3 /* event */
            instanceof com.sun.jdi.event.ClassUnloadEvent
            ifeq 14
         7: .line 66
            aload 3 /* event */
            checkcast com.sun.jdi.event.ClassUnloadEvent
            astore 4 /* cuEvent */
        start local 4 // com.sun.jdi.event.ClassUnloadEvent cuEvent
         8: .line 67
            aload 0 /* this */
            getfield com.sun.tools.jdi.InternalEventHandler.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            aload 4 /* cuEvent */
            invokeinterface com.sun.jdi.event.ClassUnloadEvent.classSignature:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.removeReferenceType:(Ljava/lang/String;)V
         9: .line 69
            aload 0 /* this */
            getfield com.sun.tools.jdi.InternalEventHandler.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            getfield com.sun.tools.jdi.VirtualMachineImpl.traceFlags:I
            iconst_4
            iand
            ifeq 22
        10: .line 70
            aload 0 /* this */
            getfield com.sun.tools.jdi.InternalEventHandler.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            new java.lang.StringBuilder
            dup
            ldc "Handled Unload Event for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 71
            aload 4 /* cuEvent */
            invokeinterface com.sun.jdi.event.ClassUnloadEvent.classSignature:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        12: .line 70
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printTrace:(Ljava/lang/String;)V
        end local 4 // com.sun.jdi.event.ClassUnloadEvent cuEvent
        13: .line 73
            goto 22
      StackMap locals: com.sun.jdi.event.Event
      StackMap stack:
        14: aload 3 /* event */
            instanceof com.sun.jdi.event.ClassPrepareEvent
            ifeq 22
        15: .line 74
            aload 3 /* event */
            checkcast com.sun.jdi.event.ClassPrepareEvent
            astore 4 /* cpEvent */
        start local 4 // com.sun.jdi.event.ClassPrepareEvent cpEvent
        16: .line 75
            aload 4 /* cpEvent */
            invokeinterface com.sun.jdi.event.ClassPrepareEvent.referenceType:()Lcom/sun/jdi/ReferenceType;
            checkcast com.sun.tools.jdi.ReferenceTypeImpl
        17: .line 76
            invokevirtual com.sun.tools.jdi.ReferenceTypeImpl.markPrepared:()V
        18: .line 78
            aload 0 /* this */
            getfield com.sun.tools.jdi.InternalEventHandler.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            getfield com.sun.tools.jdi.VirtualMachineImpl.traceFlags:I
            iconst_4
            iand
            ifeq 22
        19: .line 79
            aload 0 /* this */
            getfield com.sun.tools.jdi.InternalEventHandler.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            new java.lang.StringBuilder
            dup
            ldc "Handled Prepare Event for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        20: .line 80
            aload 4 /* cpEvent */
            invokeinterface com.sun.jdi.event.ClassPrepareEvent.referenceType:()Lcom/sun/jdi/ReferenceType;
            invokeinterface com.sun.jdi.ReferenceType.name:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        21: .line 79
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printTrace:(Ljava/lang/String;)V
        end local 4 // com.sun.jdi.event.ClassPrepareEvent cpEvent
        end local 3 // com.sun.jdi.event.Event event
        22: .line 63
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface com.sun.jdi.event.EventIterator.hasNext:()Z
            ifne 5
        end local 2 // com.sun.jdi.event.EventIterator it
        end local 1 // com.sun.jdi.event.EventSet eventSet
        23: .line 93
            goto 2
      StackMap locals: com.sun.tools.jdi.InternalEventHandler
      StackMap stack: com.sun.jdi.VMOutOfMemoryException
        24: astore 1 /* vmme */
        start local 1 // com.sun.jdi.VMOutOfMemoryException vmme
        25: .line 94
            aload 1 /* vmme */
            invokevirtual com.sun.jdi.VMOutOfMemoryException.printStackTrace:()V
        end local 1 // com.sun.jdi.VMOutOfMemoryException vmme
        26: goto 2
        27: .line 95
      StackMap locals:
      StackMap stack: com.sun.jdi.InconsistentDebugInfoException
            astore 1 /* idie */
        start local 1 // com.sun.jdi.InconsistentDebugInfoException idie
        28: .line 96
            aload 1 /* idie */
            invokevirtual com.sun.jdi.InconsistentDebugInfoException.printStackTrace:()V
        end local 1 // com.sun.jdi.InconsistentDebugInfoException idie
        29: goto 2
        30: .line 106
      StackMap locals:
      StackMap stack: com.sun.jdi.ObjectCollectedException
            astore 1 /* oce */
        start local 1 // com.sun.jdi.ObjectCollectedException oce
        31: .line 107
            aload 1 /* oce */
            invokevirtual com.sun.jdi.ObjectCollectedException.printStackTrace:()V
        end local 1 // com.sun.jdi.ObjectCollectedException oce
        32: goto 2
        33: .line 108
      StackMap locals:
      StackMap stack: com.sun.jdi.ClassNotPreparedException
            astore 1 /* cnpe */
        start local 1 // com.sun.jdi.ClassNotPreparedException cnpe
        34: .line 109
            aload 1 /* cnpe */
            invokevirtual com.sun.jdi.ClassNotPreparedException.printStackTrace:()V
        end local 1 // com.sun.jdi.ClassNotPreparedException cnpe
        35: .line 59
            goto 2
        36: .line 112
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
            pop
            goto 38
        37: .line 113
      StackMap locals:
      StackMap stack: com.sun.jdi.VMDisconnectedException
            pop
        38: .line 115
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdi.InternalEventHandler.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            getfield com.sun.tools.jdi.VirtualMachineImpl.traceFlags:I
            iconst_4
            iand
            ifeq 40
        39: .line 116
            aload 0 /* this */
            getfield com.sun.tools.jdi.InternalEventHandler.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            ldc "Internal event handler exiting"
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printTrace:(Ljava/lang/String;)V
        40: .line 118
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.tools.jdi.InternalEventHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   41     0      this  Lcom/sun/tools/jdi/InternalEventHandler;
            3   23     1  eventSet  Lcom/sun/jdi/event/EventSet;
            4   23     2        it  Lcom/sun/jdi/event/EventIterator;
            6   22     3     event  Lcom/sun/jdi/event/Event;
            8   13     4   cuEvent  Lcom/sun/jdi/event/ClassUnloadEvent;
           16   22     4   cpEvent  Lcom/sun/jdi/event/ClassPrepareEvent;
           25   26     1      vmme  Lcom/sun/jdi/VMOutOfMemoryException;
           28   29     1      idie  Lcom/sun/jdi/InconsistentDebugInfoException;
           31   32     1       oce  Lcom/sun/jdi/ObjectCollectedException;
           34   35     1      cnpe  Lcom/sun/jdi/ClassNotPreparedException;
      Exception table:
        from    to  target  type
           2    23      24  Class com.sun.jdi.VMOutOfMemoryException
           2    23      27  Class com.sun.jdi.InconsistentDebugInfoException
           2    23      30  Class com.sun.jdi.ObjectCollectedException
           2    23      33  Class com.sun.jdi.ClassNotPreparedException
           2    36      36  Class java.lang.InterruptedException
           2    36      37  Class com.sun.jdi.VMDisconnectedException
}
SourceFile: "InternalEventHandler.java"