public class org.hibernate.loader.collection.OneToManyJoinWalker extends org.hibernate.loader.collection.CollectionJoinWalker
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.loader.collection.OneToManyJoinWalker
super_class: org.hibernate.loader.collection.CollectionJoinWalker
{
private final org.hibernate.persister.collection.QueryableCollection oneToManyPersister;
descriptor: Lorg/hibernate/persister/collection/QueryableCollection;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
protected boolean isDuplicateAssociation(java.lang.String, java.lang.String[]);
descriptor: (Ljava/lang/String;[Ljava/lang/String;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.oneToManyPersister:Lorg/hibernate/persister/collection/QueryableCollection;
invokeinterface org.hibernate.persister.collection.QueryableCollection.getTableName:()Ljava/lang/String;
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
1: aload 2
aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.oneToManyPersister:Lorg/hibernate/persister/collection/QueryableCollection;
invokeinterface org.hibernate.persister.collection.QueryableCollection.getKeyColumnNames:()[Ljava/lang/String;
invokestatic java.util.Arrays.equals:([Ljava/lang/Object;[Ljava/lang/Object;)Z
ifeq 3
2: iconst_1
goto 4
StackMap locals:
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: istore 3
start local 3 5: iload 3
ifne 8
6: aload 0
aload 1
aload 2
invokespecial org.hibernate.loader.collection.CollectionJoinWalker.isDuplicateAssociation:(Ljava/lang/String;[Ljava/lang/String;)Z
ifne 8
7: iconst_0
ireturn
StackMap locals: int
StackMap stack:
8: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/hibernate/loader/collection/OneToManyJoinWalker;
0 9 1 foreignKeyTable Ljava/lang/String;
0 9 2 foreignKeyColumns [Ljava/lang/String;
5 9 3 isSameJoin Z
MethodParameters:
Name Flags
foreignKeyTable final
foreignKeyColumns final
public void <init>(org.hibernate.persister.collection.QueryableCollection, int, java.lang.String, org.hibernate.engine.spi.SessionFactoryImplementor, org.hibernate.engine.spi.LoadQueryInfluencers);
descriptor: (Lorg/hibernate/persister/collection/QueryableCollection;ILjava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 4
aload 5
invokespecial org.hibernate.loader.collection.CollectionJoinWalker.<init>:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;Lorg/hibernate/engine/spi/LoadQueryInfluencers;)V
1: aload 0
aload 1
putfield org.hibernate.loader.collection.OneToManyJoinWalker.oneToManyPersister:Lorg/hibernate/persister/collection/QueryableCollection;
2: aload 1
invokeinterface org.hibernate.persister.collection.QueryableCollection.getElementPersister:()Lorg/hibernate/persister/entity/EntityPersister;
checkcast org.hibernate.persister.entity.OuterJoinLoadable
astore 6
start local 6 3: aload 0
aload 1
invokeinterface org.hibernate.persister.collection.QueryableCollection.getRole:()Ljava/lang/String;
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.generateRootAlias:(Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 4: aload 0
aload 6
aload 7
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.walkEntityTree:(Lorg/hibernate/persister/entity/OuterJoinLoadable;Ljava/lang/String;)V
5: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 8
start local 8 6: aload 8
aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.associations:Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
7: aload 8
8: aload 1
invokeinterface org.hibernate.persister.collection.QueryableCollection.getCollectionType:()Lorg/hibernate/type/CollectionType;
9: aload 7
10: aload 0
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
11: invokestatic org.hibernate.loader.OuterJoinableAssociation.createRoot:(Lorg/hibernate/type/AssociationType;Ljava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Lorg/hibernate/loader/OuterJoinableAssociation;
12: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
13: aload 0
aload 8
getstatic org.hibernate.LockMode.NONE:Lorg/hibernate/LockMode;
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.initPersisters:(Ljava/util/List;Lorg/hibernate/LockMode;)V
14: aload 0
aload 6
aload 7
iload 2
aload 3
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.initStatementString:(Lorg/hibernate/persister/entity/OuterJoinLoadable;Ljava/lang/String;ILjava/lang/String;)V
15: return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/hibernate/loader/collection/OneToManyJoinWalker;
0 16 1 oneToManyPersister Lorg/hibernate/persister/collection/QueryableCollection;
0 16 2 batchSize I
0 16 3 subquery Ljava/lang/String;
0 16 4 factory Lorg/hibernate/engine/spi/SessionFactoryImplementor;
0 16 5 loadQueryInfluencers Lorg/hibernate/engine/spi/LoadQueryInfluencers;
3 16 6 elementPersister Lorg/hibernate/persister/entity/OuterJoinLoadable;
4 16 7 alias Ljava/lang/String;
6 16 8 allAssociations Ljava/util/List;
Exceptions:
throws org.hibernate.MappingException
MethodParameters:
Name Flags
oneToManyPersister
batchSize
subquery
factory
loadQueryInfluencers
private void initStatementString(org.hibernate.persister.entity.OuterJoinLoadable, java.lang.String, int, java.lang.String);
descriptor: (Lorg/hibernate/persister/entity/OuterJoinLoadable;Ljava/lang/String;ILjava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.associations:Ljava/util/List;
invokestatic org.hibernate.loader.collection.OneToManyJoinWalker.countEntityPersisters:(Ljava/util/List;)I
istore 5
start local 5 1: aload 0
iload 5
iconst_1
iadd
invokestatic org.hibernate.loader.BasicLoader.generateSuffixes:(I)[Ljava/lang/String;
putfield org.hibernate.loader.collection.OneToManyJoinWalker.suffixes:[Ljava/lang/String;
2: aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.associations:Ljava/util/List;
invokestatic org.hibernate.loader.collection.OneToManyJoinWalker.countCollectionPersisters:(Ljava/util/List;)I
iconst_1
iadd
istore 6
start local 6 3: aload 0
iload 5
iconst_1
iadd
iload 6
invokestatic org.hibernate.loader.BasicLoader.generateSuffixes:(II)[Ljava/lang/String;
putfield org.hibernate.loader.collection.OneToManyJoinWalker.collectionSuffixes:[Ljava/lang/String;
4: aload 0
5: aload 2
6: aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.oneToManyPersister:Lorg/hibernate/persister/collection/QueryableCollection;
invokeinterface org.hibernate.persister.collection.QueryableCollection.getKeyColumnNames:()[Ljava/lang/String;
7: aload 4
8: iload 3
9: invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.whereString:(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/StringBuilder;
astore 7
start local 7 10: aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.oneToManyPersister:Lorg/hibernate/persister/collection/QueryableCollection;
aload 2
aload 0
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.getLoadQueryInfluencers:()Lorg/hibernate/engine/spi/LoadQueryInfluencers;
invokevirtual org.hibernate.engine.spi.LoadQueryInfluencers.getEnabledFilters:()Ljava/util/Map;
invokeinterface org.hibernate.persister.collection.QueryableCollection.filterFragment:(Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
astore 8
start local 8 11: aload 7
iconst_0
aload 8
invokestatic org.hibernate.internal.util.StringHelper.moveAndToBeginning:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/String;)Ljava/lang/StringBuilder;
pop
12: aload 0
aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.associations:Ljava/util/List;
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.mergeOuterJoins:(Ljava/util/List;)Lorg/hibernate/sql/JoinFragment;
astore 9
start local 9 13: new org.hibernate.sql.Select
dup
aload 0
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.getDialect:()Lorg/hibernate/dialect/Dialect;
invokespecial org.hibernate.sql.Select.<init>:(Lorg/hibernate/dialect/Dialect;)V
14: new java.lang.StringBuilder
dup
aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.oneToManyPersister:Lorg/hibernate/persister/collection/QueryableCollection;
15: aconst_null
16: aconst_null
17: aload 2
18: aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.suffixes:[Ljava/lang/String;
iload 5
aaload
19: aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.collectionSuffixes:[Ljava/lang/String;
iconst_0
aaload
20: iconst_1
21: invokeinterface org.hibernate.persister.collection.QueryableCollection.selectFragment:(Lorg/hibernate/persister/entity/Joinable;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
22: aload 0
aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.associations:Ljava/util/List;
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.selectString:(Ljava/util/List;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
23: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
24: invokevirtual org.hibernate.sql.Select.setSelectClause:(Ljava/lang/String;)Lorg/hibernate/sql/Select;
25: new java.lang.StringBuilder
dup
aload 1
aload 2
invokeinterface org.hibernate.persister.entity.OuterJoinLoadable.fromTableFragment:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
26: aload 1
aload 2
iconst_1
iconst_1
invokeinterface org.hibernate.persister.entity.OuterJoinLoadable.fromJoinFragment:(Ljava/lang/String;ZZ)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
27: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
28: invokevirtual org.hibernate.sql.Select.setFromClause:(Ljava/lang/String;)Lorg/hibernate/sql/Select;
29: aload 7
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.hibernate.sql.Select.setWhereClause:(Ljava/lang/String;)Lorg/hibernate/sql/Select;
30: aload 9
invokevirtual org.hibernate.sql.JoinFragment.toFromFragmentString:()Ljava/lang/String;
31: new java.lang.StringBuilder
dup
aload 9
invokevirtual org.hibernate.sql.JoinFragment.toWhereFragmentString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
32: aload 1
aload 2
iconst_1
iconst_1
invokeinterface org.hibernate.persister.entity.OuterJoinLoadable.whereJoinFragment:(Ljava/lang/String;ZZ)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
33: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
34: invokevirtual org.hibernate.sql.Select.setOuterJoins:(Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/sql/Select;
35: astore 10
start local 10 36: aload 10
aload 0
aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.associations:Ljava/util/List;
aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.oneToManyPersister:Lorg/hibernate/persister/collection/QueryableCollection;
aload 2
invokeinterface org.hibernate.persister.collection.QueryableCollection.getSQLOrderByString:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.orderBy:(Ljava/util/List;Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.hibernate.sql.Select.setOrderByClause:(Ljava/lang/String;)Lorg/hibernate/sql/Select;
pop
37: aload 0
invokevirtual org.hibernate.loader.collection.OneToManyJoinWalker.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getSessionFactoryOptions:()Lorg/hibernate/boot/spi/SessionFactoryOptions;
invokeinterface org.hibernate.boot.spi.SessionFactoryOptions.isCommentsEnabled:()Z
ifeq 39
38: aload 10
new java.lang.StringBuilder
dup
ldc "load one-to-many "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.oneToManyPersister:Lorg/hibernate/persister/collection/QueryableCollection;
invokeinterface org.hibernate.persister.collection.QueryableCollection.getRole:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.hibernate.sql.Select.setComment:(Ljava/lang/String;)Lorg/hibernate/sql/Select;
pop
39: StackMap locals: org.hibernate.loader.collection.OneToManyJoinWalker org.hibernate.persister.entity.OuterJoinLoadable java.lang.String int java.lang.String int int java.lang.StringBuilder java.lang.String org.hibernate.sql.JoinFragment org.hibernate.sql.Select
StackMap stack:
aload 0
aload 10
invokevirtual org.hibernate.sql.Select.toStatementString:()Ljava/lang/String;
putfield org.hibernate.loader.collection.OneToManyJoinWalker.sql:Ljava/lang/String;
40: return
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lorg/hibernate/loader/collection/OneToManyJoinWalker;
0 41 1 elementPersister Lorg/hibernate/persister/entity/OuterJoinLoadable;
0 41 2 alias Ljava/lang/String;
0 41 3 batchSize I
0 41 4 subquery Ljava/lang/String;
1 41 5 joins I
3 41 6 collectionJoins I
10 41 7 whereString Ljava/lang/StringBuilder;
11 41 8 filter Ljava/lang/String;
13 41 9 ojf Lorg/hibernate/sql/JoinFragment;
36 41 10 select Lorg/hibernate/sql/Select;
Exceptions:
throws org.hibernate.MappingException
MethodParameters:
Name Flags
elementPersister final
alias final
batchSize final
subquery final
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 40
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 0
getfield org.hibernate.loader.collection.OneToManyJoinWalker.oneToManyPersister:Lorg/hibernate/persister/collection/QueryableCollection;
invokeinterface org.hibernate.persister.collection.QueryableCollection.getRole:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/loader/collection/OneToManyJoinWalker;
}
SourceFile: "OneToManyJoinWalker.java"