public class org.hibernate.criterion.SizeExpression implements org.hibernate.criterion.Criterion
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.criterion.SizeExpression
super_class: java.lang.Object
{
private final java.lang.String propertyName;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int size;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String op;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
protected void <init>(java.lang.String, int, java.lang.String);
descriptor: (Ljava/lang/String;ILjava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.hibernate.criterion.SizeExpression.propertyName:Ljava/lang/String;
2: aload 0
iload 2
putfield org.hibernate.criterion.SizeExpression.size:I
3: aload 0
aload 3
putfield org.hibernate.criterion.SizeExpression.op:Ljava/lang/String;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/hibernate/criterion/SizeExpression;
0 5 1 propertyName Ljava/lang/String;
0 5 2 size I
0 5 3 op Ljava/lang/String;
MethodParameters:
Name Flags
propertyName
size
op
public java.lang.String toSqlString(org.hibernate.Criteria, org.hibernate.criterion.CriteriaQuery);
descriptor: (Lorg/hibernate/Criteria;Lorg/hibernate/criterion/CriteriaQuery;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 1
aload 0
getfield org.hibernate.criterion.SizeExpression.propertyName:Ljava/lang/String;
invokeinterface org.hibernate.criterion.CriteriaQuery.getEntityName:(Lorg/hibernate/Criteria;Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 2
aload 0
getfield org.hibernate.criterion.SizeExpression.propertyName:Ljava/lang/String;
invokeinterface org.hibernate.criterion.CriteriaQuery.getPropertyName:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 2: aload 2
invokeinterface org.hibernate.criterion.CriteriaQuery.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
aload 4
invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getCollectionPersister:(Ljava/lang/String;)Lorg/hibernate/persister/collection/CollectionPersister;
checkcast org.hibernate.persister.collection.QueryableCollection
astore 5
start local 5 3: aload 5
invokeinterface org.hibernate.persister.collection.QueryableCollection.getKeyColumnNames:()[Ljava/lang/String;
astore 6
start local 6 4: aload 5
invokeinterface org.hibernate.persister.collection.QueryableCollection.getOwnerEntityPersister:()Lorg/hibernate/persister/entity/EntityPersister;
checkcast org.hibernate.persister.entity.Loadable
invokeinterface org.hibernate.persister.entity.Loadable.getIdentifierColumnNames:()[Ljava/lang/String;
astore 7
start local 7 5: new org.hibernate.sql.ConditionFragment
dup
invokespecial org.hibernate.sql.ConditionFragment.<init>:()V
6: aload 2
aload 1
aload 0
getfield org.hibernate.criterion.SizeExpression.propertyName:Ljava/lang/String;
invokeinterface org.hibernate.criterion.CriteriaQuery.getSQLAlias:(Lorg/hibernate/Criteria;Ljava/lang/String;)Ljava/lang/String;
invokevirtual org.hibernate.sql.ConditionFragment.setTableAlias:(Ljava/lang/String;)Lorg/hibernate/sql/ConditionFragment;
7: aload 7
aload 6
invokevirtual org.hibernate.sql.ConditionFragment.setCondition:([Ljava/lang/String;[Ljava/lang/String;)Lorg/hibernate/sql/ConditionFragment;
8: astore 8
start local 8 9: getstatic java.util.Locale.ROOT:Ljava/util/Locale;
10: ldc "? %s (select count(*) from %s where %s)"
iconst_3
anewarray java.lang.Object
dup
iconst_0
11: aload 0
getfield org.hibernate.criterion.SizeExpression.op:Ljava/lang/String;
aastore
dup
iconst_1
12: aload 5
invokeinterface org.hibernate.persister.collection.QueryableCollection.getTableName:()Ljava/lang/String;
aastore
dup
iconst_2
13: aload 8
invokevirtual org.hibernate.sql.ConditionFragment.toFragmentString:()Ljava/lang/String;
aastore
14: invokestatic java.lang.String.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
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 15 0 this Lorg/hibernate/criterion/SizeExpression;
0 15 1 criteria Lorg/hibernate/Criteria;
0 15 2 criteriaQuery Lorg/hibernate/criterion/CriteriaQuery;
1 15 3 entityName Ljava/lang/String;
2 15 4 role Ljava/lang/String;
3 15 5 cp Lorg/hibernate/persister/collection/QueryableCollection;
4 15 6 fk [Ljava/lang/String;
5 15 7 pk [Ljava/lang/String;
9 15 8 subQueryRestriction Lorg/hibernate/sql/ConditionFragment;
Exceptions:
throws org.hibernate.HibernateException
MethodParameters:
Name Flags
criteria
criteriaQuery
public org.hibernate.engine.spi.TypedValue[] getTypedValues(org.hibernate.Criteria, org.hibernate.criterion.CriteriaQuery);
descriptor: (Lorg/hibernate/Criteria;Lorg/hibernate/criterion/CriteriaQuery;)[Lorg/hibernate/engine/spi/TypedValue;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iconst_1
anewarray org.hibernate.engine.spi.TypedValue
dup
iconst_0
new org.hibernate.engine.spi.TypedValue
dup
getstatic org.hibernate.type.StandardBasicTypes.INTEGER:Lorg/hibernate/type/IntegerType;
aload 0
getfield org.hibernate.criterion.SizeExpression.size:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokespecial org.hibernate.engine.spi.TypedValue.<init>:(Lorg/hibernate/type/Type;Ljava/lang/Object;)V
aastore
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/criterion/SizeExpression;
0 1 1 criteria Lorg/hibernate/Criteria;
0 1 2 criteriaQuery Lorg/hibernate/criterion/CriteriaQuery;
Exceptions:
throws org.hibernate.HibernateException
MethodParameters:
Name Flags
criteria
criteriaQuery
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
getfield org.hibernate.criterion.SizeExpression.size:I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.hibernate.criterion.SizeExpression.op:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.hibernate.criterion.SizeExpression.propertyName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".size"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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/criterion/SizeExpression;
}
SourceFile: "SizeExpression.java"