public class org.hibernate.cache.internal.QueryResultsCacheImpl implements org.hibernate.cache.spi.QueryResultsCache
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.cache.internal.QueryResultsCacheImpl
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 boolean DEBUGGING;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean TRACING;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final org.hibernate.cache.spi.QueryResultsRegion cacheRegion;
descriptor: Lorg/hibernate/cache/spi/QueryResultsRegion;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.hibernate.cache.spi.TimestampsCache timestampsCache;
descriptor: Lorg/hibernate/cache/spi/TimestampsCache;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/hibernate/cache/internal/QueryResultsCacheImpl;
invokestatic org.hibernate.internal.CoreLogging.messageLogger:(Ljava/lang/Class;)Lorg/hibernate/internal/CoreMessageLogger;
putstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
1: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
invokeinterface org.hibernate.internal.CoreMessageLogger.isDebugEnabled:()Z
putstatic org.hibernate.cache.internal.QueryResultsCacheImpl.DEBUGGING:Z
2: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
invokeinterface org.hibernate.internal.CoreMessageLogger.isTraceEnabled:()Z
putstatic org.hibernate.cache.internal.QueryResultsCacheImpl.TRACING:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(org.hibernate.cache.spi.QueryResultsRegion, org.hibernate.cache.spi.TimestampsCache);
descriptor: (Lorg/hibernate/cache/spi/QueryResultsRegion;Lorg/hibernate/cache/spi/TimestampsCache;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.hibernate.cache.internal.QueryResultsCacheImpl.cacheRegion:Lorg/hibernate/cache/spi/QueryResultsRegion;
2: aload 0
aload 2
putfield org.hibernate.cache.internal.QueryResultsCacheImpl.timestampsCache:Lorg/hibernate/cache/spi/TimestampsCache;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hibernate/cache/internal/QueryResultsCacheImpl;
0 4 1 cacheRegion Lorg/hibernate/cache/spi/QueryResultsRegion;
0 4 2 timestampsCache Lorg/hibernate/cache/spi/TimestampsCache;
MethodParameters:
Name Flags
cacheRegion
timestampsCache
public org.hibernate.cache.spi.QueryResultsRegion getRegion();
descriptor: ()Lorg/hibernate/cache/spi/QueryResultsRegion;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hibernate.cache.internal.QueryResultsCacheImpl.cacheRegion:Lorg/hibernate/cache/spi/QueryResultsRegion;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/cache/internal/QueryResultsCacheImpl;
public boolean put(org.hibernate.cache.spi.QueryKey, java.util.List, org.hibernate.type.Type[], org.hibernate.engine.spi.SharedSessionContractImplementor);
descriptor: (Lorg/hibernate/cache/spi/QueryKey;Ljava/util/List;[Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.DEBUGGING:Z
ifeq 2
1: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
ldc "Caching query results in region: %s; timestamp=%s"
aload 0
getfield org.hibernate.cache.internal.QueryResultsCacheImpl.cacheRegion:Lorg/hibernate/cache/spi/QueryResultsRegion;
invokeinterface org.hibernate.cache.spi.QueryResultsRegion.getName:()Ljava/lang/String;
aload 4
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getTransactionStartTimestamp:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.List.size:()I
invokestatic org.hibernate.internal.util.collections.CollectionHelper.arrayList:(I)Ljava/util/ArrayList;
astore 5
start local 5 3: aload 3
arraylength
iconst_1
if_icmpne 4
iconst_1
goto 5
StackMap locals: java.util.List
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: istore 6
start local 6 6: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 15
StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey java.util.List org.hibernate.type.Type[] org.hibernate.engine.spi.SharedSessionContractImplementor java.util.List int top java.util.Iterator
StackMap stack:
7: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 7
start local 7 8: iload 6
ifeq 11
9: aload 3
iconst_0
aaload
aload 7
aload 4
aconst_null
invokeinterface org.hibernate.type.Type.disassemble:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/io/Serializable;
astore 9
start local 9 10: goto 12
end local 9 11: StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey java.util.List org.hibernate.type.Type[] org.hibernate.engine.spi.SharedSessionContractImplementor java.util.List int java.lang.Object java.util.Iterator
StackMap stack:
aload 7
checkcast java.lang.Object[]
aload 3
aconst_null
aload 4
aconst_null
invokestatic org.hibernate.type.TypeHelper.disassemble:([Ljava/lang/Object;[Lorg/hibernate/type/Type;[ZLorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)[Ljava/io/Serializable;
astore 9
start local 9 12: StackMap locals: java.io.Serializable
StackMap stack:
aload 5
aload 9
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
13: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.TRACING:Z
ifeq 15
14: aload 3
aload 7
invokestatic org.hibernate.cache.internal.QueryResultsCacheImpl.logCachedResultRowDetails:([Lorg/hibernate/type/Type;Ljava/lang/Object;)V
end local 9 end local 7 15: StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey java.util.List org.hibernate.type.Type[] org.hibernate.engine.spi.SharedSessionContractImplementor java.util.List int top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
16: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.TRACING:Z
ifeq 18
17: aload 1
aconst_null
aload 3
aload 5
invokestatic org.hibernate.cache.internal.QueryResultsCacheImpl.logCachedResultDetails:(Lorg/hibernate/cache/spi/QueryKey;Ljava/util/Set;[Lorg/hibernate/type/Type;Ljava/util/List;)V
18: StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey java.util.List org.hibernate.type.Type[] org.hibernate.engine.spi.SharedSessionContractImplementor java.util.List int
StackMap stack:
new org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem
dup
19: aload 4
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getTransactionStartTimestamp:()J
20: aload 5
21: invokespecial org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem.<init>:(JLjava/util/List;)V
astore 7
start local 7 22: aload 4
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getEventListenerManager:()Lorg/hibernate/engine/spi/SessionEventListenerManager;
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.cachePutStart:()V
23: aload 0
getfield org.hibernate.cache.internal.QueryResultsCacheImpl.cacheRegion:Lorg/hibernate/cache/spi/QueryResultsRegion;
aload 1
aload 7
aload 4
invokeinterface org.hibernate.cache.spi.QueryResultsRegion.putIntoCache:(Ljava/lang/Object;Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
24: goto 28
25: StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey java.util.List org.hibernate.type.Type[] org.hibernate.engine.spi.SharedSessionContractImplementor java.util.List int org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem
StackMap stack: java.lang.Throwable
astore 8
26: aload 4
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getEventListenerManager:()Lorg/hibernate/engine/spi/SessionEventListenerManager;
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.cachePutEnd:()V
27: aload 8
athrow
28: StackMap locals:
StackMap stack:
aload 4
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getEventListenerManager:()Lorg/hibernate/engine/spi/SessionEventListenerManager;
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.cachePutEnd:()V
29: iconst_1
ireturn
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 30 0 this Lorg/hibernate/cache/internal/QueryResultsCacheImpl;
0 30 1 key Lorg/hibernate/cache/spi/QueryKey;
0 30 2 results Ljava/util/List;
0 30 3 returnTypes [Lorg/hibernate/type/Type;
0 30 4 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
3 30 5 resultsCopy Ljava/util/List;
6 30 6 isSingleResult Z
8 15 7 aResult Ljava/lang/Object;
10 11 9 resultRowForCache Ljava/io/Serializable;
12 15 9 resultRowForCache Ljava/io/Serializable;
22 30 7 cacheItem Lorg/hibernate/cache/internal/QueryResultsCacheImpl$CacheItem;
Exception table:
from to target type
22 25 25 any
Exceptions:
throws org.hibernate.HibernateException
MethodParameters:
Name Flags
key final
results final
returnTypes final
session final
private static void logCachedResultDetails(org.hibernate.cache.spi.QueryKey, java.util.Set, org.hibernate.type.Type[], java.util.List);
descriptor: (Lorg/hibernate/cache/spi/QueryKey;Ljava/util/Set;[Lorg/hibernate/type/Type;Ljava/util/List;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.TRACING:Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
new java.lang.StringBuilder
dup
ldc "key.hashCode="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual org.hibernate.cache.spi.QueryKey.hashCode:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.hibernate.internal.CoreMessageLogger.trace:(Ljava/lang/Object;)V
3: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
new java.lang.StringBuilder
dup
ldc "querySpaces="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.hibernate.internal.CoreMessageLogger.trace:(Ljava/lang/Object;)V
4: aload 2
ifnull 5
aload 2
arraylength
ifne 16
5: StackMap locals:
StackMap stack:
getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
6: new java.lang.StringBuilder
dup
ldc "Unexpected returnTypes is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
7: aload 2
ifnonnull 8
ldc "null"
goto 9
StackMap locals: org.hibernate.cache.spi.QueryKey java.util.Set org.hibernate.type.Type[] java.util.List
StackMap stack: org.hibernate.internal.CoreMessageLogger java.lang.StringBuilder
8: ldc "empty"
StackMap locals: org.hibernate.cache.spi.QueryKey java.util.Set org.hibernate.type.Type[] java.util.List
StackMap stack: org.hibernate.internal.CoreMessageLogger java.lang.StringBuilder java.lang.String
9: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "! result"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: aload 3
ifnonnull 11
ldc " is null"
goto 12
StackMap locals: org.hibernate.cache.spi.QueryKey java.util.Set org.hibernate.type.Type[] java.util.List
StackMap stack: org.hibernate.internal.CoreMessageLogger java.lang.StringBuilder
11: new java.lang.StringBuilder
dup
ldc ".size()="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokeinterface java.util.List.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
StackMap locals: org.hibernate.cache.spi.QueryKey java.util.Set org.hibernate.type.Type[] java.util.List
StackMap stack: org.hibernate.internal.CoreMessageLogger java.lang.StringBuilder java.lang.String
12: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
14: invokeinterface org.hibernate.internal.CoreMessageLogger.trace:(Ljava/lang/Object;)V
15: goto 27
16: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 4
start local 4 17: aload 2
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 25
StackMap locals: org.hibernate.cache.spi.QueryKey java.util.Set org.hibernate.type.Type[] java.util.List java.lang.StringBuilder top int int org.hibernate.type.Type[]
StackMap stack:
18: aload 8
iload 6
aaload
astore 5
start local 5 19: aload 4
ldc "typename="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
20: aload 5
invokeinterface org.hibernate.type.Type.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
21: ldc " class="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
22: aload 5
invokeinterface org.hibernate.type.Type.getReturnedClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
23: bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 5 24: iinc 6 1
StackMap locals:
StackMap stack:
25: iload 6
iload 7
if_icmplt 18
26: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
new java.lang.StringBuilder
dup
ldc "unexpected returnTypes is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "! result"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.hibernate.internal.CoreMessageLogger.trace:(Ljava/lang/Object;)V
end local 4 27: StackMap locals: org.hibernate.cache.spi.QueryKey java.util.Set org.hibernate.type.Type[] java.util.List
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 key Lorg/hibernate/cache/spi/QueryKey;
0 28 1 querySpaces Ljava/util/Set;
0 28 2 returnTypes [Lorg/hibernate/type/Type;
0 28 3 result Ljava/util/List;
17 27 4 returnTypeInfo Ljava/lang/StringBuilder;
19 24 5 returnType Lorg/hibernate/type/Type;
MethodParameters:
Name Flags
key
querySpaces
returnTypes
result
public java.util.List get(org.hibernate.cache.spi.QueryKey, java.util.Set<java.io.Serializable>, org.hibernate.type.Type[], org.hibernate.engine.spi.SharedSessionContractImplementor);
descriptor: (Lorg/hibernate/cache/spi/QueryKey;Ljava/util/Set;[Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
1: aload 1
2: getstatic org.hibernate.cache.spi.QuerySpacesHelper.INSTANCE:Lorg/hibernate/cache/spi/QuerySpacesHelper;
aload 2
invokevirtual org.hibernate.cache.spi.QuerySpacesHelper.toStringArray:(Ljava/util/Set;)[Ljava/lang/String;
3: aload 3
4: aload 4
5: invokevirtual org.hibernate.cache.internal.QueryResultsCacheImpl.get:(Lorg/hibernate/cache/spi/QueryKey;[Ljava/lang/String;[Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/util/List;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/hibernate/cache/internal/QueryResultsCacheImpl;
0 6 1 key Lorg/hibernate/cache/spi/QueryKey;
0 6 2 spaces Ljava/util/Set<Ljava/io/Serializable;>;
0 6 3 returnTypes [Lorg/hibernate/type/Type;
0 6 4 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
Signature: (Lorg/hibernate/cache/spi/QueryKey;Ljava/util/Set<Ljava/io/Serializable;>;[Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/util/List;
MethodParameters:
Name Flags
key
spaces
returnTypes final
session
public java.util.List get(org.hibernate.cache.spi.QueryKey, java.lang.String[], org.hibernate.type.Type[], org.hibernate.engine.spi.SharedSessionContractImplementor);
descriptor: (Lorg/hibernate/cache/spi/QueryKey;[Ljava/lang/String;[Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.DEBUGGING:Z
ifeq 2
1: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
ldc "Checking cached query results in region: %s"
aload 0
getfield org.hibernate.cache.internal.QueryResultsCacheImpl.cacheRegion:Lorg/hibernate/cache/spi/QueryResultsRegion;
invokeinterface org.hibernate.cache.spi.QueryResultsRegion.getName:()Ljava/lang/String;
invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 4
invokevirtual org.hibernate.cache.internal.QueryResultsCacheImpl.getCachedData:(Lorg/hibernate/cache/spi/QueryKey;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Lorg/hibernate/cache/internal/QueryResultsCacheImpl$CacheItem;
astore 5
start local 5 3: aload 5
ifnonnull 7
4: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.DEBUGGING:Z
ifeq 6
5: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
ldc "Query results were not found in cache"
invokeinterface org.hibernate.internal.CoreMessageLogger.debug:(Ljava/lang/Object;)V
6: StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem
StackMap stack:
aconst_null
areturn
7: StackMap locals:
StackMap stack:
aload 0
getfield org.hibernate.cache.internal.QueryResultsCacheImpl.timestampsCache:Lorg/hibernate/cache/spi/TimestampsCache;
aload 2
aload 5
getfield org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem.timestamp:J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 4
invokeinterface org.hibernate.cache.spi.TimestampsCache.isUpToDate:([Ljava/lang/String;Ljava/lang/Long;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Z
ifne 11
8: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.DEBUGGING:Z
ifeq 10
9: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
ldc "Cached query results were not up-to-date"
invokeinterface org.hibernate.internal.CoreMessageLogger.debug:(Ljava/lang/Object;)V
10: StackMap locals:
StackMap stack:
aconst_null
areturn
11: StackMap locals:
StackMap stack:
getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.DEBUGGING:Z
ifeq 13
12: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
ldc "Returning cached query results"
invokeinterface org.hibernate.internal.CoreMessageLogger.debug:(Ljava/lang/Object;)V
13: StackMap locals:
StackMap stack:
aload 3
arraylength
iconst_1
if_icmpne 14
iconst_1
goto 15
StackMap locals:
StackMap stack:
14: iconst_0
StackMap locals:
StackMap stack: int
15: istore 6
start local 6 16: iconst_0
istore 7
start local 7 17: goto 23
18: StackMap locals: int int
StackMap stack:
iload 6
ifeq 21
19: aload 3
iconst_0
aaload
aload 5
getfield org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem.results:Ljava/util/List;
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.io.Serializable
aload 4
invokeinterface org.hibernate.type.Type.beforeAssemble:(Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
20: goto 22
21: StackMap locals:
StackMap stack:
aload 5
getfield org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem.results:Ljava/util/List;
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.io.Serializable[]
aload 3
aload 4
invokestatic org.hibernate.type.TypeHelper.beforeAssemble:([Ljava/io/Serializable;[Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)V
22: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
23: iload 7
aload 5
getfield org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem.results:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 18
end local 7 24: aload 0
aload 1
aload 5
getfield org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem.results:Ljava/util/List;
iload 6
aload 3
aload 4
invokevirtual org.hibernate.cache.internal.QueryResultsCacheImpl.assembleCachedResult:(Lorg/hibernate/cache/spi/QueryKey;Ljava/util/List;Z[Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/util/List;
areturn
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 25 0 this Lorg/hibernate/cache/internal/QueryResultsCacheImpl;
0 25 1 key Lorg/hibernate/cache/spi/QueryKey;
0 25 2 spaces [Ljava/lang/String;
0 25 3 returnTypes [Lorg/hibernate/type/Type;
0 25 4 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
3 25 5 cacheItem Lorg/hibernate/cache/internal/QueryResultsCacheImpl$CacheItem;
16 25 6 singleResult Z
17 24 7 i I
MethodParameters:
Name Flags
key final
spaces final
returnTypes final
session final
private org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem getCachedData(org.hibernate.cache.spi.QueryKey, org.hibernate.engine.spi.SharedSessionContractImplementor);
descriptor: (Lorg/hibernate/cache/spi/QueryKey;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Lorg/hibernate/cache/internal/QueryResultsCacheImpl$CacheItem;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getEventListenerManager:()Lorg/hibernate/engine/spi/SessionEventListenerManager;
invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.cacheGetStart:()V
2: aload 0
getfield org.hibernate.cache.internal.QueryResultsCacheImpl.cacheRegion:Lorg/hibernate/cache/spi/QueryResultsRegion;
aload 1
aload 2
invokeinterface org.hibernate.cache.spi.QueryResultsRegion.getFromCache:(Ljava/lang/Object;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/lang/Object;
checkcast org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem
astore 3
3: goto 9
4: StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey org.hibernate.engine.spi.SharedSessionContractImplementor org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem
StackMap stack: java.lang.Throwable
astore 4
5: aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getEventListenerManager:()Lorg/hibernate/engine/spi/SessionEventListenerManager;
aload 3
ifnull 6
iconst_1
goto 7
StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey org.hibernate.engine.spi.SharedSessionContractImplementor org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem java.lang.Throwable
StackMap stack: org.hibernate.engine.spi.SessionEventListenerManager
6: iconst_0
StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey org.hibernate.engine.spi.SharedSessionContractImplementor org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem java.lang.Throwable
StackMap stack: org.hibernate.engine.spi.SessionEventListenerManager int
7: invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.cacheGetEnd:(Z)V
8: aload 4
athrow
9: StackMap locals:
StackMap stack:
aload 2
invokeinterface org.hibernate.engine.spi.SharedSessionContractImplementor.getEventListenerManager:()Lorg/hibernate/engine/spi/SessionEventListenerManager;
aload 3
ifnull 10
iconst_1
goto 11
StackMap locals:
StackMap stack: org.hibernate.engine.spi.SessionEventListenerManager
10: iconst_0
StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey org.hibernate.engine.spi.SharedSessionContractImplementor org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem
StackMap stack: org.hibernate.engine.spi.SessionEventListenerManager int
11: invokeinterface org.hibernate.engine.spi.SessionEventListenerManager.cacheGetEnd:(Z)V
12: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/hibernate/cache/internal/QueryResultsCacheImpl;
0 13 1 key Lorg/hibernate/cache/spi/QueryKey;
0 13 2 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
1 13 3 cachedItem Lorg/hibernate/cache/internal/QueryResultsCacheImpl$CacheItem;
Exception table:
from to target type
1 4 4 any
MethodParameters:
Name Flags
key
session
private java.util.List assembleCachedResult(org.hibernate.cache.spi.QueryKey, java.util.List, boolean, org.hibernate.type.Type[], org.hibernate.engine.spi.SharedSessionContractImplementor);
descriptor: (Lorg/hibernate/cache/spi/QueryKey;Ljava/util/List;Z[Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;)Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
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: new java.util.ArrayList
dup
aload 2
invokeinterface java.util.List.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 6
start local 6 1: iload 3
ifeq 7
2: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 5
StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey java.util.List int org.hibernate.type.Type[] org.hibernate.engine.spi.SharedSessionContractImplementor java.util.List top java.util.Iterator
StackMap stack:
3: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 7
start local 7 4: aload 6
aload 4
iconst_0
aaload
aload 7
checkcast java.io.Serializable
aload 5
aconst_null
invokeinterface org.hibernate.type.Type.assemble:(Ljava/io/Serializable;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)Ljava/lang/Object;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 7 5: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: goto 16
7: StackMap locals: org.hibernate.cache.internal.QueryResultsCacheImpl org.hibernate.cache.spi.QueryKey java.util.List int org.hibernate.type.Type[] org.hibernate.engine.spi.SharedSessionContractImplementor java.util.List
StackMap stack:
iconst_0
istore 7
start local 7 8: goto 15
9: StackMap locals: int
StackMap stack:
aload 6
10: aload 2
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.io.Serializable[]
aload 4
aload 5
aconst_null
invokestatic org.hibernate.type.TypeHelper.assemble:([Ljava/io/Serializable;[Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SharedSessionContractImplementor;Ljava/lang/Object;)[Ljava/lang/Object;
11: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
12: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.TRACING:Z
ifeq 14
13: aload 4
aload 6
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokestatic org.hibernate.cache.internal.QueryResultsCacheImpl.logCachedResultRowDetails:([Lorg/hibernate/type/Type;Ljava/lang/Object;)V
14: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
15: iload 7
aload 2
invokeinterface java.util.List.size:()I
if_icmplt 9
end local 7 16: StackMap locals:
StackMap stack:
aload 6
areturn
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 17 0 this Lorg/hibernate/cache/internal/QueryResultsCacheImpl;
0 17 1 key Lorg/hibernate/cache/spi/QueryKey;
0 17 2 cached Ljava/util/List;
0 17 3 singleResult Z
0 17 4 returnTypes [Lorg/hibernate/type/Type;
0 17 5 session Lorg/hibernate/engine/spi/SharedSessionContractImplementor;
1 17 6 result Ljava/util/List;
4 5 7 aCached Ljava/lang/Object;
8 16 7 i I
Exceptions:
throws org.hibernate.HibernateException
MethodParameters:
Name Flags
key final
cached final
singleResult
returnTypes final
session final
private static void logCachedResultRowDetails(org.hibernate.type.Type[], java.lang.Object);
descriptor: ([Lorg/hibernate/type/Type;Ljava/lang/Object;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
1: aload 1
instanceof java.lang.Object[]
ifeq 2
aload 1
checkcast java.lang.Object[]
goto 3
StackMap locals:
StackMap stack: org.hibernate.type.Type[]
2: iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
3: StackMap locals: org.hibernate.type.Type[] java.lang.Object
StackMap stack: org.hibernate.type.Type[] java.lang.Object[]
invokestatic org.hibernate.cache.internal.QueryResultsCacheImpl.logCachedResultRowDetails:([Lorg/hibernate/type/Type;[Ljava/lang/Object;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 returnTypes [Lorg/hibernate/type/Type;
0 5 1 result Ljava/lang/Object;
MethodParameters:
Name Flags
returnTypes
result
private static void logCachedResultRowDetails(org.hibernate.type.Type[], java.lang.Object[]);
descriptor: ([Lorg/hibernate/type/Type;[Ljava/lang/Object;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.TRACING:Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 15
3: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
4: ldc "tuple is null; returnTypes is %s"
5: aload 0
ifnonnull 6
ldc "null"
goto 7
StackMap locals: org.hibernate.type.Type[] java.lang.Object[]
StackMap stack: org.hibernate.internal.CoreMessageLogger java.lang.String
6: new java.lang.StringBuilder
dup
ldc "Type["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
arraylength
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;
7: StackMap locals: org.hibernate.type.Type[] java.lang.Object[]
StackMap stack: org.hibernate.internal.CoreMessageLogger java.lang.String java.lang.String
invokeinterface org.hibernate.internal.CoreMessageLogger.tracef:(Ljava/lang/String;Ljava/lang/Object;)V
8: aload 0
ifnull 49
aload 0
arraylength
iconst_1
if_icmple 49
9: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
10: new java.lang.StringBuilder
dup
ldc "Unexpected result tuple! tuple is null; should be Object["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
11: aload 0
arraylength
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "]!"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
12: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokeinterface org.hibernate.internal.CoreMessageLogger.trace:(Ljava/lang/Object;)V
14: goto 49
15: StackMap locals:
StackMap stack:
aload 0
ifnull 16
aload 0
arraylength
ifne 23
16: StackMap locals:
StackMap stack:
getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
17: new java.lang.StringBuilder
dup
ldc "Unexpected result tuple! tuple is null; returnTypes is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
18: aload 0
ifnonnull 19
ldc "null"
goto 20
StackMap locals: org.hibernate.type.Type[] java.lang.Object[]
StackMap stack: org.hibernate.internal.CoreMessageLogger java.lang.StringBuilder
19: ldc "empty"
StackMap locals: org.hibernate.type.Type[] java.lang.Object[]
StackMap stack: org.hibernate.internal.CoreMessageLogger java.lang.StringBuilder java.lang.String
20: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
21: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
22: invokeinterface org.hibernate.internal.CoreMessageLogger.trace:(Ljava/lang/Object;)V
23: StackMap locals:
StackMap stack:
getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
24: ldc "tuple is Object[%s]; returnTypes is %s"
25: aload 1
arraylength
26: aload 0
ifnonnull 27
ldc "null"
goto 28
StackMap locals: org.hibernate.type.Type[] java.lang.Object[]
StackMap stack: org.hibernate.internal.CoreMessageLogger java.lang.String int
27: new java.lang.StringBuilder
dup
ldc "Type["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
arraylength
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;
28: StackMap locals: org.hibernate.type.Type[] java.lang.Object[]
StackMap stack: org.hibernate.internal.CoreMessageLogger java.lang.String int java.lang.String
invokeinterface org.hibernate.internal.CoreMessageLogger.tracef:(Ljava/lang/String;ILjava/lang/Object;)V
29: aload 0
ifnull 36
aload 1
arraylength
aload 0
arraylength
if_icmpeq 36
30: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
31: new java.lang.StringBuilder
dup
ldc "Unexpected tuple length! transformer= expected="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
32: aload 0
arraylength
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " got="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
arraylength
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
33: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
34: invokeinterface org.hibernate.internal.CoreMessageLogger.trace:(Ljava/lang/Object;)V
35: goto 49
36: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 37: goto 48
38: StackMap locals: int
StackMap stack:
aload 1
iload 2
aaload
ifnull 47
aload 0
ifnull 47
39: aload 0
iload 2
aaload
invokeinterface org.hibernate.type.Type.getReturnedClass:()Ljava/lang/Class;
aload 1
iload 2
aaload
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifne 47
40: getstatic org.hibernate.cache.internal.QueryResultsCacheImpl.LOG:Lorg/hibernate/internal/CoreMessageLogger;
41: new java.lang.StringBuilder
dup
ldc "Unexpected tuple value type! transformer= expected="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
42: aload 0
iload 2
aaload
invokeinterface org.hibernate.type.Type.getReturnedClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
43: ldc " got="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
44: aload 1
iload 2
aaload
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
45: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
46: invokeinterface org.hibernate.internal.CoreMessageLogger.trace:(Ljava/lang/Object;)V
47: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
48: iload 2
aload 1
arraylength
if_icmplt 38
end local 2 49: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 50 0 returnTypes [Lorg/hibernate/type/Type;
0 50 1 tuple [Ljava/lang/Object;
37 49 2 j I
MethodParameters:
Name Flags
returnTypes
tuple
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
ldc "QueryResultsCache("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.hibernate.cache.internal.QueryResultsCacheImpl.cacheRegion:Lorg/hibernate/cache/spi/QueryResultsRegion;
invokeinterface org.hibernate.cache.spi.QueryResultsRegion.getName:()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/cache/internal/QueryResultsCacheImpl;
}
SourceFile: "QueryResultsCacheImpl.java"
NestMembers:
org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem
InnerClasses:
public CacheItem = org.hibernate.cache.internal.QueryResultsCacheImpl$CacheItem of org.hibernate.cache.internal.QueryResultsCacheImpl