public abstract class org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer extends org.hibernate.loader.plan.exec.internal.AbstractLoadPlanBasedLoader implements org.hibernate.loader.collection.CollectionInitializer
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer
  super_class: org.hibernate.loader.plan.exec.internal.AbstractLoadPlanBasedLoader
{
  private static final org.hibernate.internal.CoreMessageLogger log;
    descriptor: Lorg/hibernate/internal/CoreMessageLogger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final org.hibernate.persister.collection.QueryableCollection collectionPersister;
    descriptor: Lorg/hibernate/persister/collection/QueryableCollection;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.hibernate.loader.plan.exec.spi.LoadQueryDetails staticLoadQuery;
    descriptor: Lorg/hibernate/loader/plan/exec/spi/LoadQueryDetails;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 56
            ldc Lorg/hibernate/loader/collection/plan/AbstractLoadPlanBasedCollectionInitializer;
            invokestatic org.hibernate.internal.CoreLogging.messageLogger:(Ljava/lang/Class;)Lorg/hibernate/internal/CoreMessageLogger;
            putstatic org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.log:Lorg/hibernate/internal/CoreMessageLogger;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.hibernate.persister.collection.QueryableCollection, org.hibernate.loader.plan.exec.query.spi.QueryBuildingParameters);
    descriptor: (Lorg/hibernate/persister/collection/QueryableCollection;Lorg/hibernate/loader/plan/exec/query/spi/QueryBuildingParameters;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
        start local 1 // org.hibernate.persister.collection.QueryableCollection collectionPersister
        start local 2 // org.hibernate.loader.plan.exec.query.spi.QueryBuildingParameters buildingParameters
         0: .line 64
            aload 0 /* this */
            aload 1 /* collectionPersister */
            invokeinterface org.hibernate.persister.collection.QueryableCollection.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokespecial org.hibernate.loader.plan.exec.internal.AbstractLoadPlanBasedLoader.<init>:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)V
         1: .line 65
            aload 0 /* this */
            aload 1 /* collectionPersister */
            putfield org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.collectionPersister:Lorg/hibernate/persister/collection/QueryableCollection;
         2: .line 68
            new org.hibernate.loader.plan.build.internal.FetchStyleLoadPlanBuildingAssociationVisitationStrategy
            dup
         3: .line 69
            aload 1 /* collectionPersister */
            invokeinterface org.hibernate.persister.collection.QueryableCollection.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
         4: .line 70
            aload 2 /* buildingParameters */
            invokeinterface org.hibernate.loader.plan.exec.query.spi.QueryBuildingParameters.getQueryInfluencers:()Lorg/hibernate/engine/spi/LoadQueryInfluencers;
         5: .line 71
            aload 2 /* buildingParameters */
            invokeinterface org.hibernate.loader.plan.exec.query.spi.QueryBuildingParameters.getLockMode:()Lorg/hibernate/LockMode;
            ifnull 7
         6: .line 72
            aload 2 /* buildingParameters */
            invokeinterface org.hibernate.loader.plan.exec.query.spi.QueryBuildingParameters.getLockMode:()Lorg/hibernate/LockMode;
            goto 8
         7: .line 73
      StackMap locals: org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer org.hibernate.persister.collection.QueryableCollection org.hibernate.loader.plan.exec.query.spi.QueryBuildingParameters
      StackMap stack: new 2 new 2 org.hibernate.engine.spi.SessionFactoryImplementor org.hibernate.engine.spi.LoadQueryInfluencers
            aload 2 /* buildingParameters */
            invokeinterface org.hibernate.loader.plan.exec.query.spi.QueryBuildingParameters.getLockOptions:()Lorg/hibernate/LockOptions;
            invokevirtual org.hibernate.LockOptions.getLockMode:()Lorg/hibernate/LockMode;
         8: .line 68
      StackMap locals: org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer org.hibernate.persister.collection.QueryableCollection org.hibernate.loader.plan.exec.query.spi.QueryBuildingParameters
      StackMap stack: new 2 new 2 org.hibernate.engine.spi.SessionFactoryImplementor org.hibernate.engine.spi.LoadQueryInfluencers org.hibernate.LockMode
            invokespecial org.hibernate.loader.plan.build.internal.FetchStyleLoadPlanBuildingAssociationVisitationStrategy.<init>:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;Lorg/hibernate/LockMode;)V
         9: .line 67
            astore 3 /* strategy */
        start local 3 // org.hibernate.loader.plan.build.internal.FetchStyleLoadPlanBuildingAssociationVisitationStrategy strategy
        10: .line 76
            aload 3 /* strategy */
            aload 1 /* collectionPersister */
            invokestatic org.hibernate.loader.plan.build.spi.MetamodelDrivenLoadPlanBuilder.buildRootCollectionLoadPlan:(Lorg/hibernate/loader/plan/build/spi/LoadPlanBuildingAssociationVisitationStrategy;Lorg/hibernate/persister/collection/CollectionPersister;)Lorg/hibernate/loader/plan/spi/LoadPlan;
            astore 4 /* plan */
        start local 4 // org.hibernate.loader.plan.spi.LoadPlan plan
        11: .line 77
            aload 0 /* this */
        12: .line 78
            aload 1 /* collectionPersister */
        13: .line 79
            aload 4 /* plan */
        14: .line 80
            aload 2 /* buildingParameters */
        15: .line 77
            invokestatic org.hibernate.loader.plan.exec.internal.BatchingLoadQueryDetailsFactory.makeCollectionLoadQueryDetails:(Lorg/hibernate/persister/collection/CollectionPersister;Lorg/hibernate/loader/plan/spi/LoadPlan;Lorg/hibernate/loader/plan/exec/query/spi/QueryBuildingParameters;)Lorg/hibernate/loader/plan/exec/spi/LoadQueryDetails;
            putfield org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.staticLoadQuery:Lorg/hibernate/loader/plan/exec/spi/LoadQueryDetails;
        16: .line 82
            return
        end local 4 // org.hibernate.loader.plan.spi.LoadPlan plan
        end local 3 // org.hibernate.loader.plan.build.internal.FetchStyleLoadPlanBuildingAssociationVisitationStrategy strategy
        end local 2 // org.hibernate.loader.plan.exec.query.spi.QueryBuildingParameters buildingParameters
        end local 1 // org.hibernate.persister.collection.QueryableCollection collectionPersister
        end local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   17     0                 this  Lorg/hibernate/loader/collection/plan/AbstractLoadPlanBasedCollectionInitializer;
            0   17     1  collectionPersister  Lorg/hibernate/persister/collection/QueryableCollection;
            0   17     2   buildingParameters  Lorg/hibernate/loader/plan/exec/query/spi/QueryBuildingParameters;
           10   17     3             strategy  Lorg/hibernate/loader/plan/build/internal/FetchStyleLoadPlanBuildingAssociationVisitationStrategy;
           11   17     4                 plan  Lorg/hibernate/loader/plan/spi/LoadPlan;
    MethodParameters:
                     Name  Flags
      collectionPersister  
      buildingParameters   

  public void initialize(java.io.Serializable, org.hibernate.engine.spi.SessionImplementor);
    descriptor: (Ljava/io/Serializable;Lorg/hibernate/engine/spi/SessionImplementor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
        start local 1 // java.io.Serializable id
        start local 2 // org.hibernate.engine.spi.SessionImplementor session
         0: .line 87
            getstatic org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.log:Lorg/hibernate/internal/CoreMessageLogger;
            invokeinterface org.hibernate.internal.CoreMessageLogger.isDebugEnabled:()Z
            ifeq 4
         1: .line 88
            getstatic org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.log:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Loading collection: %s"
         2: .line 89
            aload 0 /* this */
            getfield org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.collectionPersister:Lorg/hibernate/persister/collection/QueryableCollection;
            aload 1 /* id */
            aload 0 /* this */
            invokevirtual org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.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;
         3: .line 88
            invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
         4: .line 93
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray java.io.Serializable
            dup
            iconst_0
            aload 1 /* id */
            aastore
            astore 3 /* ids */
        start local 3 // java.io.Serializable[] ids
         5: .line 95
            new org.hibernate.engine.spi.QueryParameters
            dup
            invokespecial org.hibernate.engine.spi.QueryParameters.<init>:()V
            astore 4 /* qp */
        start local 4 // org.hibernate.engine.spi.QueryParameters qp
         6: .line 96
            aload 4 /* qp */
            iconst_1
            anewarray org.hibernate.type.Type
            dup
            iconst_0
            aload 0 /* this */
            getfield org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.collectionPersister:Lorg/hibernate/persister/collection/QueryableCollection;
            invokeinterface org.hibernate.persister.collection.QueryableCollection.getKeyType:()Lorg/hibernate/type/Type;
            aastore
            invokevirtual org.hibernate.engine.spi.QueryParameters.setPositionalParameterTypes:([Lorg/hibernate/type/Type;)V
         7: .line 97
            aload 4 /* qp */
            aload 3 /* ids */
            invokevirtual org.hibernate.engine.spi.QueryParameters.setPositionalParameterValues:([Ljava/lang/Object;)V
         8: .line 98
            aload 4 /* qp */
            aload 3 /* ids */
            invokevirtual org.hibernate.engine.spi.QueryParameters.setCollectionKeys:([Ljava/io/Serializable;)V
         9: .line 100
            aload 0 /* this */
        10: .line 101
            aload 2 /* session */
        11: .line 102
            aload 4 /* qp */
        12: .line 103
            aload 0 /* this */
            getfield org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.staticLoadQuery:Lorg/hibernate/loader/plan/exec/spi/LoadQueryDetails;
        13: .line 104
            iconst_1
        14: .line 105
            aconst_null
        15: .line 100
            invokevirtual org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.executeLoad:(Lorg/hibernate/engine/spi/SessionImplementor;Lorg/hibernate/engine/spi/QueryParameters;Lorg/hibernate/loader/plan/exec/spi/LoadQueryDetails;ZLorg/hibernate/transform/ResultTransformer;)Ljava/util/List;
            pop
        end local 4 // org.hibernate.engine.spi.QueryParameters qp
        16: .line 108
            goto 25
        17: .line 109
      StackMap locals: org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer java.io.Serializable org.hibernate.engine.spi.SessionImplementor java.io.Serializable[]
      StackMap stack: java.sql.SQLException
            astore 4 /* sqle */
        start local 4 // java.sql.SQLException sqle
        18: .line 110
            aload 0 /* this */
            invokevirtual org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getSQLExceptionHelper:()Lorg/hibernate/engine/jdbc/spi/SqlExceptionHelper;
        19: .line 111
            aload 4 /* sqle */
        20: .line 112
            new java.lang.StringBuilder
            dup
            ldc "could not initialize a collection: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        21: .line 113
            aload 0 /* this */
            getfield org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.collectionPersister:Lorg/hibernate/persister/collection/QueryableCollection;
            aload 1 /* id */
            aload 0 /* this */
            invokevirtual org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.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;
        22: .line 112
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        23: .line 114
            aload 0 /* this */
            getfield org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.staticLoadQuery:Lorg/hibernate/loader/plan/exec/spi/LoadQueryDetails;
            invokeinterface org.hibernate.loader.plan.exec.spi.LoadQueryDetails.getSqlStatement:()Ljava/lang/String;
        24: .line 110
            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.sql.SQLException sqle
        25: .line 118
      StackMap locals:
      StackMap stack:
            getstatic org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.log:Lorg/hibernate/internal/CoreMessageLogger;
            ldc "Done loading collection"
            invokeinterface org.hibernate.internal.CoreMessageLogger.debug:(Ljava/lang/Object;)V
        26: .line 119
            return
        end local 3 // java.io.Serializable[] ids
        end local 2 // org.hibernate.engine.spi.SessionImplementor session
        end local 1 // java.io.Serializable id
        end local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   27     0     this  Lorg/hibernate/loader/collection/plan/AbstractLoadPlanBasedCollectionInitializer;
            0   27     1       id  Ljava/io/Serializable;
            0   27     2  session  Lorg/hibernate/engine/spi/SessionImplementor;
            5   27     3      ids  [Ljava/io/Serializable;
            6   16     4       qp  Lorg/hibernate/engine/spi/QueryParameters;
           18   25     4     sqle  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           5    16      17  Class java.sql.SQLException
    Exceptions:
      throws org.hibernate.HibernateException
    MethodParameters:
         Name  Flags
      id       
      session  

  protected org.hibernate.persister.collection.QueryableCollection collectionPersister();
    descriptor: ()Lorg/hibernate/persister/collection/QueryableCollection;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
         0: .line 122
            aload 0 /* this */
            getfield org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.collectionPersister:Lorg/hibernate/persister/collection/QueryableCollection;
            areturn
        end local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/loader/collection/plan/AbstractLoadPlanBasedCollectionInitializer;

  protected org.hibernate.loader.plan.exec.spi.LoadQueryDetails getStaticLoadQuery();
    descriptor: ()Lorg/hibernate/loader/plan/exec/spi/LoadQueryDetails;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
         0: .line 127
            aload 0 /* this */
            getfield org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer.staticLoadQuery:Lorg/hibernate/loader/plan/exec/spi/LoadQueryDetails;
            areturn
        end local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/loader/collection/plan/AbstractLoadPlanBasedCollectionInitializer;

  protected int[] getNamedParameterLocs(java.lang.String);
    descriptor: (Ljava/lang/String;)[I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
        start local 1 // java.lang.String name
         0: .line 132
            new org.hibernate.AssertionFailure
            dup
            ldc "no named parameters"
            invokespecial org.hibernate.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String name
        end local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/loader/collection/plan/AbstractLoadPlanBasedCollectionInitializer;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  protected void autoDiscoverTypes(java.sql.ResultSet);
    descriptor: (Ljava/sql/ResultSet;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
        start local 1 // java.sql.ResultSet rs
         0: .line 137
            new org.hibernate.AssertionFailure
            dup
            ldc "Auto discover types not supported in this loader"
            invokespecial org.hibernate.AssertionFailure.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.sql.ResultSet rs
        end local 0 // org.hibernate.loader.collection.plan.AbstractLoadPlanBasedCollectionInitializer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/loader/collection/plan/AbstractLoadPlanBasedCollectionInitializer;
            0    1     1    rs  Ljava/sql/ResultSet;
    MethodParameters:
      Name  Flags
      rs    
}
SourceFile: "AbstractLoadPlanBasedCollectionInitializer.java"