public class org.hibernate.hql.spi.PersistentTableBulkIdStrategy implements org.hibernate.hql.spi.MultiTableBulkIdStrategy
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.hql.spi.PersistentTableBulkIdStrategy
  super_class: java.lang.Object
{
  private static final org.hibernate.internal.CoreMessageLogger log;
    descriptor: Lorg/hibernate/internal/CoreMessageLogger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public static final java.lang.String SHORT_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "persistent"

  public static final java.lang.String CLEAN_UP_ID_TABLES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "hibernate.hql.bulk_id_strategy.persistent.clean_up"

  public static final java.lang.String SCHEMA;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "hibernate.hql.bulk_id_strategy.persistent.schema"

  public static final java.lang.String CATALOG;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "hibernate.hql.bulk_id_strategy.persistent.catalog"

  private java.lang.String catalog;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String schema;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

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

  private java.util.List<java.lang.String> tableCleanUpDdl;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/String;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 63
            ldc Lorg/hibernate/internal/CoreMessageLogger;
         1: .line 64
            ldc Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
         2: .line 62
            invokestatic org.jboss.logging.Logger.getMessageLogger:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
            checkcast org.hibernate.internal.CoreMessageLogger
            putstatic org.hibernate.hql.spi.PersistentTableBulkIdStrategy.log:Lorg/hibernate/internal/CoreMessageLogger;
         3: .line 71
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
         0: .line 61
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;

  public void prepare(org.hibernate.engine.jdbc.spi.JdbcServices, org.hibernate.engine.jdbc.spi.JdbcConnectionAccess, org.hibernate.cfg.Mappings, org.hibernate.engine.spi.Mapping, java.util.Map);
    descriptor: (Lorg/hibernate/engine/jdbc/spi/JdbcServices;Lorg/hibernate/engine/jdbc/spi/JdbcConnectionAccess;Lorg/hibernate/cfg/Mappings;Lorg/hibernate/engine/spi/Mapping;Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=6
        start local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
        start local 1 // org.hibernate.engine.jdbc.spi.JdbcServices jdbcServices
        start local 2 // org.hibernate.engine.jdbc.spi.JdbcConnectionAccess connectionAccess
        start local 3 // org.hibernate.cfg.Mappings mappings
        start local 4 // org.hibernate.engine.spi.Mapping mapping
        start local 5 // java.util.Map settings
         0: .line 85
            aload 0 /* this */
         1: .line 86
            ldc "hibernate.hql.bulk_id_strategy.persistent.catalog"
         2: .line 87
            aload 5 /* settings */
         3: .line 88
            ldc "hibernate.default_catalog"
            aload 5 /* settings */
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
         4: .line 85
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
            putfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.catalog:Ljava/lang/String;
         5: .line 90
            aload 0 /* this */
         6: .line 91
            ldc "hibernate.hql.bulk_id_strategy.persistent.schema"
         7: .line 92
            aload 5 /* settings */
         8: .line 93
            ldc "hibernate.default_schema"
            aload 5 /* settings */
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
         9: .line 90
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getString:(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
            putfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.schema:Ljava/lang/String;
        10: .line 95
            aload 0 /* this */
            ldc "hibernate.hql.bulk_id_strategy.persistent.clean_up"
            aload 5 /* settings */
            iconst_0
            invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getBoolean:(Ljava/lang/String;Ljava/util/Map;Z)Z
            putfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.cleanUpTables:Z
        11: .line 97
            aload 3 /* mappings */
            invokeinterface org.hibernate.cfg.Mappings.iterateClasses:()Ljava/util/Iterator;
            astore 6 /* entityMappings */
        start local 6 // java.util.Iterator entityMappings
        12: .line 98
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* idTableDefinitions */
        start local 7 // java.util.List idTableDefinitions
        13: .line 99
            goto 17
        14: .line 100
      StackMap locals: java.util.Iterator java.util.List
      StackMap stack:
            aload 6 /* entityMappings */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.mapping.PersistentClass
            astore 8 /* entityMapping */
        start local 8 // org.hibernate.mapping.PersistentClass entityMapping
        15: .line 101
            aload 0 /* this */
            aload 8 /* entityMapping */
            invokevirtual org.hibernate.hql.spi.PersistentTableBulkIdStrategy.generateIdTableDefinition:(Lorg/hibernate/mapping/PersistentClass;)Lorg/hibernate/mapping/Table;
            astore 9 /* idTableDefinition */
        start local 9 // org.hibernate.mapping.Table idTableDefinition
        16: .line 102
            aload 7 /* idTableDefinitions */
            aload 9 /* idTableDefinition */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // org.hibernate.mapping.Table idTableDefinition
        end local 8 // org.hibernate.mapping.PersistentClass entityMapping
        17: .line 99
      StackMap locals:
      StackMap stack:
            aload 6 /* entityMappings */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        18: .line 104
            aload 0 /* this */
            aload 7 /* idTableDefinitions */
            aload 1 /* jdbcServices */
            aload 2 /* connectionAccess */
            aload 3 /* mappings */
            aload 4 /* mapping */
            invokevirtual org.hibernate.hql.spi.PersistentTableBulkIdStrategy.exportTableDefinitions:(Ljava/util/List;Lorg/hibernate/engine/jdbc/spi/JdbcServices;Lorg/hibernate/engine/jdbc/spi/JdbcConnectionAccess;Lorg/hibernate/cfg/Mappings;Lorg/hibernate/engine/spi/Mapping;)V
        19: .line 105
            return
        end local 7 // java.util.List idTableDefinitions
        end local 6 // java.util.Iterator entityMappings
        end local 5 // java.util.Map settings
        end local 4 // org.hibernate.engine.spi.Mapping mapping
        end local 3 // org.hibernate.cfg.Mappings mappings
        end local 2 // org.hibernate.engine.jdbc.spi.JdbcConnectionAccess connectionAccess
        end local 1 // org.hibernate.engine.jdbc.spi.JdbcServices jdbcServices
        end local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   20     0                this  Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;
            0   20     1        jdbcServices  Lorg/hibernate/engine/jdbc/spi/JdbcServices;
            0   20     2    connectionAccess  Lorg/hibernate/engine/jdbc/spi/JdbcConnectionAccess;
            0   20     3            mappings  Lorg/hibernate/cfg/Mappings;
            0   20     4             mapping  Lorg/hibernate/engine/spi/Mapping;
            0   20     5            settings  Ljava/util/Map;
           12   20     6      entityMappings  Ljava/util/Iterator<Lorg/hibernate/mapping/PersistentClass;>;
           13   20     7  idTableDefinitions  Ljava/util/List<Lorg/hibernate/mapping/Table;>;
           15   17     8       entityMapping  Lorg/hibernate/mapping/PersistentClass;
           16   17     9   idTableDefinition  Lorg/hibernate/mapping/Table;
    MethodParameters:
                  Name  Flags
      jdbcServices      
      connectionAccess  
      mappings          
      mapping           
      settings          

  protected org.hibernate.mapping.Table generateIdTableDefinition(org.hibernate.mapping.PersistentClass);
    descriptor: (Lorg/hibernate/mapping/PersistentClass;)Lorg/hibernate/mapping/Table;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
        start local 1 // org.hibernate.mapping.PersistentClass entityMapping
         0: .line 108
            new org.hibernate.mapping.Table
            dup
            aload 1 /* entityMapping */
            invokevirtual org.hibernate.mapping.PersistentClass.getTemporaryIdTableName:()Ljava/lang/String;
            invokespecial org.hibernate.mapping.Table.<init>:(Ljava/lang/String;)V
            astore 2 /* idTable */
        start local 2 // org.hibernate.mapping.Table idTable
         1: .line 109
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.catalog:Ljava/lang/String;
            ifnull 3
         2: .line 110
            aload 2 /* idTable */
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.catalog:Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Table.setCatalog:(Ljava/lang/String;)V
         3: .line 112
      StackMap locals: org.hibernate.mapping.Table
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.schema:Ljava/lang/String;
            ifnull 5
         4: .line 113
            aload 2 /* idTable */
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.schema:Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Table.setSchema:(Ljava/lang/String;)V
         5: .line 115
      StackMap locals:
      StackMap stack:
            aload 1 /* entityMapping */
            invokevirtual org.hibernate.mapping.PersistentClass.getTable:()Lorg/hibernate/mapping/Table;
            invokevirtual org.hibernate.mapping.Table.getPrimaryKey:()Lorg/hibernate/mapping/PrimaryKey;
            invokevirtual org.hibernate.mapping.PrimaryKey.getColumnIterator:()Ljava/util/Iterator;
            astore 3 /* itr */
        start local 3 // java.util.Iterator itr
         6: .line 116
            goto 9
         7: .line 117
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 3 /* itr */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.mapping.Column
            astore 4 /* column */
        start local 4 // org.hibernate.mapping.Column column
         8: .line 118
            aload 2 /* idTable */
            aload 4 /* column */
            invokevirtual org.hibernate.mapping.Column.clone:()Lorg/hibernate/mapping/Column;
            invokevirtual org.hibernate.mapping.Table.addColumn:(Lorg/hibernate/mapping/Column;)V
        end local 4 // org.hibernate.mapping.Column column
         9: .line 116
      StackMap locals:
      StackMap stack:
            aload 3 /* itr */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 120
            new org.hibernate.mapping.Column
            dup
            ldc "hib_sess_id"
            invokespecial org.hibernate.mapping.Column.<init>:(Ljava/lang/String;)V
            astore 4 /* sessionIdColumn */
        start local 4 // org.hibernate.mapping.Column sessionIdColumn
        11: .line 121
            aload 4 /* sessionIdColumn */
            ldc "CHAR(36)"
            invokevirtual org.hibernate.mapping.Column.setSqlType:(Ljava/lang/String;)V
        12: .line 122
            aload 4 /* sessionIdColumn */
            ldc "Used to hold the Hibernate Session identifier"
            invokevirtual org.hibernate.mapping.Column.setComment:(Ljava/lang/String;)V
        13: .line 123
            aload 2 /* idTable */
            aload 4 /* sessionIdColumn */
            invokevirtual org.hibernate.mapping.Table.addColumn:(Lorg/hibernate/mapping/Column;)V
        14: .line 125
            aload 2 /* idTable */
            new java.lang.StringBuilder
            dup
            ldc "Used to hold id values for the "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* entityMapping */
            invokevirtual org.hibernate.mapping.PersistentClass.getEntityName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " class"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.hibernate.mapping.Table.setComment:(Ljava/lang/String;)V
        15: .line 126
            aload 2 /* idTable */
            areturn
        end local 4 // org.hibernate.mapping.Column sessionIdColumn
        end local 3 // java.util.Iterator itr
        end local 2 // org.hibernate.mapping.Table idTable
        end local 1 // org.hibernate.mapping.PersistentClass entityMapping
        end local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             this  Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;
            0   16     1    entityMapping  Lorg/hibernate/mapping/PersistentClass;
            1   16     2          idTable  Lorg/hibernate/mapping/Table;
            6   16     3              itr  Ljava/util/Iterator;
            8    9     4           column  Lorg/hibernate/mapping/Column;
           11   16     4  sessionIdColumn  Lorg/hibernate/mapping/Column;
    MethodParameters:
               Name  Flags
      entityMapping  

  protected void exportTableDefinitions(java.util.List<org.hibernate.mapping.Table>, org.hibernate.engine.jdbc.spi.JdbcServices, org.hibernate.engine.jdbc.spi.JdbcConnectionAccess, org.hibernate.cfg.Mappings, org.hibernate.engine.spi.Mapping);
    descriptor: (Ljava/util/List;Lorg/hibernate/engine/jdbc/spi/JdbcServices;Lorg/hibernate/engine/jdbc/spi/JdbcConnectionAccess;Lorg/hibernate/cfg/Mappings;Lorg/hibernate/engine/spi/Mapping;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=12, args_size=6
        start local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
        start local 1 // java.util.List idTableDefinitions
        start local 2 // org.hibernate.engine.jdbc.spi.JdbcServices jdbcServices
        start local 3 // org.hibernate.engine.jdbc.spi.JdbcConnectionAccess connectionAccess
        start local 4 // org.hibernate.cfg.Mappings mappings
        start local 5 // org.hibernate.engine.spi.Mapping mapping
         0: .line 138
            aload 3 /* connectionAccess */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcConnectionAccess.obtainConnection:()Ljava/sql/Connection;
            astore 6 /* connection */
        start local 6 // java.sql.Connection connection
         1: .line 139
            goto 5
        end local 6 // java.sql.Connection connection
         2: .line 140
      StackMap locals:
      StackMap stack: java.lang.UnsupportedOperationException
            pop
         3: .line 142
            getstatic org.hibernate.hql.spi.PersistentTableBulkIdStrategy.log:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Unable to obtain JDBC connection; assuming ID tables already exist or wont be needed"
            invokeinterface org.hibernate.internal.CoreMessageLogger.debug:(Ljava/lang/Object;)V
         4: .line 143
            return
        start local 6 // java.sql.Connection connection
         5: .line 148
      StackMap locals: java.sql.Connection
      StackMap stack:
            aload 6 /* connection */
            invokeinterface java.sql.Connection.createStatement:()Ljava/sql/Statement;
            astore 7 /* statement */
        start local 7 // java.sql.Statement statement
         6: .line 149
            aload 1 /* idTableDefinitions */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 18
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy java.util.List org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess org.hibernate.cfg.Mappings org.hibernate.engine.spi.Mapping java.sql.Connection java.sql.Statement top java.util.Iterator
      StackMap stack:
         7: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.mapping.Table
            astore 8 /* idTableDefinition */
        start local 8 // org.hibernate.mapping.Table idTableDefinition
         8: .line 150
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.cleanUpTables:Z
            ifeq 12
         9: .line 151
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.tableCleanUpDdl:Ljava/util/List;
            ifnonnull 11
        10: .line 152
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.tableCleanUpDdl:Ljava/util/List;
        11: .line 154
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy java.util.List org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess org.hibernate.cfg.Mappings org.hibernate.engine.spi.Mapping java.sql.Connection java.sql.Statement org.hibernate.mapping.Table java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.tableCleanUpDdl:Ljava/util/List;
            aload 8 /* idTableDefinition */
            aload 2 /* jdbcServices */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getDialect:()Lorg/hibernate/dialect/Dialect;
            aconst_null
            aconst_null
            invokevirtual org.hibernate.mapping.Table.sqlDropString:(Lorg/hibernate/dialect/Dialect;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 157
      StackMap locals:
      StackMap stack:
            aload 8 /* idTableDefinition */
            aload 2 /* jdbcServices */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getDialect:()Lorg/hibernate/dialect/Dialect;
            aload 5 /* mapping */
            aconst_null
            aconst_null
            invokevirtual org.hibernate.mapping.Table.sqlCreateString:(Lorg/hibernate/dialect/Dialect;Lorg/hibernate/engine/spi/Mapping;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 10 /* sql */
        start local 10 // java.lang.String sql
        13: .line 158
            aload 2 /* jdbcServices */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getSqlStatementLogger:()Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
            aload 10 /* sql */
            invokevirtual org.hibernate.engine.jdbc.spi.SqlStatementLogger.logStatement:(Ljava/lang/String;)V
        14: .line 160
            aload 7 /* statement */
            aload 10 /* sql */
            invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
            pop
        end local 10 // java.lang.String sql
        15: .line 161
            goto 18
        16: .line 162
      StackMap locals:
      StackMap stack: java.sql.SQLException
            astore 10 /* e */
        start local 10 // java.sql.SQLException e
        17: .line 163
            getstatic org.hibernate.hql.spi.PersistentTableBulkIdStrategy.log:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Error attempting to export id-table [%s] : %s"
            aload 8 /* idTableDefinition */
            invokevirtual org.hibernate.mapping.Table.getName:()Ljava/lang/String;
            aload 10 /* e */
            invokevirtual java.sql.SQLException.getMessage:()Ljava/lang/String;
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 10 // java.sql.SQLException e
        end local 8 // org.hibernate.mapping.Table idTableDefinition
        18: .line 149
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy java.util.List org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess org.hibernate.cfg.Mappings org.hibernate.engine.spi.Mapping java.sql.Connection java.sql.Statement top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        19: .line 169
            aload 7 /* statement */
            invokeinterface java.sql.Statement.close:()V
        end local 7 // java.sql.Statement statement
        20: .line 170
            goto 31
        21: .line 171
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy java.util.List org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess org.hibernate.cfg.Mappings org.hibernate.engine.spi.Mapping java.sql.Connection
      StackMap stack: java.sql.SQLException
            astore 7 /* e */
        start local 7 // java.sql.SQLException e
        22: .line 172
            getstatic org.hibernate.hql.spi.PersistentTableBulkIdStrategy.log:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Unable to use JDBC Connection to create Statement"
            aload 7 /* e */
            invokeinterface org.hibernate.internal.CoreMessageLogger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 7 // java.sql.SQLException e
        23: .line 176
            aload 3 /* connectionAccess */
            aload 6 /* connection */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcConnectionAccess.releaseConnection:(Ljava/sql/Connection;)V
        24: .line 177
            goto 37
        25: .line 178
      StackMap locals:
      StackMap stack: java.sql.SQLException
            pop
            goto 37
        26: .line 174
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 11
        27: .line 176
            aload 3 /* connectionAccess */
            aload 6 /* connection */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcConnectionAccess.releaseConnection:(Ljava/sql/Connection;)V
        28: .line 177
            goto 30
        29: .line 178
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy java.util.List org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess org.hibernate.cfg.Mappings org.hibernate.engine.spi.Mapping java.sql.Connection top top top top java.lang.Throwable
      StackMap stack: java.sql.SQLException
            pop
        30: .line 180
      StackMap locals:
      StackMap stack:
            aload 11
            athrow
        31: .line 176
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy java.util.List org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess org.hibernate.cfg.Mappings org.hibernate.engine.spi.Mapping java.sql.Connection
      StackMap stack:
            aload 3 /* connectionAccess */
            aload 6 /* connection */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcConnectionAccess.releaseConnection:(Ljava/sql/Connection;)V
        32: .line 177
            goto 37
        33: .line 178
      StackMap locals:
      StackMap stack: java.sql.SQLException
            pop
        end local 6 // java.sql.Connection connection
        34: .line 181
            goto 37
        35: .line 182
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy java.util.List org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess org.hibernate.cfg.Mappings org.hibernate.engine.spi.Mapping
      StackMap stack: java.sql.SQLException
            astore 6 /* e */
        start local 6 // java.sql.SQLException e
        36: .line 183
            getstatic org.hibernate.hql.spi.PersistentTableBulkIdStrategy.log:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Unable obtain JDBC Connection"
            aload 6 /* e */
            invokeinterface org.hibernate.internal.CoreMessageLogger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 6 // java.sql.SQLException e
        37: .line 185
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.hibernate.engine.spi.Mapping mapping
        end local 4 // org.hibernate.cfg.Mappings mappings
        end local 3 // org.hibernate.engine.jdbc.spi.JdbcConnectionAccess connectionAccess
        end local 2 // org.hibernate.engine.jdbc.spi.JdbcServices jdbcServices
        end local 1 // java.util.List idTableDefinitions
        end local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   38     0                this  Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;
            0   38     1  idTableDefinitions  Ljava/util/List<Lorg/hibernate/mapping/Table;>;
            0   38     2        jdbcServices  Lorg/hibernate/engine/jdbc/spi/JdbcServices;
            0   38     3    connectionAccess  Lorg/hibernate/engine/jdbc/spi/JdbcConnectionAccess;
            0   38     4            mappings  Lorg/hibernate/cfg/Mappings;
            0   38     5             mapping  Lorg/hibernate/engine/spi/Mapping;
            1    2     6          connection  Ljava/sql/Connection;
            5   34     6          connection  Ljava/sql/Connection;
            6   20     7           statement  Ljava/sql/Statement;
            8   18     8   idTableDefinition  Lorg/hibernate/mapping/Table;
           13   15    10                 sql  Ljava/lang/String;
           17   18    10                   e  Ljava/sql/SQLException;
           22   23     7                   e  Ljava/sql/SQLException;
           36   37     6                   e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.UnsupportedOperationException
          12    15      16  Class java.sql.SQLException
           5    20      21  Class java.sql.SQLException
          23    24      25  Class java.sql.SQLException
           5    23      26  any
          27    28      29  Class java.sql.SQLException
          31    32      33  Class java.sql.SQLException
           0     4      35  Class java.sql.SQLException
           5    34      35  Class java.sql.SQLException
    Signature: (Ljava/util/List<Lorg/hibernate/mapping/Table;>;Lorg/hibernate/engine/jdbc/spi/JdbcServices;Lorg/hibernate/engine/jdbc/spi/JdbcConnectionAccess;Lorg/hibernate/cfg/Mappings;Lorg/hibernate/engine/spi/Mapping;)V
    MethodParameters:
                    Name  Flags
      idTableDefinitions  
      jdbcServices        
      connectionAccess    
      mappings            
      mapping             

  public void release(org.hibernate.engine.jdbc.spi.JdbcServices, org.hibernate.engine.jdbc.spi.JdbcConnectionAccess);
    descriptor: (Lorg/hibernate/engine/jdbc/spi/JdbcServices;Lorg/hibernate/engine/jdbc/spi/JdbcConnectionAccess;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=9, args_size=3
        start local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
        start local 1 // org.hibernate.engine.jdbc.spi.JdbcServices jdbcServices
        start local 2 // org.hibernate.engine.jdbc.spi.JdbcConnectionAccess connectionAccess
         0: .line 189
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.cleanUpTables:Z
            ifeq 1
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.tableCleanUpDdl:Ljava/util/List;
            ifnonnull 2
         1: .line 190
      StackMap locals:
      StackMap stack:
            return
         2: .line 194
      StackMap locals:
      StackMap stack:
            aload 2 /* connectionAccess */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcConnectionAccess.obtainConnection:()Ljava/sql/Connection;
            astore 3 /* connection */
        start local 3 // java.sql.Connection connection
         3: .line 198
            aload 3 /* connection */
            invokeinterface java.sql.Connection.createStatement:()Ljava/sql/Statement;
            astore 4 /* statement */
        start local 4 // java.sql.Statement statement
         4: .line 200
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.tableCleanUpDdl:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 11
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess java.sql.Connection java.sql.Statement top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* cleanupDdl */
        start local 5 // java.lang.String cleanupDdl
         6: .line 202
            aload 1 /* jdbcServices */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getSqlStatementLogger:()Lorg/hibernate/engine/jdbc/spi/SqlStatementLogger;
            aload 5 /* cleanupDdl */
            invokevirtual org.hibernate.engine.jdbc.spi.SqlStatementLogger.logStatement:(Ljava/lang/String;)V
         7: .line 203
            aload 4 /* statement */
            aload 5 /* cleanupDdl */
            invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
            pop
         8: .line 204
            goto 11
         9: .line 205
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess java.sql.Connection java.sql.Statement java.lang.String java.util.Iterator
      StackMap stack: java.sql.SQLException
            astore 7 /* e */
        start local 7 // java.sql.SQLException e
        10: .line 206
            getstatic org.hibernate.hql.spi.PersistentTableBulkIdStrategy.log:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Error attempting to cleanup id-table : [%s]"
            aload 7 /* e */
            invokevirtual java.sql.SQLException.getMessage:()Ljava/lang/String;
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
        end local 7 // java.sql.SQLException e
        end local 5 // java.lang.String cleanupDdl
        11: .line 200
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess java.sql.Connection java.sql.Statement top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        12: .line 212
            aload 4 /* statement */
            invokeinterface java.sql.Statement.close:()V
        end local 4 // java.sql.Statement statement
        13: .line 213
            goto 24
        14: .line 214
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess java.sql.Connection
      StackMap stack: java.sql.SQLException
            astore 4 /* e */
        start local 4 // java.sql.SQLException e
        15: .line 215
            getstatic org.hibernate.hql.spi.PersistentTableBulkIdStrategy.log:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Unable to use JDBC Connection to create Statement"
            aload 4 /* e */
            invokeinterface org.hibernate.internal.CoreMessageLogger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 4 // java.sql.SQLException e
        16: .line 219
            aload 2 /* connectionAccess */
            aload 3 /* connection */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcConnectionAccess.releaseConnection:(Ljava/sql/Connection;)V
        17: .line 220
            goto 30
        18: .line 221
      StackMap locals:
      StackMap stack: java.sql.SQLException
            pop
            goto 30
        19: .line 217
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 8
        20: .line 219
            aload 2 /* connectionAccess */
            aload 3 /* connection */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcConnectionAccess.releaseConnection:(Ljava/sql/Connection;)V
        21: .line 220
            goto 23
        22: .line 221
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess java.sql.Connection top top top top java.lang.Throwable
      StackMap stack: java.sql.SQLException
            pop
        23: .line 223
      StackMap locals:
      StackMap stack:
            aload 8
            athrow
        24: .line 219
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess java.sql.Connection
      StackMap stack:
            aload 2 /* connectionAccess */
            aload 3 /* connection */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcConnectionAccess.releaseConnection:(Ljava/sql/Connection;)V
        25: .line 220
            goto 30
        26: .line 221
      StackMap locals:
      StackMap stack: java.sql.SQLException
            pop
        end local 3 // java.sql.Connection connection
        27: .line 224
            goto 30
        28: .line 225
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy org.hibernate.engine.jdbc.spi.JdbcServices org.hibernate.engine.jdbc.spi.JdbcConnectionAccess
      StackMap stack: java.sql.SQLException
            astore 3 /* e */
        start local 3 // java.sql.SQLException e
        29: .line 226
            getstatic org.hibernate.hql.spi.PersistentTableBulkIdStrategy.log:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Unable obtain JDBC Connection"
            aload 3 /* e */
            invokeinterface org.hibernate.internal.CoreMessageLogger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 3 // java.sql.SQLException e
        30: .line 228
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.hibernate.engine.jdbc.spi.JdbcConnectionAccess connectionAccess
        end local 1 // org.hibernate.engine.jdbc.spi.JdbcServices jdbcServices
        end local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   31     0              this  Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;
            0   31     1      jdbcServices  Lorg/hibernate/engine/jdbc/spi/JdbcServices;
            0   31     2  connectionAccess  Lorg/hibernate/engine/jdbc/spi/JdbcConnectionAccess;
            3   27     3        connection  Ljava/sql/Connection;
            4   13     4         statement  Ljava/sql/Statement;
            6   11     5        cleanupDdl  Ljava/lang/String;
           10   11     7                 e  Ljava/sql/SQLException;
           15   16     4                 e  Ljava/sql/SQLException;
           29   30     3                 e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           6     8       9  Class java.sql.SQLException
           3    13      14  Class java.sql.SQLException
          16    17      18  Class java.sql.SQLException
           3    16      19  any
          20    21      22  Class java.sql.SQLException
          24    25      26  Class java.sql.SQLException
           2    27      28  Class java.sql.SQLException
    MethodParameters:
                  Name  Flags
      jdbcServices      
      connectionAccess  

  public org.hibernate.hql.spi.MultiTableBulkIdStrategy$UpdateHandler buildUpdateHandler(org.hibernate.engine.spi.SessionFactoryImplementor, org.hibernate.hql.internal.ast.HqlSqlWalker);
    descriptor: (Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/hql/internal/ast/HqlSqlWalker;)Lorg/hibernate/hql/spi/MultiTableBulkIdStrategy$UpdateHandler;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
        start local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        start local 2 // org.hibernate.hql.internal.ast.HqlSqlWalker walker
         0: .line 232
            new org.hibernate.hql.spi.PersistentTableBulkIdStrategy$1
            dup
            aload 0 /* this */
            aload 1 /* factory */
            aload 2 /* walker */
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.catalog:Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.schema:Ljava/lang/String;
            invokespecial org.hibernate.hql.spi.PersistentTableBulkIdStrategy$1.<init>:(Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/hql/internal/ast/HqlSqlWalker;Ljava/lang/String;Ljava/lang/String;)V
            areturn
        end local 2 // org.hibernate.hql.internal.ast.HqlSqlWalker walker
        end local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;
            0    1     1  factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            0    1     2   walker  Lorg/hibernate/hql/internal/ast/HqlSqlWalker;
    MethodParameters:
         Name  Flags
      factory  
      walker   

  private void bindSessionIdentifier(java.sql.PreparedStatement, org.hibernate.engine.spi.SessionImplementor, int);
    descriptor: (Ljava/sql/PreparedStatement;Lorg/hibernate/engine/spi/SessionImplementor;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
        start local 1 // java.sql.PreparedStatement ps
        start local 2 // org.hibernate.engine.spi.SessionImplementor session
        start local 3 // int position
         0: .line 263
            ldc Lorg/hibernate/internal/AbstractSessionImpl;
            aload 2 /* session */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 264
            new org.hibernate.HibernateException
            dup
            ldc "Only available on SessionImpl instances"
            invokespecial org.hibernate.HibernateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 266
      StackMap locals:
      StackMap stack:
            getstatic org.hibernate.type.UUIDCharType.INSTANCE:Lorg/hibernate/type/UUIDCharType;
            aload 1 /* ps */
            aload 2 /* session */
            checkcast org.hibernate.internal.AbstractSessionImpl
            invokevirtual org.hibernate.internal.AbstractSessionImpl.getSessionIdentifier:()Ljava/util/UUID;
            iload 3 /* position */
            aload 2 /* session */
            invokevirtual org.hibernate.type.UUIDCharType.set:(Ljava/sql/PreparedStatement;Ljava/lang/Object;ILorg/hibernate/engine/spi/SessionImplementor;)V
         3: .line 267
            return
        end local 3 // int position
        end local 2 // org.hibernate.engine.spi.SessionImplementor session
        end local 1 // java.sql.PreparedStatement ps
        end local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;
            0    4     1        ps  Ljava/sql/PreparedStatement;
            0    4     2   session  Lorg/hibernate/engine/spi/SessionImplementor;
            0    4     3  position  I
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
          Name  Flags
      ps        
      session   
      position  

  private void cleanUpRows(java.lang.String, org.hibernate.engine.spi.SessionImplementor);
    descriptor: (Ljava/lang/String;Lorg/hibernate/engine/spi/SessionImplementor;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
        start local 1 // java.lang.String tableName
        start local 2 // org.hibernate.engine.spi.SessionImplementor session
         0: .line 270
            new java.lang.StringBuilder
            dup
            ldc "delete from "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* tableName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " where hib_sess_id=?"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* sql */
        start local 3 // java.lang.String sql
         1: .line 272
            aconst_null
            astore 4 /* ps */
        start local 4 // java.sql.PreparedStatement ps
         2: .line 274
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getTransactionCoordinator:()Lorg/hibernate/engine/transaction/spi/TransactionCoordinator;
            invokeinterface org.hibernate.engine.transaction.spi.TransactionCoordinator.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.getStatementPreparer:()Lorg/hibernate/engine/jdbc/spi/StatementPreparer;
            aload 3 /* sql */
            iconst_0
            invokeinterface org.hibernate.engine.jdbc.spi.StatementPreparer.prepareStatement:(Ljava/lang/String;Z)Ljava/sql/PreparedStatement;
            astore 4 /* ps */
         3: .line 275
            aload 0 /* this */
            aload 4 /* ps */
            aload 2 /* session */
            iconst_1
            invokevirtual org.hibernate.hql.spi.PersistentTableBulkIdStrategy.bindSessionIdentifier:(Ljava/sql/PreparedStatement;Lorg/hibernate/engine/spi/SessionImplementor;I)V
         4: .line 276
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getTransactionCoordinator:()Lorg/hibernate/engine/transaction/spi/TransactionCoordinator;
            invokeinterface org.hibernate.engine.transaction.spi.TransactionCoordinator.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.getResultSetReturn:()Lorg/hibernate/engine/jdbc/spi/ResultSetReturn;
            aload 4 /* ps */
            invokeinterface org.hibernate.engine.jdbc.spi.ResultSetReturn.executeUpdate:(Ljava/sql/PreparedStatement;)I
            pop
         5: .line 277
            goto 12
         6: .line 278
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy java.lang.String org.hibernate.engine.spi.SessionImplementor java.lang.String java.sql.PreparedStatement
      StackMap stack: java.lang.Throwable
            astore 5
         7: .line 279
            aload 4 /* ps */
            ifnull 11
         8: .line 281
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getTransactionCoordinator:()Lorg/hibernate/engine/transaction/spi/TransactionCoordinator;
            invokeinterface org.hibernate.engine.transaction.spi.TransactionCoordinator.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
            aload 4 /* ps */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.release:(Ljava/sql/Statement;)V
         9: .line 282
            goto 11
        10: .line 283
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy java.lang.String org.hibernate.engine.spi.SessionImplementor java.lang.String java.sql.PreparedStatement java.lang.Throwable
      StackMap stack: java.lang.Throwable
            pop
        11: .line 287
      StackMap locals:
      StackMap stack:
            aload 5
            athrow
        12: .line 279
      StackMap locals:
      StackMap stack:
            aload 4 /* ps */
            ifnull 19
        13: .line 281
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getTransactionCoordinator:()Lorg/hibernate/engine/transaction/spi/TransactionCoordinator;
            invokeinterface org.hibernate.engine.transaction.spi.TransactionCoordinator.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
            aload 4 /* ps */
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.release:(Ljava/sql/Statement;)V
        14: .line 282
            goto 19
        15: .line 283
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
        end local 4 // java.sql.PreparedStatement ps
        16: .line 288
            goto 19
        17: .line 289
      StackMap locals: org.hibernate.hql.spi.PersistentTableBulkIdStrategy java.lang.String org.hibernate.engine.spi.SessionImplementor java.lang.String
      StackMap stack: java.sql.SQLException
            astore 4 /* e */
        start local 4 // java.sql.SQLException e
        18: .line 290
            aload 0 /* this */
            aload 2 /* session */
            invokeinterface org.hibernate.engine.spi.SessionImplementor.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            aload 4 /* e */
            new java.lang.StringBuilder
            dup
            ldc "Unable to clean up id table ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* tableName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* sql */
            invokevirtual org.hibernate.hql.spi.PersistentTableBulkIdStrategy.convert:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;Ljava/sql/SQLException;Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/JDBCException;
            athrow
        end local 4 // java.sql.SQLException e
        19: .line 292
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String sql
        end local 2 // org.hibernate.engine.spi.SessionImplementor session
        end local 1 // java.lang.String tableName
        end local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0       this  Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;
            0   20     1  tableName  Ljava/lang/String;
            0   20     2    session  Lorg/hibernate/engine/spi/SessionImplementor;
            1   20     3        sql  Ljava/lang/String;
            2   16     4         ps  Ljava/sql/PreparedStatement;
           18   19     4          e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           2     6       6  any
           8     9      10  Class java.lang.Throwable
          13    14      15  Class java.lang.Throwable
           1    16      17  Class java.sql.SQLException
    MethodParameters:
           Name  Flags
      tableName  
      session    

  protected org.hibernate.JDBCException convert(org.hibernate.engine.spi.SessionFactoryImplementor, java.sql.SQLException, java.lang.String, java.lang.String);
    descriptor: (Lorg/hibernate/engine/spi/SessionFactoryImplementor;Ljava/sql/SQLException;Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/JDBCException;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
        start local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        start local 2 // java.sql.SQLException e
        start local 3 // java.lang.String message
        start local 4 // java.lang.String sql
         0: .line 295
            aload 1 /* factory */
            invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getSQLExceptionHelper:()Lorg/hibernate/engine/jdbc/spi/SqlExceptionHelper;
            aload 2 /* e */
            aload 3 /* message */
            aload 4 /* sql */
            invokevirtual org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert:(Ljava/sql/SQLException;Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/JDBCException;
            athrow
        end local 4 // java.lang.String sql
        end local 3 // java.lang.String message
        end local 2 // java.sql.SQLException e
        end local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;
            0    1     1  factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            0    1     2        e  Ljava/sql/SQLException;
            0    1     3  message  Ljava/lang/String;
            0    1     4      sql  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      factory  
      e        
      message  
      sql      

  public org.hibernate.hql.spi.MultiTableBulkIdStrategy$DeleteHandler buildDeleteHandler(org.hibernate.engine.spi.SessionFactoryImplementor, org.hibernate.hql.internal.ast.HqlSqlWalker);
    descriptor: (Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/hql/internal/ast/HqlSqlWalker;)Lorg/hibernate/hql/spi/MultiTableBulkIdStrategy$DeleteHandler;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
        start local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        start local 2 // org.hibernate.hql.internal.ast.HqlSqlWalker walker
         0: .line 300
            new org.hibernate.hql.spi.PersistentTableBulkIdStrategy$2
            dup
            aload 0 /* this */
            aload 1 /* factory */
            aload 2 /* walker */
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.catalog:Ljava/lang/String;
            aload 0 /* this */
            getfield org.hibernate.hql.spi.PersistentTableBulkIdStrategy.schema:Ljava/lang/String;
            invokespecial org.hibernate.hql.spi.PersistentTableBulkIdStrategy$2.<init>:(Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/hql/internal/ast/HqlSqlWalker;Ljava/lang/String;Ljava/lang/String;)V
            areturn
        end local 2 // org.hibernate.hql.internal.ast.HqlSqlWalker walker
        end local 1 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 0 // org.hibernate.hql.spi.PersistentTableBulkIdStrategy this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/hibernate/hql/spi/PersistentTableBulkIdStrategy;
            0    1     1  factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            0    1     2   walker  Lorg/hibernate/hql/internal/ast/HqlSqlWalker;
    MethodParameters:
         Name  Flags
      factory  
      walker   
}
SourceFile: "PersistentTableBulkIdStrategy.java"
NestMembers:
  org.hibernate.hql.spi.PersistentTableBulkIdStrategy$1  org.hibernate.hql.spi.PersistentTableBulkIdStrategy$2
InnerClasses:
  public abstract DeleteHandler = org.hibernate.hql.spi.MultiTableBulkIdStrategy$DeleteHandler of org.hibernate.hql.spi.MultiTableBulkIdStrategy
  public abstract UpdateHandler = org.hibernate.hql.spi.MultiTableBulkIdStrategy$UpdateHandler of org.hibernate.hql.spi.MultiTableBulkIdStrategy
  org.hibernate.hql.spi.PersistentTableBulkIdStrategy$1
  org.hibernate.hql.spi.PersistentTableBulkIdStrategy$2