class com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors
  super_class: java.lang.Object
{
  static final int COMMAND;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  final com.sun.tools.jdi.ObjectReferenceImpl[] owned;
    descriptor: [Lcom/sun/tools/jdi/ObjectReferenceImpl;
    flags: (0x0010) ACC_FINAL

  static com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors process(com.sun.tools.jdi.VirtualMachineImpl, com.sun.tools.jdi.ThreadReferenceImpl);
    descriptor: (Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ThreadReferenceImpl;)Lcom/sun/tools/jdi/JDWP$ThreadReference$OwnedMonitors;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.tools.jdi.VirtualMachineImpl vm
        start local 1 // com.sun.tools.jdi.ThreadReferenceImpl thread
         0: .line 5591
            aload 0 /* vm */
            aload 1 /* thread */
            invokestatic com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors.enqueueCommand:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ThreadReferenceImpl;)Lcom/sun/tools/jdi/PacketStream;
            astore 2 /* ps */
        start local 2 // com.sun.tools.jdi.PacketStream ps
         1: .line 5592
            aload 0 /* vm */
            aload 2 /* ps */
            invokestatic com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors.waitForReply:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/PacketStream;)Lcom/sun/tools/jdi/JDWP$ThreadReference$OwnedMonitors;
            areturn
        end local 2 // com.sun.tools.jdi.PacketStream ps
        end local 1 // com.sun.tools.jdi.ThreadReferenceImpl thread
        end local 0 // com.sun.tools.jdi.VirtualMachineImpl vm
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0      vm  Lcom/sun/tools/jdi/VirtualMachineImpl;
            0    2     1  thread  Lcom/sun/tools/jdi/ThreadReferenceImpl;
            1    2     2      ps  Lcom/sun/tools/jdi/PacketStream;
    Exceptions:
      throws com.sun.tools.jdi.JDWPException
    MethodParameters:
        Name  Flags
      vm      
      thread  

  static com.sun.tools.jdi.PacketStream enqueueCommand(com.sun.tools.jdi.VirtualMachineImpl, com.sun.tools.jdi.ThreadReferenceImpl);
    descriptor: (Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ThreadReferenceImpl;)Lcom/sun/tools/jdi/PacketStream;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.sun.tools.jdi.VirtualMachineImpl vm
        start local 1 // com.sun.tools.jdi.ThreadReferenceImpl thread
         0: .line 5597
            new com.sun.tools.jdi.PacketStream
            dup
            aload 0 /* vm */
            bipush 11
            bipush 8
            invokespecial com.sun.tools.jdi.PacketStream.<init>:(Lcom/sun/tools/jdi/VirtualMachineImpl;II)V
            astore 2 /* ps */
        start local 2 // com.sun.tools.jdi.PacketStream ps
         1: .line 5598
            aload 0 /* vm */
            getfield com.sun.tools.jdi.VirtualMachineImpl.traceFlags:I
            iconst_1
            iand
            ifeq 5
         2: .line 5599
            aload 0 /* vm */
            new java.lang.StringBuilder
            dup
            ldc "Sending Command(id="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* ps */
            getfield com.sun.tools.jdi.PacketStream.pkt:Lcom/sun/tools/jdi/Packet;
            getfield com.sun.tools.jdi.Packet.id:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ") JDWP.ThreadReference.OwnedMonitors"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* ps */
            getfield com.sun.tools.jdi.PacketStream.pkt:Lcom/sun/tools/jdi/Packet;
            getfield com.sun.tools.jdi.Packet.flags:S
            ifeq 3
            new java.lang.StringBuilder
            dup
            ldc ", FLAGS="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* ps */
            getfield com.sun.tools.jdi.PacketStream.pkt:Lcom/sun/tools/jdi/Packet;
            getfield com.sun.tools.jdi.Packet.flags:S
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 4
      StackMap locals: com.sun.tools.jdi.VirtualMachineImpl com.sun.tools.jdi.ThreadReferenceImpl com.sun.tools.jdi.PacketStream
      StackMap stack: com.sun.tools.jdi.VirtualMachineImpl java.lang.StringBuilder
         3: ldc ""
      StackMap locals: com.sun.tools.jdi.VirtualMachineImpl com.sun.tools.jdi.ThreadReferenceImpl com.sun.tools.jdi.PacketStream
      StackMap stack: com.sun.tools.jdi.VirtualMachineImpl java.lang.StringBuilder java.lang.String
         4: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printTrace:(Ljava/lang/String;)V
         5: .line 5601
      StackMap locals:
      StackMap stack:
            aload 2 /* ps */
            getfield com.sun.tools.jdi.PacketStream.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            getfield com.sun.tools.jdi.VirtualMachineImpl.traceFlags:I
            iconst_1
            iand
            ifeq 9
         6: .line 5602
            aload 2 /* ps */
            getfield com.sun.tools.jdi.PacketStream.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
            new java.lang.StringBuilder
            dup
            ldc "Sending:                 thread(ThreadReferenceImpl): "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* thread */
            ifnonnull 7
            ldc "NULL"
            goto 8
      StackMap locals: com.sun.tools.jdi.VirtualMachineImpl com.sun.tools.jdi.ThreadReferenceImpl com.sun.tools.jdi.PacketStream
      StackMap stack: com.sun.tools.jdi.VirtualMachineImpl java.lang.StringBuilder
         7: new java.lang.StringBuilder
            dup
            ldc "ref="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* thread */
            invokevirtual com.sun.tools.jdi.ThreadReferenceImpl.ref:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: com.sun.tools.jdi.VirtualMachineImpl com.sun.tools.jdi.ThreadReferenceImpl com.sun.tools.jdi.PacketStream
      StackMap stack: com.sun.tools.jdi.VirtualMachineImpl java.lang.StringBuilder java.lang.String
         8: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printTrace:(Ljava/lang/String;)V
         9: .line 5604
      StackMap locals:
      StackMap stack:
            aload 2 /* ps */
            aload 1 /* thread */
            invokevirtual com.sun.tools.jdi.ThreadReferenceImpl.ref:()J
            invokevirtual com.sun.tools.jdi.PacketStream.writeObjectRef:(J)V
        10: .line 5605
            aload 2 /* ps */
            invokevirtual com.sun.tools.jdi.PacketStream.send:()V
        11: .line 5606
            aload 2 /* ps */
            areturn
        end local 2 // com.sun.tools.jdi.PacketStream ps
        end local 1 // com.sun.tools.jdi.ThreadReferenceImpl thread
        end local 0 // com.sun.tools.jdi.VirtualMachineImpl vm
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0      vm  Lcom/sun/tools/jdi/VirtualMachineImpl;
            0   12     1  thread  Lcom/sun/tools/jdi/ThreadReferenceImpl;
            1   12     2      ps  Lcom/sun/tools/jdi/PacketStream;
    MethodParameters:
        Name  Flags
      vm      
      thread  

  static com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors waitForReply(com.sun.tools.jdi.VirtualMachineImpl, com.sun.tools.jdi.PacketStream);
    descriptor: (Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/PacketStream;)Lcom/sun/tools/jdi/JDWP$ThreadReference$OwnedMonitors;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.jdi.VirtualMachineImpl vm
        start local 1 // com.sun.tools.jdi.PacketStream ps
         0: .line 5611
            aload 1 /* ps */
            invokevirtual com.sun.tools.jdi.PacketStream.waitForReply:()V
         1: .line 5612
            new com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors
            dup
            aload 0 /* vm */
            aload 1 /* ps */
            invokespecial com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors.<init>:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/PacketStream;)V
            areturn
        end local 1 // com.sun.tools.jdi.PacketStream ps
        end local 0 // com.sun.tools.jdi.VirtualMachineImpl vm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    vm  Lcom/sun/tools/jdi/VirtualMachineImpl;
            0    2     1    ps  Lcom/sun/tools/jdi/PacketStream;
    Exceptions:
      throws com.sun.tools.jdi.JDWPException
    MethodParameters:
      Name  Flags
      vm    
      ps    

  private void <init>(com.sun.tools.jdi.VirtualMachineImpl, com.sun.tools.jdi.PacketStream);
    descriptor: (Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/PacketStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors this
        start local 1 // com.sun.tools.jdi.VirtualMachineImpl vm
        start local 2 // com.sun.tools.jdi.PacketStream ps
         0: .line 5621
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 5622
            aload 1 /* vm */
            getfield com.sun.tools.jdi.VirtualMachineImpl.traceReceives:Z
            ifeq 7
         2: .line 5623
            aload 1 /* vm */
            new java.lang.StringBuilder
            dup
            ldc "Receiving Command(id="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* ps */
            getfield com.sun.tools.jdi.PacketStream.pkt:Lcom/sun/tools/jdi/Packet;
            getfield com.sun.tools.jdi.Packet.id:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ") JDWP.ThreadReference.OwnedMonitors"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* ps */
            getfield com.sun.tools.jdi.PacketStream.pkt:Lcom/sun/tools/jdi/Packet;
            getfield com.sun.tools.jdi.Packet.flags:S
            ifeq 3
            new java.lang.StringBuilder
            dup
            ldc ", FLAGS="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* ps */
            getfield com.sun.tools.jdi.PacketStream.pkt:Lcom/sun/tools/jdi/Packet;
            getfield com.sun.tools.jdi.Packet.flags:S
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 4
      StackMap locals: com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors com.sun.tools.jdi.VirtualMachineImpl com.sun.tools.jdi.PacketStream
      StackMap stack: com.sun.tools.jdi.VirtualMachineImpl java.lang.StringBuilder
         3: ldc ""
      StackMap locals: com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors com.sun.tools.jdi.VirtualMachineImpl com.sun.tools.jdi.PacketStream
      StackMap stack: com.sun.tools.jdi.VirtualMachineImpl java.lang.StringBuilder java.lang.String
         4: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* ps */
            getfield com.sun.tools.jdi.PacketStream.pkt:Lcom/sun/tools/jdi/Packet;
            getfield com.sun.tools.jdi.Packet.errorCode:S
            ifeq 5
            new java.lang.StringBuilder
            dup
            ldc ", ERROR CODE="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* ps */
            getfield com.sun.tools.jdi.PacketStream.pkt:Lcom/sun/tools/jdi/Packet;
            getfield com.sun.tools.jdi.Packet.errorCode:S
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 6
      StackMap locals: com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors com.sun.tools.jdi.VirtualMachineImpl com.sun.tools.jdi.PacketStream
      StackMap stack: com.sun.tools.jdi.VirtualMachineImpl java.lang.StringBuilder
         5: ldc ""
      StackMap locals: com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors com.sun.tools.jdi.VirtualMachineImpl com.sun.tools.jdi.PacketStream
      StackMap stack: com.sun.tools.jdi.VirtualMachineImpl java.lang.StringBuilder java.lang.String
         6: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printTrace:(Ljava/lang/String;)V
         7: .line 5625
      StackMap locals:
      StackMap stack:
            aload 1 /* vm */
            getfield com.sun.tools.jdi.VirtualMachineImpl.traceReceives:Z
            ifeq 9
         8: .line 5626
            aload 1 /* vm */
            iconst_4
            ldc "owned(ObjectReferenceImpl[]): "
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printReceiveTrace:(ILjava/lang/String;)V
         9: .line 5628
      StackMap locals:
      StackMap stack:
            aload 2 /* ps */
            invokevirtual com.sun.tools.jdi.PacketStream.readInt:()I
            istore 3 /* ownedCount */
        start local 3 // int ownedCount
        10: .line 5629
            aload 0 /* this */
            iload 3 /* ownedCount */
            anewarray com.sun.tools.jdi.ObjectReferenceImpl
            putfield com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors.owned:[Lcom/sun/tools/jdi/ObjectReferenceImpl;
        11: .line 5630
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        12: goto 19
        13: .line 5631
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors.owned:[Lcom/sun/tools/jdi/ObjectReferenceImpl;
            iload 4 /* i */
            aload 2 /* ps */
            invokevirtual com.sun.tools.jdi.PacketStream.readTaggedObjectReference:()Lcom/sun/tools/jdi/ObjectReferenceImpl;
            aastore
        14: .line 5632
            aload 1 /* vm */
            getfield com.sun.tools.jdi.VirtualMachineImpl.traceReceives:Z
            ifeq 18
        15: .line 5633
            aload 1 /* vm */
            iconst_5
            new java.lang.StringBuilder
            dup
            ldc "owned[i](ObjectReferenceImpl): "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors.owned:[Lcom/sun/tools/jdi/ObjectReferenceImpl;
            iload 4 /* i */
            aaload
            ifnonnull 16
            ldc "NULL"
            goto 17
      StackMap locals: com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors com.sun.tools.jdi.VirtualMachineImpl com.sun.tools.jdi.PacketStream int int
      StackMap stack: com.sun.tools.jdi.VirtualMachineImpl int java.lang.StringBuilder
        16: new java.lang.StringBuilder
            dup
            ldc "ref="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors.owned:[Lcom/sun/tools/jdi/ObjectReferenceImpl;
            iload 4 /* i */
            aaload
            invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.ref:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors com.sun.tools.jdi.VirtualMachineImpl com.sun.tools.jdi.PacketStream int int
      StackMap stack: com.sun.tools.jdi.VirtualMachineImpl int java.lang.StringBuilder java.lang.String
        17: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printReceiveTrace:(ILjava/lang/String;)V
        18: .line 5630
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 4 /* i */
            iload 3 /* ownedCount */
            if_icmplt 13
        end local 4 // int i
        20: .line 5636
            return
        end local 3 // int ownedCount
        end local 2 // com.sun.tools.jdi.PacketStream ps
        end local 1 // com.sun.tools.jdi.VirtualMachineImpl vm
        end local 0 // com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0        this  Lcom/sun/tools/jdi/JDWP$ThreadReference$OwnedMonitors;
            0   21     1          vm  Lcom/sun/tools/jdi/VirtualMachineImpl;
            0   21     2          ps  Lcom/sun/tools/jdi/PacketStream;
           10   21     3  ownedCount  I
           12   20     4           i  I
    MethodParameters:
      Name  Flags
      vm    
      ps    
}
SourceFile: "JDWP.java"
NestHost: com.sun.tools.jdi.JDWP
InnerClasses:
  ThreadReference = com.sun.tools.jdi.JDWP$ThreadReference of com.sun.tools.jdi.JDWP
  OwnedMonitors = com.sun.tools.jdi.JDWP$ThreadReference$OwnedMonitors of com.sun.tools.jdi.JDWP$ThreadReference