public final class org.hibernate.hql.internal.QuerySplitter
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.hibernate.hql.internal.QuerySplitter
super_class: java.lang.Object
{
private static final org.hibernate.internal.CoreMessageLogger LOG;
descriptor: Lorg/hibernate/internal/CoreMessageLogger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.Set<java.lang.String> BEFORE_CLASS_TOKENS;
descriptor: Ljava/util/Set;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/String;>;
private static final java.util.Set<java.lang.String> NOT_AFTER_CLASS_TOKENS;
descriptor: Ljava/util/Set;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/String;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc Lorg/hibernate/hql/internal/QuerySplitter;
invokestatic org.hibernate.internal.CoreLogging.messageLogger:(Ljava/lang/Class;)Lorg/hibernate/internal/CoreMessageLogger;
putstatic org.hibernate.hql.internal.QuerySplitter.LOG:Lorg/hibernate/internal/CoreMessageLogger;
1: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic org.hibernate.hql.internal.QuerySplitter.BEFORE_CLASS_TOKENS:Ljava/util/Set;
2: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic org.hibernate.hql.internal.QuerySplitter.NOT_AFTER_CLASS_TOKENS:Ljava/util/Set;
3: getstatic org.hibernate.hql.internal.QuerySplitter.BEFORE_CLASS_TOKENS:Ljava/util/Set;
ldc "from"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
4: getstatic org.hibernate.hql.internal.QuerySplitter.BEFORE_CLASS_TOKENS:Ljava/util/Set;
ldc "delete"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
5: getstatic org.hibernate.hql.internal.QuerySplitter.BEFORE_CLASS_TOKENS:Ljava/util/Set;
ldc "update"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
6: getstatic org.hibernate.hql.internal.QuerySplitter.BEFORE_CLASS_TOKENS:Ljava/util/Set;
ldc ","
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
7: getstatic org.hibernate.hql.internal.QuerySplitter.NOT_AFTER_CLASS_TOKENS:Ljava/util/Set;
ldc "in"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
8: getstatic org.hibernate.hql.internal.QuerySplitter.NOT_AFTER_CLASS_TOKENS:Ljava/util/Set;
ldc "from"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
9: getstatic org.hibernate.hql.internal.QuerySplitter.NOT_AFTER_CLASS_TOKENS:Ljava/util/Set;
ldc ")"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
10: return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/hibernate/hql/internal/QuerySplitter;
public static java.lang.String[] concreteQueries(java.lang.String, org.hibernate.engine.spi.SessionFactoryImplementor);
descriptor: (Ljava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)[Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=15, args_size=2
start local 0 start local 1 0: ldc " \n\r\f\t(),"
aload 0
iconst_1
invokestatic org.hibernate.internal.util.StringHelper.split:(Ljava/lang/String;Ljava/lang/String;Z)[Ljava/lang/String;
astore 2
start local 2 1: aload 2
arraylength
ifne 3
2: iconst_1
anewarray java.lang.String
dup
iconst_0
aload 0
aastore
areturn
3: StackMap locals: java.lang.String[]
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 4: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 5: new java.lang.StringBuilder
dup
bipush 40
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 5
start local 5 6: aload 2
aload 5
invokestatic org.hibernate.hql.internal.QuerySplitter.getStartingPositionFor:([Ljava/lang/String;Ljava/lang/StringBuilder;)I
istore 6
start local 6 7: iconst_0
istore 7
start local 7 8: aload 2
iload 6
iconst_1
isub
aaload
getstatic java.util.Locale.ROOT:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
astore 9
start local 9 9: iload 6
istore 10
start local 10 10: goto 32
11: StackMap locals: java.lang.String org.hibernate.engine.spi.SessionFactoryImplementor java.lang.String[] java.util.ArrayList java.util.ArrayList java.lang.StringBuilder int int top java.lang.String int
StackMap stack:
aload 2
iload 10
aaload
astore 11
start local 11 12: aload 11
invokestatic org.hibernate.hql.internal.classic.ParserHelper.isWhitespace:(Ljava/lang/String;)Z
ifeq 15
13: aload 5
aload 11
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
14: goto 31
15: StackMap locals: java.lang.String
StackMap stack:
aload 2
iload 10
invokestatic org.hibernate.hql.internal.QuerySplitter.nextNonWhite:([Ljava/lang/String;I)Ljava/lang/String;
getstatic java.util.Locale.ROOT:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
astore 8
start local 8 16: aload 11
invokestatic org.hibernate.hql.internal.QuerySplitter.isJavaIdentifier:(Ljava/lang/String;)Z
ifeq 19
17: aload 9
aload 8
invokestatic org.hibernate.hql.internal.QuerySplitter.isPossiblyClassName:(Ljava/lang/String;Ljava/lang/String;)Z
ifeq 19
18: iconst_1
goto 20
StackMap locals: java.lang.String org.hibernate.engine.spi.SessionFactoryImplementor java.lang.String[] java.util.ArrayList java.util.ArrayList java.lang.StringBuilder int int java.lang.String java.lang.String int java.lang.String
StackMap stack:
19: iconst_0
StackMap locals:
StackMap stack: int
20: istore 12
start local 12 21: aload 11
getstatic java.util.Locale.ROOT:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
astore 9
22: iload 12
ifeq 30
23: aload 11
aload 1
invokestatic org.hibernate.hql.internal.QuerySplitter.getImportedClass:(Ljava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
astore 13
start local 13 24: aload 13
ifnull 30
25: aload 1
aload 13
invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getImplementors:(Ljava/lang/String;)[Ljava/lang/String;
astore 14
start local 14 26: new java.lang.StringBuilder
dup
ldc "$clazz"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 7
iinc 7 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "$"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 11
27: aload 14
ifnull 30
28: aload 3
aload 11
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
29: aload 4
aload 14
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 14 end local 13 30: StackMap locals: int
StackMap stack:
aload 5
aload 11
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 12 end local 11 end local 8 31: StackMap locals: java.lang.String org.hibernate.engine.spi.SessionFactoryImplementor java.lang.String[] java.util.ArrayList java.util.ArrayList java.lang.StringBuilder int int top java.lang.String int
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
32: iload 10
aload 2
arraylength
if_icmplt 11
end local 10 33: aload 5
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
34: aload 3
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
35: aload 4
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
36: invokestatic org.hibernate.internal.util.StringHelper.multiply:(Ljava/lang/String;Ljava/util/Iterator;Ljava/util/Iterator;)[Ljava/lang/String;
astore 10
start local 10 37: aload 10
arraylength
ifne 39
38: getstatic org.hibernate.hql.internal.QuerySplitter.LOG:Lorg/hibernate/internal/CoreMessageLogger;
aload 0
invokeinterface org.hibernate.internal.CoreMessageLogger.noPersistentClassesFound:(Ljava/lang/String;)V
39: StackMap locals: java.lang.String org.hibernate.engine.spi.SessionFactoryImplementor java.lang.String[] java.util.ArrayList java.util.ArrayList java.lang.StringBuilder int int top java.lang.String java.lang.String[]
StackMap stack:
aload 10
areturn
end local 10 end local 9 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 40 0 query Ljava/lang/String;
0 40 1 factory Lorg/hibernate/engine/spi/SessionFactoryImplementor;
1 40 2 tokens [Ljava/lang/String;
4 40 3 placeholders Ljava/util/ArrayList<Ljava/lang/String;>;
5 40 4 replacements Ljava/util/ArrayList<[Ljava/lang/String;>;
6 40 5 templateQuery Ljava/lang/StringBuilder;
7 40 6 start I
8 40 7 count I
16 31 8 next Ljava/lang/String;
9 40 9 last Ljava/lang/String;
10 33 10 i I
12 31 11 token Ljava/lang/String;
21 31 12 process Z
24 30 13 importedClassName Ljava/lang/String;
26 30 14 implementors [Ljava/lang/String;
37 40 10 results [Ljava/lang/String;
Exceptions:
throws org.hibernate.MappingException
MethodParameters:
Name Flags
query
factory
private static java.lang.String nextNonWhite(java.lang.String[], int);
descriptor: ([Ljava/lang/String;I)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iload 1
iconst_1
iadd
istore 2
start local 2 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
iload 2
aaload
invokestatic org.hibernate.hql.internal.classic.ParserHelper.isWhitespace:(Ljava/lang/String;)Z
ifne 4
3: aload 0
iload 2
aaload
areturn
4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
arraylength
if_icmplt 2
end local 2 6: aload 0
aload 0
arraylength
iconst_1
isub
aaload
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 tokens [Ljava/lang/String;
0 7 1 start I
1 6 2 i I
MethodParameters:
Name Flags
tokens
start
private static int getStartingPositionFor(java.lang.String[], java.lang.StringBuilder);
descriptor: ([Ljava/lang/String;Ljava/lang/StringBuilder;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 0
iconst_0
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
1: ldc "select"
aload 0
iconst_0
aaload
getstatic java.util.Locale.ROOT:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 3
2: iconst_1
ireturn
3: StackMap locals:
StackMap stack:
iconst_1
istore 2
start local 2 4: goto 9
5: StackMap locals: int
StackMap stack:
ldc "from"
aload 0
iload 2
aaload
getstatic java.util.Locale.ROOT:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
6: iload 2
ireturn
7: StackMap locals:
StackMap stack:
aload 1
aload 0
iload 2
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: iinc 2 1
StackMap locals:
StackMap stack:
9: iload 2
aload 0
arraylength
if_icmplt 5
end local 2 10: aload 0
arraylength
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 tokens [Ljava/lang/String;
0 11 1 templateQuery Ljava/lang/StringBuilder;
4 10 2 i I
MethodParameters:
Name Flags
tokens
templateQuery
private static boolean isPossiblyClassName(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: ldc "class"
aload 0
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 3
1: getstatic org.hibernate.hql.internal.QuerySplitter.BEFORE_CLASS_TOKENS:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 2
getstatic org.hibernate.hql.internal.QuerySplitter.NOT_AFTER_CLASS_TOKENS:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 3
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
StackMap locals:
StackMap stack:
3: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 last Ljava/lang/String;
0 4 1 next Ljava/lang/String;
MethodParameters:
Name Flags
last
next
private static boolean isJavaIdentifier(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isJavaIdentifierStart:(C)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 token Ljava/lang/String;
MethodParameters:
Name Flags
token
public static java.lang.String getImportedClass(java.lang.String, org.hibernate.engine.spi.SessionFactoryImplementor);
descriptor: (Ljava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokeinterface org.hibernate.engine.spi.SessionFactoryImplementor.getImportedClassName:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 factory Lorg/hibernate/engine/spi/SessionFactoryImplementor;
MethodParameters:
Name Flags
name
factory
}
SourceFile: "QuerySplitter.java"