public class org.hibernate.loader.entity.CollectionElementLoader extends org.hibernate.loader.OuterJoinLoader
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.loader.entity.CollectionElementLoader
super_class: org.hibernate.loader.OuterJoinLoader
{
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.entity.OuterJoinLoadable persister;
descriptor: Lorg/hibernate/persister/entity/OuterJoinLoadable;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.hibernate.type.Type keyType;
descriptor: Lorg/hibernate/type/Type;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.hibernate.type.Type indexType;
descriptor: Lorg/hibernate/type/Type;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String entityName;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc Lorg/hibernate/internal/CoreMessageLogger;
1: ldc Lorg/hibernate/loader/entity/CollectionElementLoader;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
2: invokestatic org.jboss.logging.Logger.getMessageLogger:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
checkcast org.hibernate.internal.CoreMessageLogger
putstatic org.hibernate.loader.entity.CollectionElementLoader.LOG:Lorg/hibernate/internal/CoreMessageLogger;
3: return
LocalVariableTable:
Start End Slot Name Signature
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=8, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 2
aload 3
invokespecial org.hibernate.loader.OuterJoinLoader.<init>:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;)V
1: aload 0
aload 1
invokeinterface org.hibernate.persister.collection.QueryableCollection.getKeyType:()Lorg/hibernate/type/Type;
putfield org.hibernate.loader.entity.CollectionElementLoader.keyType:Lorg/hibernate/type/Type;
2: aload 0
aload 1
invokeinterface org.hibernate.persister.collection.QueryableCollection.getIndexType:()Lorg/hibernate/type/Type;
putfield org.hibernate.loader.entity.CollectionElementLoader.indexType:Lorg/hibernate/type/Type;
3: aload 0
aload 1
invokeinterface org.hibernate.persister.collection.QueryableCollection.getElementPersister:()Lorg/hibernate/persister/entity/EntityPersister;
checkcast org.hibernate.persister.entity.OuterJoinLoadable
putfield org.hibernate.loader.entity.CollectionElementLoader.persister:Lorg/hibernate/persister/entity/OuterJoinLoadable;
4: aload 0
aload 0
getfield org.hibernate.loader.entity.CollectionElementLoader.persister:Lorg/hibernate/persister/entity/OuterJoinLoadable;
invokeinterface org.hibernate.persister.entity.OuterJoinLoadable.getEntityName:()Ljava/lang/String;
putfield org.hibernate.loader.entity.CollectionElementLoader.entityName:Ljava/lang/String;
5: new org.hibernate.loader.entity.EntityJoinWalker
dup
6: aload 0
getfield org.hibernate.loader.entity.CollectionElementLoader.persister:Lorg/hibernate/persister/entity/OuterJoinLoadable;
7: aload 1
invokeinterface org.hibernate.persister.collection.QueryableCollection.getKeyColumnNames:()[Ljava/lang/String;
8: aload 1
ldc "index"
invokeinterface org.hibernate.persister.collection.QueryableCollection.toColumns:(Ljava/lang/String;)[Ljava/lang/String;
9: invokestatic org.hibernate.internal.util.collections.ArrayHelper.join:([Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
10: iconst_1
11: getstatic org.hibernate.LockMode.NONE:Lorg/hibernate/LockMode;
12: aload 2
13: aload 3
14: invokespecial org.hibernate.loader.entity.EntityJoinWalker.<init>:(Lorg/hibernate/persister/entity/OuterJoinLoadable;[Ljava/lang/String;ILorg/hibernate/LockMode;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;)V
astore 4
start local 4 15: aload 0
aload 4
invokevirtual org.hibernate.loader.entity.CollectionElementLoader.initFromWalker:(Lorg/hibernate/loader/JoinWalker;)V
16: aload 0
invokevirtual org.hibernate.loader.entity.CollectionElementLoader.postInstantiate:()V
17: getstatic org.hibernate.loader.entity.CollectionElementLoader.LOG:Lorg/hibernate/internal/CoreMessageLogger;
invokeinterface org.hibernate.internal.CoreMessageLogger.isDebugEnabled:()Z
ifeq 19
18: getstatic org.hibernate.loader.entity.CollectionElementLoader.LOG:Lorg/hibernate/internal/CoreMessageLogger;
ldc "Static select for entity %s: %s"
aload 0
getfield org.hibernate.loader.entity.CollectionElementLoader.entityName:Ljava/lang/String;
aload 0
invokevirtual org.hibernate.loader.entity.CollectionElementLoader.getSQLString:()Ljava/lang/String;
invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
19: StackMap locals: org.hibernate.loader.entity.CollectionElementLoader 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 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/hibernate/loader/entity/CollectionElementLoader;
0 20 1 collectionPersister Lorg/hibernate/persister/collection/QueryableCollection;
0 20 2 factory Lorg/hibernate/engine/spi/SessionFactoryImplementor;
0 20 3 loadQueryInfluencers Lorg/hibernate/engine/spi/LoadQueryInfluencers;
15 20 4 walker Lorg/hibernate/loader/JoinWalker;
Exceptions:
throws org.hibernate.MappingException
MethodParameters:
Name Flags
collectionPersister
factory
loadQueryInfluencers
public java.lang.Object loadElement(org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object, java.lang.Object);
descriptor: (Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
1: aload 1
2: aload 2
3: aload 3
4: aload 0
getfield org.hibernate.loader.entity.CollectionElementLoader.keyType:Lorg/hibernate/type/Type;
5: aload 0
getfield org.hibernate.loader.entity.CollectionElementLoader.indexType:Lorg/hibernate/type/Type;
6: aload 0
getfield org.hibernate.loader.entity.CollectionElementLoader.persister:Lorg/hibernate/persister/entity/OuterJoinLoadable;
7: invokevirtual org.hibernate.loader.entity.CollectionElementLoader.loadEntity:(Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/type/Type;Lorg/hibernate/type/Type;Lorg/hibernate/persister/entity/EntityPersister;)Ljava/util/List;
astore 4
start local 4 8: aload 4
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 10
9: aload 4
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
areturn
10: StackMap locals: java.util.List
StackMap stack:
aload 4
invokeinterface java.util.List.size:()I
ifne 12
11: aconst_null
areturn
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.hibernate.loader.entity.CollectionElementLoader.getCollectionOwners:()[I
ifnull 14
13: aload 4
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
areturn
14: StackMap locals:
StackMap stack:
new org.hibernate.HibernateException
dup
ldc "More than one row was found"
invokespecial org.hibernate.HibernateException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/hibernate/loader/entity/CollectionElementLoader;
0 15 1 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
0 15 2 key Ljava/lang/Object;
0 15 3 index Ljava/lang/Object;
8 15 4 list Ljava/util/List;
Exceptions:
throws org.hibernate.HibernateException
MethodParameters:
Name Flags
session
key
index
protected java.lang.Object getResultColumnOrRow(java.lang.Object[], org.hibernate.transform.ResultTransformer, java.sql.ResultSet, org.hibernate.engine.spi.SharedSessionContractImplementor);
descriptor: ([Ljava/lang/Object;Lorg/hibernate/transform/ResultTransformer;Ljava/sql/ResultSet;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
aload 1
arraylength
iconst_1
isub
aaload
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/loader/entity/CollectionElementLoader;
0 1 1 row [Ljava/lang/Object;
0 1 2 transformer Lorg/hibernate/transform/ResultTransformer;
0 1 3 rs Ljava/sql/ResultSet;
0 1 4 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
Exceptions:
throws java.sql.SQLException, org.hibernate.HibernateException
MethodParameters:
Name Flags
row
transformer
rs
session
protected boolean isSingleRowLoader();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/loader/entity/CollectionElementLoader;
}
SourceFile: "CollectionElementLoader.java"