public final class org.apache.lucene.index.TwoPhaseCommitTool
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.lucene.index.TwoPhaseCommitTool
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.lucene.index.TwoPhaseCommitTool this
         0: .line 32
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.apache.lucene.index.TwoPhaseCommitTool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/lucene/index/TwoPhaseCommitTool;

  private static void rollback(org.apache.lucene.index.TwoPhaseCommit[]);
    descriptor: ([Lorg/apache/lucene/index/TwoPhaseCommit;)V
    flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // org.apache.lucene.index.TwoPhaseCommit[] objects
         0: .line 61
            aload 0 /* objects */
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 7
      StackMap locals: org.apache.lucene.index.TwoPhaseCommit[] top int int org.apache.lucene.index.TwoPhaseCommit[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* tpc */
        start local 1 // org.apache.lucene.index.TwoPhaseCommit tpc
         2: .line 64
            aload 1 /* tpc */
            ifnull 6
         3: .line 66
            aload 1 /* tpc */
            invokeinterface org.apache.lucene.index.TwoPhaseCommit.rollback:()V
         4: .line 67
            goto 6
      StackMap locals: org.apache.lucene.index.TwoPhaseCommit[] org.apache.lucene.index.TwoPhaseCommit int int org.apache.lucene.index.TwoPhaseCommit[]
      StackMap stack: java.lang.Throwable
         5: pop
        end local 1 // org.apache.lucene.index.TwoPhaseCommit tpc
         6: .line 61
      StackMap locals: org.apache.lucene.index.TwoPhaseCommit[] top int int org.apache.lucene.index.TwoPhaseCommit[]
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         7: iload 2
            iload 3
            if_icmplt 1
         8: .line 70
            return
        end local 0 // org.apache.lucene.index.TwoPhaseCommit[] objects
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0  objects  [Lorg/apache/lucene/index/TwoPhaseCommit;
            2    6     1      tpc  Lorg/apache/lucene/index/TwoPhaseCommit;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.Throwable
    MethodParameters:
         Name  Flags
      objects  

  public static void execute(org.apache.lucene.index.TwoPhaseCommit[]);
    descriptor: ([Lorg/apache/lucene/index/TwoPhaseCommit;)V
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.apache.lucene.index.TwoPhaseCommit[] objects
         0: .line 95
            aconst_null
            astore 1 /* tpc */
        start local 1 // org.apache.lucene.index.TwoPhaseCommit tpc
         1: .line 98
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 7
         3: .line 99
      StackMap locals: org.apache.lucene.index.TwoPhaseCommit int
      StackMap stack:
            aload 0 /* objects */
            iload 2 /* i */
            aaload
            astore 1 /* tpc */
         4: .line 100
            aload 1 /* tpc */
            ifnull 6
         5: .line 101
            aload 1 /* tpc */
            invokeinterface org.apache.lucene.index.TwoPhaseCommit.prepareCommit:()J
            pop2
         6: .line 98
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            aload 0 /* objects */
            arraylength
            if_icmplt 3
        end local 2 // int i
         8: .line 104
            goto 12
      StackMap locals: org.apache.lucene.index.TwoPhaseCommit[] org.apache.lucene.index.TwoPhaseCommit
      StackMap stack: java.lang.Throwable
         9: astore 2 /* t */
        start local 2 // java.lang.Throwable t
        10: .line 107
            aload 0 /* objects */
            invokestatic org.apache.lucene.index.TwoPhaseCommitTool.rollback:([Lorg/apache/lucene/index/TwoPhaseCommit;)V
        11: .line 108
            new org.apache.lucene.index.TwoPhaseCommitTool$PrepareCommitFailException
            dup
            aload 2 /* t */
            aload 1 /* tpc */
            invokespecial org.apache.lucene.index.TwoPhaseCommitTool$PrepareCommitFailException.<init>:(Ljava/lang/Throwable;Lorg/apache/lucene/index/TwoPhaseCommit;)V
            athrow
        end local 2 // java.lang.Throwable t
        12: .line 113
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        13: goto 18
        14: .line 114
      StackMap locals: int
      StackMap stack:
            aload 0 /* objects */
            iload 2 /* i */
            aaload
            astore 1 /* tpc */
        15: .line 115
            aload 1 /* tpc */
            ifnull 17
        16: .line 116
            aload 1 /* tpc */
            invokeinterface org.apache.lucene.index.TwoPhaseCommit.commit:()J
            pop2
        17: .line 113
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 2 /* i */
            aload 0 /* objects */
            arraylength
            if_icmplt 14
        end local 2 // int i
        19: .line 119
            goto 23
      StackMap locals: org.apache.lucene.index.TwoPhaseCommit[] org.apache.lucene.index.TwoPhaseCommit
      StackMap stack: java.lang.Throwable
        20: astore 2 /* t */
        start local 2 // java.lang.Throwable t
        21: .line 122
            aload 0 /* objects */
            invokestatic org.apache.lucene.index.TwoPhaseCommitTool.rollback:([Lorg/apache/lucene/index/TwoPhaseCommit;)V
        22: .line 123
            new org.apache.lucene.index.TwoPhaseCommitTool$CommitFailException
            dup
            aload 2 /* t */
            aload 1 /* tpc */
            invokespecial org.apache.lucene.index.TwoPhaseCommitTool$CommitFailException.<init>:(Ljava/lang/Throwable;Lorg/apache/lucene/index/TwoPhaseCommit;)V
            athrow
        end local 2 // java.lang.Throwable t
        23: .line 125
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.lucene.index.TwoPhaseCommit tpc
        end local 0 // org.apache.lucene.index.TwoPhaseCommit[] objects
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   24     0  objects  [Lorg/apache/lucene/index/TwoPhaseCommit;
            1   24     1      tpc  Lorg/apache/lucene/index/TwoPhaseCommit;
            2    8     2        i  I
           10   12     2        t  Ljava/lang/Throwable;
           13   19     2        i  I
           21   23     2        t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     8       9  Class java.lang.Throwable
          12    19      20  Class java.lang.Throwable
    Exceptions:
      throws org.apache.lucene.index.TwoPhaseCommitTool$PrepareCommitFailException, org.apache.lucene.index.TwoPhaseCommitTool$CommitFailException
    MethodParameters:
         Name  Flags
      objects  
}
SourceFile: "TwoPhaseCommitTool.java"
NestMembers:
  org.apache.lucene.index.TwoPhaseCommitTool$CommitFailException  org.apache.lucene.index.TwoPhaseCommitTool$PrepareCommitFailException
InnerClasses:
  public CommitFailException = org.apache.lucene.index.TwoPhaseCommitTool$CommitFailException of org.apache.lucene.index.TwoPhaseCommitTool
  public PrepareCommitFailException = org.apache.lucene.index.TwoPhaseCommitTool$PrepareCommitFailException of org.apache.lucene.index.TwoPhaseCommitTool