public class org.ehcache.impl.internal.store.tiering.TieredStore<K, V> implements org.ehcache.core.spi.store.Store<K, V>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.ehcache.impl.internal.store.tiering.TieredStore
super_class: java.lang.Object
{
private final java.util.concurrent.atomic.AtomicReference<org.ehcache.core.spi.store.tiering.CachingTier<K, V>> cachingTierRef;
descriptor: Ljava/util/concurrent/atomic/AtomicReference;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicReference<Lorg/ehcache/core/spi/store/tiering/CachingTier<TK;TV;>;>;
private final org.ehcache.core.spi.store.tiering.CachingTier<K, V> noopCachingTier;
descriptor: Lorg/ehcache/core/spi/store/tiering/CachingTier;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/spi/store/tiering/CachingTier<TK;TV;>;
private final org.ehcache.core.spi.store.tiering.CachingTier<K, V> realCachingTier;
descriptor: Lorg/ehcache/core/spi/store/tiering/CachingTier;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/spi/store/tiering/CachingTier<TK;TV;>;
private final org.ehcache.core.spi.store.tiering.AuthoritativeTier<K, V> authoritativeTier;
descriptor: Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier<TK;TV;>;
public void <init>(org.ehcache.core.spi.store.tiering.CachingTier<K, V>, org.ehcache.core.spi.store.tiering.AuthoritativeTier<K, V>);
descriptor: (Lorg/ehcache/core/spi/store/tiering/CachingTier;Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, 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
new java.util.concurrent.atomic.AtomicReference
dup
aload 1
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:(Ljava/lang/Object;)V
putfield org.ehcache.impl.internal.store.tiering.TieredStore.cachingTierRef:Ljava/util/concurrent/atomic/AtomicReference;
2: aload 0
aload 2
putfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
3: aload 0
aload 1
putfield org.ehcache.impl.internal.store.tiering.TieredStore.realCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
4: aload 0
new org.ehcache.impl.internal.store.tiering.TieredStore$NoopCachingTier
dup
aload 2
invokespecial org.ehcache.impl.internal.store.tiering.TieredStore$NoopCachingTier.<init>:(Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;)V
putfield org.ehcache.impl.internal.store.tiering.TieredStore.noopCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
5: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.realCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic onInvalidation(Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;)Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
org/ehcache/core/spi/store/tiering/AuthoritativeTier.flush(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)Z (9 itf)
(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.setInvalidationListener:(Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;)V
6: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
new org.ehcache.impl.internal.store.tiering.TieredStore$1
dup
aload 0
invokespecial org.ehcache.impl.internal.store.tiering.TieredStore$1.<init>:(Lorg/ehcache/impl/internal/store/tiering/TieredStore;)V
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.setInvalidationValve:(Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier$InvalidationValve;)V
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 8 1 cachingTier Lorg/ehcache/core/spi/store/tiering/CachingTier<TK;TV;>;
0 8 2 authoritativeTier Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier<TK;TV;>;
Signature: (Lorg/ehcache/core/spi/store/tiering/CachingTier<TK;TV;>;Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier<TK;TV;>;)V
MethodParameters:
Name Flags
cachingTier
authoritativeTier
public org.ehcache.core.spi.store.Store$ValueHolder<V> get(K);
descriptor: (Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
aload 0
invokedynamic apply(Lorg/ehcache/impl/internal/store/tiering/TieredStore;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/ehcache/impl/internal/store/tiering/TieredStore.lambda$1(Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder; (7)
(Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.getOrComputeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
1: areturn
2: StackMap locals:
StackMap stack: org.ehcache.spi.resilience.StoreAccessException
astore 2
start local 2 3: aload 0
aload 2
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.handleStoreAccessException:(Lorg/ehcache/spi/resilience/StoreAccessException;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 4 1 key TK;
3 4 2 ce Lorg/ehcache/spi/resilience/StoreAccessException;
Exception table:
from to target type
0 1 2 Class org.ehcache.spi.resilience.StoreAccessException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key final
public boolean containsKey();
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.containsKey:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 1 1 key TK;
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;)Z
MethodParameters:
Name Flags
key
public org.ehcache.core.spi.store.Store$PutStatus put(K, V);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$PutStatus;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.put:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$PutStatus;
astore 4
1: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
2: aload 4
areturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
5: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 6 1 key TK;
0 6 2 value TV;
Exception table:
from to target type
0 1 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;TV;)Lorg/ehcache/core/spi/store/Store$PutStatus;
MethodParameters:
Name Flags
key final
value final
public org.ehcache.core.spi.store.Store$ValueHolder<V> getAndPut(K, V);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.getAndPut:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
astore 4
1: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
2: aload 4
areturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
5: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 6 1 key TK;
0 6 2 value TV;
Exception table:
from to target type
0 1 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;TV;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key
value
public org.ehcache.core.spi.store.Store$ValueHolder<V> putIfAbsent(K, V, java.util.function.Consumer<java.lang.Boolean>);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/Consumer;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
aload 3
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/Consumer;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
astore 5
1: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
2: aload 5
areturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 4
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
5: aload 4
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 6 1 key TK;
0 6 2 value TV;
0 6 3 put Ljava/util/function/Consumer<Ljava/lang/Boolean;>;
Exception table:
from to target type
0 1 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;TV;Ljava/util/function/Consumer<Ljava/lang/Boolean;>;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key
value
put
public boolean remove();
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.remove:(Ljava/lang/Object;)Z
istore 3
1: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
2: iload 3
ireturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 2
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
5: aload 2
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 6 1 key TK;
Exception table:
from to target type
0 1 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;)Z
MethodParameters:
Name Flags
key
public org.ehcache.core.spi.store.Store$ValueHolder<V> getAndRemove(K);
descriptor: (Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.getAndRemove:(Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
astore 3
1: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
2: aload 3
areturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 2
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
5: aload 2
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 6 1 key TK;
Exception table:
from to target type
0 1 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key
public org.ehcache.core.spi.store.Store$RemoveStatus remove(K, V);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$RemoveStatus;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.remove:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$RemoveStatus;
astore 4
1: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
2: aload 4
areturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
5: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 6 1 key TK;
0 6 2 value TV;
Exception table:
from to target type
0 1 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;TV;)Lorg/ehcache/core/spi/store/Store$RemoveStatus;
MethodParameters:
Name Flags
key
value
public org.ehcache.core.spi.store.Store$ValueHolder<V> replace(K, V);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.replace:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
astore 4
1: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
2: aload 4
areturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
5: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 6 1 key TK;
0 6 2 value TV;
Exception table:
from to target type
0 1 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;TV;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key
value
public org.ehcache.core.spi.store.Store$ReplaceStatus replace(K, V, V);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ReplaceStatus;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
aload 3
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.replace:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ReplaceStatus;
astore 5
1: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
2: aload 5
areturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 4
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
5: aload 4
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 6 1 key TK;
0 6 2 oldValue TV;
0 6 3 newValue TV;
Exception table:
from to target type
0 1 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;TV;TV;)Lorg/ehcache/core/spi/store/Store$ReplaceStatus;
MethodParameters:
Name Flags
key
oldValue
newValue
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.swapCachingTiers:()V
1: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.clear:()V
2: goto 11
StackMap locals:
StackMap stack: java.lang.Throwable
3: astore 1
4: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.realCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.clear:()V
5: goto 9
StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore java.lang.Throwable
StackMap stack: java.lang.Throwable
6: astore 2
7: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.swapBackCachingTiers:()V
8: aload 2
athrow
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.swapBackCachingTiers:()V
10: aload 1
athrow
11: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.realCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.clear:()V
12: goto 16
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 2
14: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.swapBackCachingTiers:()V
15: aload 2
athrow
16: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.swapBackCachingTiers:()V
17: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
Exception table:
from to target type
1 3 3 any
4 6 6 any
11 13 13 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
private void invalidateAllInternal();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.swapCachingTiers:()V
1: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.realCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidateAll:()V
2: goto 6
StackMap locals:
StackMap stack: java.lang.Throwable
3: astore 1
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.swapBackCachingTiers:()V
5: aload 1
athrow
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.swapBackCachingTiers:()V
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
Exception table:
from to target type
1 3 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
private void swapCachingTiers();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 12
2: StackMap locals: int
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.noopCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
dup
astore 2
monitorenter
3: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.cachingTierRef:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.noopCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
if_acmpne 8
4: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.noopCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
invokevirtual java.lang.Object.wait:()V
5: goto 8
StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore int org.ehcache.core.spi.store.tiering.CachingTier
StackMap stack: java.lang.InterruptedException
6: pop
7: iconst_1
istore 1
8: StackMap locals:
StackMap stack:
aload 2
monitorexit
9: goto 12
StackMap locals:
StackMap stack: java.lang.Throwable
10: aload 2
monitorexit
11: athrow
12: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.cachingTierRef:Ljava/util/concurrent/atomic/AtomicReference;
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.realCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.noopCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 2
13: iload 1
ifeq 15
14: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.interrupt:()V
15: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
1 16 1 interrupted Z
Exception table:
from to target type
4 5 6 Class java.lang.InterruptedException
3 9 10 any
10 11 10 any
private void swapBackCachingTiers();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.cachingTierRef:Ljava/util/concurrent/atomic/AtomicReference;
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.noopCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.realCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifne 2
1: new java.lang.AssertionError
dup
ldc "Something bad happened"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.noopCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
dup
astore 1
monitorenter
3: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.noopCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
invokevirtual java.lang.Object.notify:()V
4: aload 1
monitorexit
5: goto 8
StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore org.ehcache.core.spi.store.tiering.CachingTier
StackMap stack: java.lang.Throwable
6: aload 1
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
Exception table:
from to target type
3 5 6 any
6 7 6 any
public org.ehcache.core.spi.store.events.StoreEventSource<K, V> getStoreEventSource();
descriptor: ()Lorg/ehcache/core/spi/store/events/StoreEventSource;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.getStoreEventSource:()Lorg/ehcache/core/spi/store/events/StoreEventSource;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
Signature: ()Lorg/ehcache/core/spi/store/events/StoreEventSource<TK;TV;>;
public org.ehcache.core.spi.store.Store$Iterator<org.ehcache.Cache$Entry<K, org.ehcache.core.spi.store.Store$ValueHolder<V>>> iterator();
descriptor: ()Lorg/ehcache/core/spi/store/Store$Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.iterator:()Lorg/ehcache/core/spi/store/Store$Iterator;
astore 1
start local 1 1: new org.ehcache.impl.internal.store.tiering.TieredStore$2
dup
aload 0
aload 1
invokespecial org.ehcache.impl.internal.store.tiering.TieredStore$2.<init>:(Lorg/ehcache/impl/internal/store/tiering/TieredStore;Lorg/ehcache/core/spi/store/Store$Iterator;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
1 2 1 authoritativeIterator Lorg/ehcache/core/spi/store/Store$Iterator<Lorg/ehcache/Cache$Entry<TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;>;
Signature: ()Lorg/ehcache/core/spi/store/Store$Iterator<Lorg/ehcache/Cache$Entry<TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;>;
public org.ehcache.core.spi.store.Store$ValueHolder<V> getAndCompute(K, java.util.function.BiFunction<? super K, ? super V, ? extends V>);
descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.getAndCompute:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
astore 4
1: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
2: aload 4
areturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
5: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 6 1 key TK;
0 6 2 mappingFunction Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
Exception table:
from to target type
0 1 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;Ljava/util/function/BiFunction<-TK;-TV;+TV;>;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key final
mappingFunction final
public org.ehcache.core.spi.store.Store$ValueHolder<V> computeAndGet(K, java.util.function.BiFunction<? super K, ? super V, ? extends V>, java.util.function.Supplier<java.lang.Boolean>, java.util.function.Supplier<java.lang.Boolean>);
descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/util/function/Supplier;Ljava/util/function/Supplier;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
aload 3
invokedynamic get()Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
org/ehcache/impl/internal/store/tiering/TieredStore.lambda$2()Ljava/lang/Boolean; (6)
()Ljava/lang/Boolean;
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.computeAndGet:(Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/util/function/Supplier;Ljava/util/function/Supplier;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
astore 6
1: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
2: aload 6
areturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 5
4: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
5: aload 5
athrow
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/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 6 1 key TK;
0 6 2 mappingFunction Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
0 6 3 replaceEqual Ljava/util/function/Supplier<Ljava/lang/Boolean;>;
0 6 4 invokeWriter Ljava/util/function/Supplier<Ljava/lang/Boolean;>;
Exception table:
from to target type
0 1 3 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;Ljava/util/function/BiFunction<-TK;-TV;+TV;>;Ljava/util/function/Supplier<Ljava/lang/Boolean;>;Ljava/util/function/Supplier<Ljava/lang/Boolean;>;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key final
mappingFunction final
replaceEqual final
invokeWriter
public org.ehcache.core.spi.store.Store$ValueHolder<V> computeIfAbsent(K, java.util.function.Function<? super K, ? extends V>);
descriptor: (Ljava/lang/Object;Ljava/util/function/Function;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 1
aload 0
aload 2
invokedynamic apply(Lorg/ehcache/impl/internal/store/tiering/TieredStore;Ljava/util/function/Function;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/ehcache/impl/internal/store/tiering/TieredStore.lambda$3(Ljava/util/function/Function;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder; (7)
(Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.getOrComputeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
1: areturn
2: StackMap locals:
StackMap stack: org.ehcache.spi.resilience.StoreAccessException
astore 3
start local 3 3: aload 0
aload 3
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.handleStoreAccessException:(Lorg/ehcache/spi/resilience/StoreAccessException;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 4 1 key TK;
0 4 2 mappingFunction Ljava/util/function/Function<-TK;+TV;>;
3 4 3 ce Lorg/ehcache/spi/resilience/StoreAccessException;
Exception table:
from to target type
0 1 2 Class org.ehcache.spi.resilience.StoreAccessException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;Ljava/util/function/Function<-TK;+TV;>;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key final
mappingFunction final
public java.util.Map<K, org.ehcache.core.spi.store.Store$ValueHolder<V>> bulkCompute(java.util.Set<? extends K>, java.util.function.Function<java.lang.Iterable<? extends java.util.Map$Entry<? extends K, ? extends V>>, java.lang.Iterable<? extends java.util.Map$Entry<? extends K, ? extends V>>>);
descriptor: (Ljava/util/Set;Ljava/util/function/Function;)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.bulkCompute:(Ljava/util/Set;Ljava/util/function/Function;)Ljava/util/Map;
astore 4
1: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 4
StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore java.util.Set java.util.function.Function top java.util.Map top java.util.Iterator
StackMap stack:
2: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 5
start local 5 3: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 5
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
end local 5 4: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 4
areturn
6: StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore java.util.Set java.util.function.Function
StackMap stack: java.lang.Throwable
astore 3
7: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 10
StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore java.util.Set java.util.function.Function java.lang.Throwable top top java.util.Iterator
StackMap stack:
8: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 5
start local 5 9: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 5
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
end local 5 10: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
11: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 12 1 keys Ljava/util/Set<+TK;>;
0 12 2 remappingFunction Ljava/util/function/Function<Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;>;
3 4 5 key TK;
9 10 5 key TK;
Exception table:
from to target type
0 1 6 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (Ljava/util/Set<+TK;>;Ljava/util/function/Function<Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;>;)Ljava/util/Map<TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;
MethodParameters:
Name Flags
keys
remappingFunction
public java.util.Map<K, org.ehcache.core.spi.store.Store$ValueHolder<V>> bulkCompute(java.util.Set<? extends K>, java.util.function.Function<java.lang.Iterable<? extends java.util.Map$Entry<? extends K, ? extends V>>, java.lang.Iterable<? extends java.util.Map$Entry<? extends K, ? extends V>>>, java.util.function.Supplier<java.lang.Boolean>);
descriptor: (Ljava/util/Set;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
aload 3
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.bulkCompute:(Ljava/util/Set;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/util/Map;
astore 5
1: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 4
StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore java.util.Set java.util.function.Function java.util.function.Supplier top java.util.Map top java.util.Iterator
StackMap stack:
2: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 6
start local 6 3: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 6
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
end local 6 4: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 5
areturn
6: StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore java.util.Set java.util.function.Function java.util.function.Supplier
StackMap stack: java.lang.Throwable
astore 4
7: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 10
StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore java.util.Set java.util.function.Function java.util.function.Supplier java.lang.Throwable top top java.util.Iterator
StackMap stack:
8: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 6
start local 6 9: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 6
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
end local 6 10: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
11: aload 4
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 12 1 keys Ljava/util/Set<+TK;>;
0 12 2 remappingFunction Ljava/util/function/Function<Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;>;
0 12 3 replaceEqual Ljava/util/function/Supplier<Ljava/lang/Boolean;>;
3 4 6 key TK;
9 10 6 key TK;
Exception table:
from to target type
0 1 6 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (Ljava/util/Set<+TK;>;Ljava/util/function/Function<Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;>;Ljava/util/function/Supplier<Ljava/lang/Boolean;>;)Ljava/util/Map<TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;
MethodParameters:
Name Flags
keys
remappingFunction
replaceEqual
public java.util.Map<K, org.ehcache.core.spi.store.Store$ValueHolder<V>> bulkComputeIfAbsent(java.util.Set<? extends K>, java.util.function.Function<java.lang.Iterable<? extends K>, java.lang.Iterable<? extends java.util.Map$Entry<? extends K, ? extends V>>>);
descriptor: (Ljava/util/Set;Ljava/util/function/Function;)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
aload 2
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.bulkComputeIfAbsent:(Ljava/util/Set;Ljava/util/function/Function;)Ljava/util/Map;
astore 4
1: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 4
StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore java.util.Set java.util.function.Function top java.util.Map top java.util.Iterator
StackMap stack:
2: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 5
start local 5 3: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 5
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
end local 5 4: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 4
areturn
6: StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore java.util.Set java.util.function.Function
StackMap stack: java.lang.Throwable
astore 3
7: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 10
StackMap locals: org.ehcache.impl.internal.store.tiering.TieredStore java.util.Set java.util.function.Function java.lang.Throwable top top java.util.Iterator
StackMap stack:
8: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 5
start local 5 9: aload 0
invokevirtual org.ehcache.impl.internal.store.tiering.TieredStore.cachingTier:()Lorg/ehcache/core/spi/store/tiering/CachingTier;
aload 5
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.invalidate:(Ljava/lang/Object;)V
end local 5 10: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
11: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 12 1 keys Ljava/util/Set<+TK;>;
0 12 2 mappingFunction Ljava/util/function/Function<Ljava/lang/Iterable<+TK;>;Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;>;
3 4 5 key TK;
9 10 5 key TK;
Exception table:
from to target type
0 1 6 any
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (Ljava/util/Set<+TK;>;Ljava/util/function/Function<Ljava/lang/Iterable<+TK;>;Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;>;)Ljava/util/Map<TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;
MethodParameters:
Name Flags
keys
mappingFunction
public java.util.List<org.ehcache.core.CacheConfigurationChangeListener> getConfigurationChangeListeners();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
1: astore 1
start local 1 2: aload 1
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.realCachingTier:Lorg/ehcache/core/spi/store/tiering/CachingTier;
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier.getConfigurationChangeListeners:()Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
3: aload 1
aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.getConfigurationChangeListeners:()Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
2 5 1 configurationChangeListenerList Ljava/util/List<Lorg/ehcache/core/CacheConfigurationChangeListener;>;
Signature: ()Ljava/util/List<Lorg/ehcache/core/CacheConfigurationChangeListener;>;
private org.ehcache.core.spi.store.tiering.CachingTier<K, V> cachingTier();
descriptor: ()Lorg/ehcache/core/spi/store/tiering/CachingTier;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.cachingTierRef:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.ehcache.core.spi.store.tiering.CachingTier
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
Signature: ()Lorg/ehcache/core/spi/store/tiering/CachingTier<TK;TV;>;
private org.ehcache.core.spi.store.Store$ValueHolder<V> handleStoreAccessException(org.ehcache.spi.resilience.StoreAccessException);
descriptor: (Lorg/ehcache/spi/resilience/StoreAccessException;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.ehcache.spi.resilience.StoreAccessException.getCause:()Ljava/lang/Throwable;
astore 2
start local 2 1: aload 2
instanceof org.ehcache.core.exceptions.StorePassThroughException
ifeq 3
2: aload 2
invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
checkcast org.ehcache.spi.resilience.StoreAccessException
athrow
3: StackMap locals: java.lang.Throwable
StackMap stack:
aload 2
instanceof java.lang.Error
ifeq 5
4: aload 2
checkcast java.lang.Error
athrow
5: StackMap locals:
StackMap stack:
aload 2
instanceof java.lang.RuntimeException
ifeq 7
6: aload 2
checkcast java.lang.RuntimeException
athrow
7: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
ldc "Unexpected checked exception wrapped in StoreAccessException"
aload 2
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 8 1 ce Lorg/ehcache/spi/resilience/StoreAccessException;
1 8 2 cause Ljava/lang/Throwable;
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (Lorg/ehcache/spi/resilience/StoreAccessException;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
ce
private org.ehcache.core.spi.store.Store$ValueHolder lambda$1(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.getAndFault:(Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
1: areturn
2: StackMap locals:
StackMap stack: org.ehcache.spi.resilience.StoreAccessException
astore 2
start local 2 3: new org.ehcache.core.exceptions.StorePassThroughException
dup
aload 2
invokespecial org.ehcache.core.exceptions.StorePassThroughException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 4 1 keyParam TK;
3 4 2 cae Lorg/ehcache/spi/resilience/StoreAccessException;
Exception table:
from to target type
0 1 2 Class org.ehcache.spi.resilience.StoreAccessException
private static java.lang.Boolean lambda$2();
descriptor: ()Ljava/lang/Boolean;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
LocalVariableTable:
Start End Slot Name Signature
private org.ehcache.core.spi.store.Store$ValueHolder lambda$3(java.util.function.Function, java.lang.Object);
descriptor: (Ljava/util/function/Function;Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.tiering.TieredStore.authoritativeTier:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier;
aload 2
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier.computeIfAbsentAndFault:(Ljava/lang/Object;Ljava/util/function/Function;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
1: areturn
2: StackMap locals:
StackMap stack: org.ehcache.spi.resilience.StoreAccessException
astore 3
start local 3 3: new org.ehcache.core.exceptions.StorePassThroughException
dup
aload 3
invokespecial org.ehcache.core.exceptions.StorePassThroughException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/ehcache/impl/internal/store/tiering/TieredStore<TK;TV;>;
0 4 2 keyParam TK;
3 4 3 cae Lorg/ehcache/spi/resilience/StoreAccessException;
Exception table:
from to target type
0 1 2 Class org.ehcache.spi.resilience.StoreAccessException
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store<TK;TV;>;
SourceFile: "TieredStore.java"
NestMembers:
org.ehcache.impl.internal.store.tiering.TieredStore$1 org.ehcache.impl.internal.store.tiering.TieredStore$2 org.ehcache.impl.internal.store.tiering.TieredStore$2$1 org.ehcache.impl.internal.store.tiering.TieredStore$NoopCachingTier org.ehcache.impl.internal.store.tiering.TieredStore$Provider org.ehcache.impl.internal.store.tiering.TieredStore$Provider$1
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Entry = java.util.Map$Entry of java.util.Map
public abstract Entry = org.ehcache.Cache$Entry of org.ehcache.Cache
public abstract Iterator = org.ehcache.core.spi.store.Store$Iterator of org.ehcache.core.spi.store.Store
public final PutStatus = org.ehcache.core.spi.store.Store$PutStatus of org.ehcache.core.spi.store.Store
public final RemoveStatus = org.ehcache.core.spi.store.Store$RemoveStatus of org.ehcache.core.spi.store.Store
public final ReplaceStatus = org.ehcache.core.spi.store.Store$ReplaceStatus of org.ehcache.core.spi.store.Store
public abstract ValueHolder = org.ehcache.core.spi.store.Store$ValueHolder of org.ehcache.core.spi.store.Store
public abstract InvalidationValve = org.ehcache.core.spi.store.tiering.AuthoritativeTier$InvalidationValve of org.ehcache.core.spi.store.tiering.AuthoritativeTier
public abstract InvalidationListener = org.ehcache.core.spi.store.tiering.CachingTier$InvalidationListener of org.ehcache.core.spi.store.tiering.CachingTier
org.ehcache.impl.internal.store.tiering.TieredStore$1
org.ehcache.impl.internal.store.tiering.TieredStore$2
private NoopCachingTier = org.ehcache.impl.internal.store.tiering.TieredStore$NoopCachingTier of org.ehcache.impl.internal.store.tiering.TieredStore
public Provider = org.ehcache.impl.internal.store.tiering.TieredStore$Provider of org.ehcache.impl.internal.store.tiering.TieredStore