class org.hibernate.id.MultipleHiLoPerTableGenerator$1 extends org.hibernate.jdbc.AbstractReturningWork<org.hibernate.id.IntegralDataTypeHolder>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hibernate.id.MultipleHiLoPerTableGenerator$1
  super_class: org.hibernate.jdbc.AbstractReturningWork
{
  final org.hibernate.id.MultipleHiLoPerTableGenerator this$0;
    descriptor: Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final org.hibernate.engine.jdbc.spi.SqlStatementLogger val$statementLogger;
    descriptor: Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final org.hibernate.engine.spi.SessionEventListenerManager val$statsCollector;
    descriptor: Lorg/hibernate/engine/spi/SessionEventListenerManager;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(org.hibernate.id.MultipleHiLoPerTableGenerator, org.hibernate.engine.jdbc.spi.SqlStatementLogger, org.hibernate.engine.spi.SessionEventListenerManager);
    descriptor: (Lorg/hibernate/id/MultipleHiLoPerTableGenerator;Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;Lorg/hibernate/engine/spi/SessionEventListenerManager;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator$1 this
         0: .line 152
            aload 0 /* this */
            aload 1
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            aload 0 /* this */
            aload 2
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statementLogger:Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
            aload 0 /* this */
            aload 3
            putfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statsCollector:Lorg/hibernate/engine/spi/SessionEventListenerManager;
            aload 0 /* this */
            invokespecial org.hibernate.jdbc.AbstractReturningWork.<init>:()V
            return
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator$1;
    MethodParameters:
                     Name  Flags
      this$0               final
      val$statementLogger  final
      val$statsCollector   final

  public org.hibernate.id.IntegralDataTypeHolder execute(java.sql.Connection);
    descriptor: (Ljava/sql/Connection;)Lorg/hibernate/id/IntegralDataTypeHolder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator$1 this
        start local 1 // java.sql.Connection connection
         0: .line 155
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.returnClass:Ljava/lang/Class;
            invokestatic org.hibernate.id.IdentifierGeneratorHelper.getIntegralDataTypeHolder:(Ljava/lang/Class;)Lorg/hibernate/id/IntegralDataTypeHolder;
            astore 2 /* value */
        start local 2 // org.hibernate.id.IntegralDataTypeHolder value
         1: .line 159
      StackMap locals: org.hibernate.id.IntegralDataTypeHolder
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            aload 1 /* connection */
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.query:Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statementLogger:Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statsCollector:Lorg/hibernate/engine/spi/SessionEventListenerManager;
            invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.prepareStatement:(Ljava/sql/Connection;Ljava/lang/String;Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;Lorg/hibernate/engine/spi/SessionEventListenerManager;)Ljava/sql/PreparedStatement;
            astore 4 /* queryPreparedStatement */
        start local 4 // java.sql.PreparedStatement queryPreparedStatement
         2: .line 161
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            aload 4 /* queryPreparedStatement */
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statsCollector:Lorg/hibernate/engine/spi/SessionEventListenerManager;
            invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.executeQuery:(Ljava/sql/PreparedStatement;Lorg/hibernate/engine/spi/SessionEventListenerManager;)Ljava/sql/ResultSet;
            astore 5 /* rs */
        start local 5 // java.sql.ResultSet rs
         3: .line 162
            aload 5 /* rs */
            invokeinterface java.sql.ResultSet.next:()Z
            istore 6 /* isInitialized */
        start local 6 // boolean isInitialized
         4: .line 163
            iload 6 /* isInitialized */
            ifne 15
         5: .line 164
            aload 2 /* value */
            lconst_0
            invokeinterface org.hibernate.id.IntegralDataTypeHolder.initialize:(J)Lorg/hibernate/id/IntegralDataTypeHolder;
            pop
         6: .line 165
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            aload 1 /* connection */
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.insert:Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statementLogger:Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statsCollector:Lorg/hibernate/engine/spi/SessionEventListenerManager;
            invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.prepareStatement:(Ljava/sql/Connection;Ljava/lang/String;Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;Lorg/hibernate/engine/spi/SessionEventListenerManager;)Ljava/sql/PreparedStatement;
            astore 7 /* insertPreparedStatement */
        start local 7 // java.sql.PreparedStatement insertPreparedStatement
         7: .line 167
            aload 2 /* value */
            aload 7 /* insertPreparedStatement */
            iconst_1
            invokeinterface org.hibernate.id.IntegralDataTypeHolder.bind:(Ljava/sql/PreparedStatement;I)V
         8: .line 168
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            aload 7 /* insertPreparedStatement */
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statsCollector:Lorg/hibernate/engine/spi/SessionEventListenerManager;
            invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.executeUpdate:(Ljava/sql/PreparedStatement;Lorg/hibernate/engine/spi/SessionEventListenerManager;)I
            pop
         9: .line 169
            goto 13
        10: .line 170
      StackMap locals: org.hibernate.id.MultipleHiLoPerTableGenerator$1 java.sql.Connection org.hibernate.id.IntegralDataTypeHolder top java.sql.PreparedStatement java.sql.ResultSet int java.sql.PreparedStatement
      StackMap stack: java.lang.Throwable
            astore 8
        11: .line 171
            aload 7 /* insertPreparedStatement */
            invokeinterface java.sql.PreparedStatement.close:()V
        12: .line 172
            aload 8
            athrow
        13: .line 171
      StackMap locals:
      StackMap stack:
            aload 7 /* insertPreparedStatement */
            invokeinterface java.sql.PreparedStatement.close:()V
        end local 7 // java.sql.PreparedStatement insertPreparedStatement
        14: .line 173
            goto 16
        15: .line 175
      StackMap locals:
      StackMap stack:
            aload 2 /* value */
            aload 5 /* rs */
            lconst_0
            invokeinterface org.hibernate.id.IntegralDataTypeHolder.initialize:(Ljava/sql/ResultSet;J)Lorg/hibernate/id/IntegralDataTypeHolder;
            pop
        16: .line 177
      StackMap locals:
      StackMap stack:
            aload 5 /* rs */
            invokeinterface java.sql.ResultSet.close:()V
        end local 6 // boolean isInitialized
        end local 5 // java.sql.ResultSet rs
        17: .line 178
            goto 24
        18: .line 179
      StackMap locals: org.hibernate.id.MultipleHiLoPerTableGenerator$1 java.sql.Connection org.hibernate.id.IntegralDataTypeHolder top java.sql.PreparedStatement
      StackMap stack: java.sql.SQLException
            astore 5 /* sqle */
        start local 5 // java.sql.SQLException sqle
        19: .line 180
            getstatic org.hibernate.id.MultipleHiLoPerTableGenerator.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            aload 5 /* sqle */
            invokeinterface org.hibernate.internal.CoreMessageLogger.unableToReadOrInitHiValue:(Ljava/sql/SQLException;)V
        20: .line 181
            aload 5 /* sqle */
            athrow
        end local 5 // java.sql.SQLException sqle
        21: .line 183
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 9
        22: .line 184
            aload 4 /* queryPreparedStatement */
            invokeinterface java.sql.PreparedStatement.close:()V
        23: .line 185
            aload 9
            athrow
        24: .line 184
      StackMap locals:
      StackMap stack:
            aload 4 /* queryPreparedStatement */
            invokeinterface java.sql.PreparedStatement.close:()V
        25: .line 188
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            aload 1 /* connection */
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.update:Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statementLogger:Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statsCollector:Lorg/hibernate/engine/spi/SessionEventListenerManager;
            invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.prepareStatement:(Ljava/sql/Connection;Ljava/lang/String;Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;Lorg/hibernate/engine/spi/SessionEventListenerManager;)Ljava/sql/PreparedStatement;
            astore 5 /* updatePreparedStatement */
        start local 5 // java.sql.PreparedStatement updatePreparedStatement
        26: .line 190
            aload 2 /* value */
            invokeinterface org.hibernate.id.IntegralDataTypeHolder.copy:()Lorg/hibernate/id/IntegralDataTypeHolder;
            invokeinterface org.hibernate.id.IntegralDataTypeHolder.increment:()Lorg/hibernate/id/IntegralDataTypeHolder;
            aload 5 /* updatePreparedStatement */
            iconst_1
            invokeinterface org.hibernate.id.IntegralDataTypeHolder.bind:(Ljava/sql/PreparedStatement;I)V
        27: .line 191
            aload 2 /* value */
            aload 5 /* updatePreparedStatement */
            iconst_2
            invokeinterface org.hibernate.id.IntegralDataTypeHolder.bind:(Ljava/sql/PreparedStatement;I)V
        28: .line 193
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            aload 5 /* updatePreparedStatement */
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.val$statsCollector:Lorg/hibernate/engine/spi/SessionEventListenerManager;
            invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator.executeUpdate:(Ljava/sql/PreparedStatement;Lorg/hibernate/engine/spi/SessionEventListenerManager;)I
            istore 3 /* rows */
        start local 3 // int rows
        29: .line 194
            goto 36
        end local 3 // int rows
        30: .line 195
      StackMap locals: org.hibernate.id.MultipleHiLoPerTableGenerator$1 java.sql.Connection org.hibernate.id.IntegralDataTypeHolder top java.sql.PreparedStatement java.sql.PreparedStatement
      StackMap stack: java.sql.SQLException
            astore 6 /* sqle */
        start local 6 // java.sql.SQLException sqle
        31: .line 196
            getstatic org.hibernate.id.MultipleHiLoPerTableGenerator.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            getstatic org.hibernate.id.MultipleHiLoPerTableGenerator.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            aload 0 /* this */
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator$1.this$0:Lorg/hibernate/id/MultipleHiLoPerTableGenerator;
            getfield org.hibernate.id.MultipleHiLoPerTableGenerator.tableName:Ljava/lang/String;
            invokeinterface org.hibernate.internal.CoreMessageLogger.unableToUpdateHiValue:(Ljava/lang/String;)Ljava/lang/Object;
            aload 6 /* sqle */
            invokeinterface org.hibernate.internal.CoreMessageLogger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        32: .line 197
            aload 6 /* sqle */
            athrow
        end local 6 // java.sql.SQLException sqle
        33: .line 199
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 7
        34: .line 200
            aload 5 /* updatePreparedStatement */
            invokeinterface java.sql.PreparedStatement.close:()V
        35: .line 201
            aload 7
            athrow
        start local 3 // int rows
        36: .line 200
      StackMap locals: org.hibernate.id.MultipleHiLoPerTableGenerator$1 java.sql.Connection org.hibernate.id.IntegralDataTypeHolder int java.sql.PreparedStatement java.sql.PreparedStatement
      StackMap stack:
            aload 5 /* updatePreparedStatement */
            invokeinterface java.sql.PreparedStatement.close:()V
        end local 5 // java.sql.PreparedStatement updatePreparedStatement
        end local 4 // java.sql.PreparedStatement queryPreparedStatement
        37: .line 202
            iload 3 /* rows */
            ifeq 1
        38: .line 204
            aload 2 /* value */
            areturn
        end local 3 // int rows
        end local 2 // org.hibernate.id.IntegralDataTypeHolder value
        end local 1 // java.sql.Connection connection
        end local 0 // org.hibernate.id.MultipleHiLoPerTableGenerator$1 this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   39     0                     this  Lorg/hibernate/id/MultipleHiLoPerTableGenerator$1;
            0   39     1               connection  Ljava/sql/Connection;
            1   39     2                    value  Lorg/hibernate/id/IntegralDataTypeHolder;
           29   30     3                     rows  I
           36   39     3                     rows  I
            2   37     4   queryPreparedStatement  Ljava/sql/PreparedStatement;
            3   17     5                       rs  Ljava/sql/ResultSet;
            4   17     6            isInitialized  Z
            7   14     7  insertPreparedStatement  Ljava/sql/PreparedStatement;
           19   21     5                     sqle  Ljava/sql/SQLException;
           26   37     5  updatePreparedStatement  Ljava/sql/PreparedStatement;
           31   33     6                     sqle  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           7    10      10  any
           2    17      18  Class java.sql.SQLException
           2    21      21  any
          26    29      30  Class java.sql.SQLException
          26    33      33  any
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
            Name  Flags
      connection  

  public java.lang.Object execute(java.sql.Connection);
    descriptor: (Ljava/sql/Connection;)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.hibernate.id.MultipleHiLoPerTableGenerator$1.execute:(Ljava/sql/Connection;)Lorg/hibernate/id/IntegralDataTypeHolder;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException
}
Signature: Lorg/hibernate/jdbc/AbstractReturningWork<Lorg/hibernate/id/IntegralDataTypeHolder;>;
SourceFile: "MultipleHiLoPerTableGenerator.java"
EnclosingMethod: org.hibernate.id.MultipleHiLoPerTableGenerator.generate:(Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Ljava/io/Serializable;
NestHost: org.hibernate.id.MultipleHiLoPerTableGenerator
InnerClasses:
  org.hibernate.id.MultipleHiLoPerTableGenerator$1