class org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader extends org.hibernate.loader.collection.CollectionLoader
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader
  super_class: org.hibernate.loader.collection.CollectionLoader
{
  private final java.lang.String sqlTemplate;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String alias;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.hibernate.persister.collection.QueryableCollection, org.hibernate.engine.spi.SessionFactoryImplementor, org.hibernate.engine.spi.LoadQueryInfluencers);
    descriptor: (Lorg/hibernate/persister/collection/QueryableCollection;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader this
        start local 1 // org.hibernate.persister.collection.QueryableCollection collectionPersister
        start local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        start local 3 // org.hibernate.engine.spi.LoadQueryInfluencers influencers
         0: .line 123
            aload 0 /* this */
            aload 1 /* collectionPersister */
            aload 2 /* factory */
            aload 3 /* influencers */
            invokespecial org.hibernate.loader.collection.CollectionLoader.<init>:(Lorg/hibernate/persister/collection/QueryableCollection;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;)V
         1: .line 125
            aload 0 /* this */
            aload 1 /* collectionPersister */
            aload 2 /* factory */
            aload 3 /* influencers */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.buildJoinWalker:(Lorg/hibernate/persister/collection/QueryableCollection;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;)Lorg/hibernate/loader/JoinWalker;
            astore 4 /* walker */
        start local 4 // org.hibernate.loader.JoinWalker walker
         2: .line 126
            aload 0 /* this */
            aload 4 /* walker */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.initFromWalker:(Lorg/hibernate/loader/JoinWalker;)V
         3: .line 127
            aload 0 /* this */
            aload 4 /* walker */
            invokevirtual org.hibernate.loader.JoinWalker.getSQLString:()Ljava/lang/String;
            putfield org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.sqlTemplate:Ljava/lang/String;
         4: .line 128
            aload 0 /* this */
            aload 1 /* collectionPersister */
            invokeinterface org.hibernate.persister.collection.QueryableCollection.getRole:()Ljava/lang/String;
            iconst_0
            invokestatic org.hibernate.internal.util.StringHelper.generateAlias:(Ljava/lang/String;I)Ljava/lang/String;
            putfield org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.alias:Ljava/lang/String;
         5: .line 129
            aload 0 /* this */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.postInstantiate:()V
         6: .line 131
            getstatic org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            invokeinterface org.hibernate.internal.CoreMessageLogger.isDebugEnabled:()Z
            ifeq 12
         7: .line 132
            getstatic org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.LOG:Lorg/hibernate/internal/CoreMessageLogger;
         8: .line 133
            ldc "SQL-template for dynamic collection [%s] batch-fetching : %s"
         9: .line 134
            aload 1 /* collectionPersister */
            invokeinterface org.hibernate.persister.collection.QueryableCollection.getRole:()Ljava/lang/String;
        10: .line 135
            aload 0 /* this */
            getfield org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.sqlTemplate:Ljava/lang/String;
        11: .line 132
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        12: .line 138
      StackMap locals: org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader org.hibernate.persister.collection.QueryableCollection org.hibernate.engine.spi.SessionFactoryImplementor org.hibernate.engine.spi.LoadQueryInfluencers org.hibernate.loader.JoinWalker
      StackMap stack:
            return
        end local 4 // org.hibernate.loader.JoinWalker walker
        end local 3 // org.hibernate.engine.spi.LoadQueryInfluencers influencers
        end local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 1 // org.hibernate.persister.collection.QueryableCollection collectionPersister
        end local 0 // org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   13     0                 this  Lorg/hibernate/loader/collection/DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader;
            0   13     1  collectionPersister  Lorg/hibernate/persister/collection/QueryableCollection;
            0   13     2              factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            0   13     3          influencers  Lorg/hibernate/engine/spi/LoadQueryInfluencers;
            2   13     4               walker  Lorg/hibernate/loader/JoinWalker;
    MethodParameters:
                     Name  Flags
      collectionPersister  
      factory              
      influencers          

  private org.hibernate.loader.JoinWalker buildJoinWalker(org.hibernate.persister.collection.QueryableCollection, org.hibernate.engine.spi.SessionFactoryImplementor, org.hibernate.engine.spi.LoadQueryInfluencers);
    descriptor: (Lorg/hibernate/persister/collection/QueryableCollection;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;)Lorg/hibernate/loader/JoinWalker;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader this
        start local 1 // org.hibernate.persister.collection.QueryableCollection collectionPersister
        start local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        start local 3 // org.hibernate.engine.spi.LoadQueryInfluencers influencers
         0: .line 145
            aload 1 /* collectionPersister */
            invokeinterface org.hibernate.persister.collection.QueryableCollection.isOneToMany:()Z
            ifeq 2
         1: .line 146
            new org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader$1
            dup
            aload 0 /* this */
            aload 1 /* collectionPersister */
            iconst_m1
            aconst_null
            aload 2 /* factory */
            aload 3 /* influencers */
            invokespecial org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader$1.<init>:(Lorg/hibernate/loader/collection/DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader;Lorg/hibernate/persister/collection/QueryableCollection;ILjava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;)V
            areturn
         2: .line 158
      StackMap locals:
      StackMap stack:
            new org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader$2
            dup
            aload 0 /* this */
            aload 1 /* collectionPersister */
            iconst_m1
            aconst_null
            aload 2 /* factory */
            aload 3 /* influencers */
            invokespecial org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader$2.<init>:(Lorg/hibernate/loader/collection/DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader;Lorg/hibernate/persister/collection/QueryableCollection;ILjava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;)V
            areturn
        end local 3 // org.hibernate.engine.spi.LoadQueryInfluencers influencers
        end local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 1 // org.hibernate.persister.collection.QueryableCollection collectionPersister
        end local 0 // org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    3     0                 this  Lorg/hibernate/loader/collection/DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader;
            0    3     1  collectionPersister  Lorg/hibernate/persister/collection/QueryableCollection;
            0    3     2              factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            0    3     3          influencers  Lorg/hibernate/engine/spi/LoadQueryInfluencers;
    MethodParameters:
                     Name  Flags
      collectionPersister  
      factory              
      influencers          

  public final void doBatchedCollectionLoad(org.hibernate.engine.spi.SharedSessionContractImplementor, java.io.Serializable[], org.hibernate.type.Type);
    descriptor: (Lorg/hibernate/engine/spi/SharedSessionContractImplementor;[Ljava/io/Serializable;Lorg/hibernate/type/Type;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=11, args_size=4
        start local 0 // org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader this
        start local 1 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        start local 2 // java.io.Serializable[] ids
        start local 3 // org.hibernate.type.Type type
         0: .line 176
            getstatic org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            invokeinterface org.hibernate.internal.CoreMessageLogger.isDebugEnabled:()Z
            ifeq 5
         1: .line 177
            getstatic org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.LOG:Lorg/hibernate/internal/CoreMessageLogger;
         2: .line 178
            ldc "Batch loading collection: %s"
         3: .line 179
            aload 0 /* this */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.getCollectionPersisters:()[Lorg/hibernate/persister/collection/CollectionPersister;
            iconst_0
            aaload
            aload 2 /* ids */
            aload 0 /* this */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokestatic org.hibernate.pretty.MessageHelper.collectionInfoString:(Lorg/hibernate/persister/collection/CollectionPersister;[Ljava/io/Serializable;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
         4: .line 177
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
         5: .line 183
      StackMap locals:
      StackMap stack:
            aload 2 /* ids */
            arraylength
            anewarray org.hibernate.type.Type
            astore 4 /* idTypes */
        start local 4 // org.hibernate.type.Type[] idTypes
         6: .line 184
            aload 4 /* idTypes */
            aload 3 /* type */
            invokestatic java.util.Arrays.fill:([Ljava/lang/Object;Ljava/lang/Object;)V
         7: .line 185
            new org.hibernate.engine.spi.QueryParameters
            dup
            aload 4 /* idTypes */
            aload 2 /* ids */
            aload 2 /* ids */
            invokespecial org.hibernate.engine.spi.QueryParameters.<init>:([Lorg/hibernate/type/Type;[Ljava/lang/Object;[Ljava/io/Serializable;)V
            astore 5 /* queryParameters */
        start local 5 // org.hibernate.engine.spi.QueryParameters queryParameters
         8: .line 188
            aload 0 /* this */
            getfield org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.sqlTemplate:Ljava/lang/String;
         9: .line 189
            aload 2 /* ids */
        10: .line 190
            aload 0 /* this */
            getfield org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.alias:Ljava/lang/String;
        11: .line 191
            aload 0 /* this */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.collectionPersister:()Lorg/hibernate/persister/collection/QueryableCollection;
            invokeinterface org.hibernate.persister.collection.QueryableCollection.getKeyColumnNames:()[Ljava/lang/String;
        12: .line 192
            aload 1 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcServices:()Lorg/hibernate/engine/jdbc/spi/JdbcServices;
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getJdbcEnvironment:()Lorg/hibernate/engine/jdbc/env/spi/JdbcEnvironment;
            invokeinterface org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getDialect:()Lorg/hibernate/dialect/Dialect;
        13: .line 187
            invokestatic org.hibernate.internal.util.StringHelper.expandBatchIdPlaceholder:(Ljava/lang/String;[Ljava/io/Serializable;Ljava/lang/String;[Ljava/lang/String;Lorg/hibernate/dialect/Dialect;)Ljava/lang/String;
            astore 6 /* sql */
        start local 6 // java.lang.String sql
        14: .line 196
            aload 1 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getPersistenceContext:()Lorg/hibernate/engine/spi/PersistenceContext;
            astore 7 /* persistenceContext */
        start local 7 // org.hibernate.engine.spi.PersistenceContext persistenceContext
        15: .line 197
            aload 7 /* persistenceContext */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.isDefaultReadOnly:()Z
            istore 8 /* defaultReadOnlyOrig */
        start local 8 // boolean defaultReadOnlyOrig
        16: .line 198
            aload 5 /* queryParameters */
            invokevirtual org.hibernate.engine.spi.QueryParameters.isReadOnlyInitialized:()Z
            ifeq 19
        17: .line 201
            aload 7 /* persistenceContext */
            aload 5 /* queryParameters */
            invokevirtual org.hibernate.engine.spi.QueryParameters.isReadOnly:()Z
            invokeinterface org.hibernate.engine.spi.PersistenceContext.setDefaultReadOnly:(Z)V
        18: .line 202
            goto 20
        19: .line 206
      StackMap locals: org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader org.hibernate.engine.spi.SharedSessionContractImplementor java.io.Serializable[] org.hibernate.type.Type org.hibernate.type.Type[] org.hibernate.engine.spi.QueryParameters java.lang.String org.hibernate.engine.spi.PersistenceContext int
      StackMap stack:
            aload 5 /* queryParameters */
            aload 7 /* persistenceContext */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.isDefaultReadOnly:()Z
            invokevirtual org.hibernate.engine.spi.QueryParameters.setReadOnly:(Z)V
        20: .line 208
      StackMap locals:
      StackMap stack:
            aload 7 /* persistenceContext */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.beforeLoad:()V
        21: .line 211
            aload 0 /* this */
            aload 6 /* sql */
            aload 5 /* queryParameters */
            aload 1 /* session */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.doTheLoad:(Ljava/lang/String;Lorg/hibernate/engine/spi/QueryParameters;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
        22: .line 212
            goto 26
        23: .line 213
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 9
        24: .line 214
            aload 7 /* persistenceContext */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.afterLoad:()V
        25: .line 215
            aload 9
            athrow
        26: .line 214
      StackMap locals:
      StackMap stack:
            aload 7 /* persistenceContext */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.afterLoad:()V
        27: .line 216
            aload 7 /* persistenceContext */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.initializeNonLazyCollections:()V
        28: .line 217
            goto 32
        29: .line 218
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 10
        30: .line 220
            aload 7 /* persistenceContext */
            iload 8 /* defaultReadOnlyOrig */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.setDefaultReadOnly:(Z)V
        31: .line 221
            aload 10
            athrow
        32: .line 220
      StackMap locals:
      StackMap stack:
            aload 7 /* persistenceContext */
            iload 8 /* defaultReadOnlyOrig */
            invokeinterface org.hibernate.engine.spi.PersistenceContext.setDefaultReadOnly:(Z)V
        end local 8 // boolean defaultReadOnlyOrig
        end local 7 // org.hibernate.engine.spi.PersistenceContext persistenceContext
        33: .line 222
            goto 42
        34: .line 223
      StackMap locals: org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader org.hibernate.engine.spi.SharedSessionContractImplementor java.io.Serializable[] org.hibernate.type.Type org.hibernate.type.Type[] org.hibernate.engine.spi.QueryParameters java.lang.String
      StackMap stack: java.sql.SQLException
            astore 7 /* e */
        start local 7 // java.sql.SQLException e
        35: .line 224
            aload 1 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcServices:()Lorg/hibernate/engine/jdbc/spi/JdbcServices;
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcServices.getSqlExceptionHelper:()Lorg/hibernate/engine/jdbc/spi/SqlExceptionHelper;
        36: .line 225
            aload 7 /* e */
        37: .line 226
            new java.lang.StringBuilder
            dup
            ldc "could not initialize a collection batch: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        38: .line 227
            aload 0 /* this */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.collectionPersister:()Lorg/hibernate/persister/collection/QueryableCollection;
            aload 2 /* ids */
            aload 0 /* this */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokestatic org.hibernate.pretty.MessageHelper.collectionInfoString:(Lorg/hibernate/persister/collection/CollectionPersister;[Ljava/io/Serializable;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        39: .line 226
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        40: .line 228
            aload 6 /* sql */
        41: .line 224
            invokevirtual org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert:(Ljava/sql/SQLException;Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/JDBCException;
            athrow
        end local 7 // java.sql.SQLException e
        42: .line 232
      StackMap locals:
      StackMap stack:
            getstatic org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.LOG:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Done batch load"
            invokeinterface org.hibernate.internal.CoreMessageLogger.debug:(Ljava/lang/Object;)V
        43: .line 234
            return
        end local 6 // java.lang.String sql
        end local 5 // org.hibernate.engine.spi.QueryParameters queryParameters
        end local 4 // org.hibernate.type.Type[] idTypes
        end local 3 // org.hibernate.type.Type type
        end local 2 // java.io.Serializable[] ids
        end local 1 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 0 // org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   44     0                 this  Lorg/hibernate/loader/collection/DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader;
            0   44     1              session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            0   44     2                  ids  [Ljava/io/Serializable;
            0   44     3                 type  Lorg/hibernate/type/Type;
            6   44     4              idTypes  [Lorg/hibernate/type/Type;
            8   44     5      queryParameters  Lorg/hibernate/engine/spi/QueryParameters;
           14   44     6                  sql  Ljava/lang/String;
           15   33     7   persistenceContext  Lorg/hibernate/engine/spi/PersistenceContext;
           16   33     8  defaultReadOnlyOrig  Z
           35   42     7                    e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
          21    23      23  any
          21    29      29  any
          14    33      34  Class java.sql.SQLException
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      session  final
      ids      final
      type     final

  private void doTheLoad(java.lang.String, org.hibernate.engine.spi.QueryParameters, org.hibernate.engine.spi.SharedSessionContractImplementor);
    descriptor: (Ljava/lang/String;Lorg/hibernate/engine/spi/QueryParameters;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=11, args_size=4
        start local 0 // org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader this
        start local 1 // java.lang.String sql
        start local 2 // org.hibernate.engine.spi.QueryParameters queryParameters
        start local 3 // org.hibernate.engine.spi.SharedSessionContractImplementor session
         0: .line 237
            aload 2 /* queryParameters */
            invokevirtual org.hibernate.engine.spi.QueryParameters.getRowSelection:()Lorg/hibernate/engine/spi/RowSelection;
            astore 4 /* selection */
        start local 4 // org.hibernate.engine.spi.RowSelection selection
         1: .line 238
            aload 4 /* selection */
            invokestatic org.hibernate.dialect.pagination.LimitHelper.hasMaxRows:(Lorg/hibernate/engine/spi/RowSelection;)Z
            ifeq 3
         2: .line 239
            aload 4 /* selection */
            invokevirtual org.hibernate.engine.spi.RowSelection.getMaxRows:()Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            goto 4
         3: .line 240
      StackMap locals: org.hibernate.engine.spi.RowSelection
      StackMap stack:
            ldc 2147483647
         4: .line 238
      StackMap locals:
      StackMap stack: int
            istore 5 /* maxRows */
        start local 5 // int maxRows
         5: .line 242
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 6 /* afterLoadActions */
        start local 6 // java.util.List afterLoadActions
         6: .line 243
            aload 0 /* this */
            aload 1 /* sql */
            aload 2 /* queryParameters */
            iconst_0
            aload 6 /* afterLoadActions */
            aload 3 /* session */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.executeQueryStatement:(Ljava/lang/String;Lorg/hibernate/engine/spi/QueryParameters;ZLjava/util/List;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Lorg/hibernate/loader/Loader$SqlStatementWrapper;
            astore 7 /* wrapper */
        start local 7 // org.hibernate.loader.Loader$SqlStatementWrapper wrapper
         7: .line 244
            aload 7 /* wrapper */
            invokevirtual org.hibernate.loader.Loader$SqlStatementWrapper.getResultSet:()Ljava/sql/ResultSet;
            astore 8 /* rs */
        start local 8 // java.sql.ResultSet rs
         8: .line 245
            aload 7 /* wrapper */
            invokevirtual org.hibernate.loader.Loader$SqlStatementWrapper.getStatement:()Ljava/sql/Statement;
            astore 9 /* st */
        start local 9 // java.sql.Statement st
         9: .line 247
            aload 0 /* this */
            aload 8 /* rs */
            aload 2 /* queryParameters */
            aload 3 /* session */
            iconst_1
            aconst_null
            iload 5 /* maxRows */
            aload 6 /* afterLoadActions */
            invokevirtual org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader.processResultSet:(Ljava/sql/ResultSet;Lorg/hibernate/engine/spi/QueryParameters;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;ZLorg/hibernate/transform/ResultTransformer;ILjava/util/List;)Ljava/util/List;
            pop
        10: .line 248
            goto 15
        11: .line 249
      StackMap locals: org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader java.lang.String org.hibernate.engine.spi.QueryParameters org.hibernate.engine.spi.SharedSessionContractImplementor org.hibernate.engine.spi.RowSelection int java.util.List org.hibernate.loader.Loader$SqlStatementWrapper java.sql.ResultSet java.sql.Statement
      StackMap stack: java.lang.Throwable
            astore 10
        12: .line 250
            aload 3 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.getLogicalConnection:()Lorg/hibernate/resource/jdbc/spi/LogicalConnectionImplementor;
            invokeinterface org.hibernate.resource.jdbc.spi.LogicalConnectionImplementor.getResourceRegistry:()Lorg/hibernate/resource/jdbc/ResourceRegistry;
            aload 9 /* st */
            invokeinterface org.hibernate.resource.jdbc.ResourceRegistry.release:(Ljava/sql/Statement;)V
        13: .line 251
            aload 3 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.afterStatementExecution:()V
        14: .line 252
            aload 10
            athrow
        15: .line 250
      StackMap locals:
      StackMap stack:
            aload 3 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.getLogicalConnection:()Lorg/hibernate/resource/jdbc/spi/LogicalConnectionImplementor;
            invokeinterface org.hibernate.resource.jdbc.spi.LogicalConnectionImplementor.getResourceRegistry:()Lorg/hibernate/resource/jdbc/ResourceRegistry;
            aload 9 /* st */
            invokeinterface org.hibernate.resource.jdbc.ResourceRegistry.release:(Ljava/sql/Statement;)V
        16: .line 251
            aload 3 /* session */
            invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getJdbcCoordinator:()Lorg/hibernate/engine/jdbc/spi/JdbcCoordinator;
            invokeinterface org.hibernate.engine.jdbc.spi.JdbcCoordinator.afterStatementExecution:()V
        17: .line 253
            return
        end local 9 // java.sql.Statement st
        end local 8 // java.sql.ResultSet rs
        end local 7 // org.hibernate.loader.Loader$SqlStatementWrapper wrapper
        end local 6 // java.util.List afterLoadActions
        end local 5 // int maxRows
        end local 4 // org.hibernate.engine.spi.RowSelection selection
        end local 3 // org.hibernate.engine.spi.SharedSessionContractImplementor session
        end local 2 // org.hibernate.engine.spi.QueryParameters queryParameters
        end local 1 // java.lang.String sql
        end local 0 // org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   18     0              this  Lorg/hibernate/loader/collection/DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader;
            0   18     1               sql  Ljava/lang/String;
            0   18     2   queryParameters  Lorg/hibernate/engine/spi/QueryParameters;
            0   18     3           session  Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
            1   18     4         selection  Lorg/hibernate/engine/spi/RowSelection;
            5   18     5           maxRows  I
            6   18     6  afterLoadActions  Ljava/util/List<Lorg/hibernate/loader/spi/AfterLoadAction;>;
            7   18     7           wrapper  Lorg/hibernate/loader/Loader$SqlStatementWrapper;
            8   18     8                rs  Ljava/sql/ResultSet;
            9   18     9                st  Ljava/sql/Statement;
      Exception table:
        from    to  target  type
           9    11      11  any
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                 Name  Flags
      sql              
      queryParameters  
      session          
}
SourceFile: "DynamicBatchingCollectionInitializerBuilder.java"
NestHost: org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder
InnerClasses:
  protected SqlStatementWrapper = org.hibernate.loader.Loader$SqlStatementWrapper of org.hibernate.loader.Loader
  private DynamicBatchingCollectionLoader = org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader of org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder
  org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader$1
  org.hibernate.loader.collection.DynamicBatchingCollectionInitializerBuilder$DynamicBatchingCollectionLoader$2