public abstract class org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore<K, V> extends org.ehcache.impl.store.BaseStore<K, V> implements org.ehcache.core.spi.store.tiering.AuthoritativeTier<K, V>, org.ehcache.core.spi.store.tiering.LowerCachingTier<K, V>
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore
super_class: org.ehcache.impl.store.BaseStore
{
private static final org.slf4j.Logger LOG;
descriptor: Lorg/slf4j/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.ehcache.core.spi.store.tiering.CachingTier$InvalidationListener<?, ?> NULL_INVALIDATION_LISTENER;
descriptor: Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener<**>;
private final org.ehcache.core.spi.time.TimeSource timeSource;
descriptor: Lorg/ehcache/core/spi/time/TimeSource;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.ehcache.core.events.StoreEventDispatcher<K, V> eventDispatcher;
descriptor: Lorg/ehcache/core/events/StoreEventDispatcher;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/events/StoreEventDispatcher<TK;TV;>;
private final org.ehcache.expiry.ExpiryPolicy<? super K, ? super V> expiry;
descriptor: Lorg/ehcache/expiry/ExpiryPolicy;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/expiry/ExpiryPolicy<-TK;-TV;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$GetOutcome> getObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$GetOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$PutOutcome> putObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$PutOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$PutIfAbsentOutcome> putIfAbsentObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$PutIfAbsentOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$RemoveOutcome> removeObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$RemoveOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$ConditionalRemoveOutcome> conditionalRemoveObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$ConditionalRemoveOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$ReplaceOutcome> replaceObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$ReplaceOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$ConditionalReplaceOutcome> conditionalReplaceObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$ConditionalReplaceOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$ComputeOutcome> computeObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$ComputeIfAbsentOutcome> computeIfAbsentObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeIfAbsentOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$EvictionOutcome> evictionObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$EvictionOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$ExpirationOutcome> expirationObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$ExpirationOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$GetAndFaultOutcome> getAndFaultObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/AuthoritativeTierOperationOutcomes$GetAndFaultOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$ComputeIfAbsentAndFaultOutcome> computeIfAbsentAndFaultObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/AuthoritativeTierOperationOutcomes$ComputeIfAbsentAndFaultOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$FlushOutcome> flushObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/AuthoritativeTierOperationOutcomes$FlushOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateOutcome> invalidateObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InvalidateOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateAllOutcome> invalidateAllObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InvalidateAllOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateAllWithHashOutcome> invalidateAllWithHashObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InvalidateAllWithHashOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$GetAndRemoveOutcome> getAndRemoveObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$GetAndRemoveOutcome;>;
private final org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InstallMappingOutcome> installMappingObserver;
descriptor: Lorg/ehcache/core/statistics/OperationObserver;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InstallMappingOutcome;>;
private volatile org.ehcache.core.spi.store.tiering.AuthoritativeTier$InvalidationValve valve;
descriptor: Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier$InvalidationValve;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
protected final org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener<K, V> mapEvictionListener;
descriptor: Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore$BackingMapEvictionListener;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore$BackingMapEvictionListener<TK;TV;>;
private volatile org.ehcache.core.spi.store.tiering.CachingTier$InvalidationListener<K, V> invalidationListener;
descriptor: Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
Signature: Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener<TK;TV;>;
private static final java.util.function.Supplier<java.lang.Boolean> REPLACE_EQUALS_TRUE;
descriptor: Ljava/util/function/Supplier;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/function/Supplier<Ljava/lang/Boolean;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.LOG:Lorg/slf4j/Logger;
1: invokedynamic onInvalidation()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/impl/internal/store/offheap/AbstractOffHeapStore.lambda$0(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V (6)
(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
putstatic org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.NULL_INVALIDATION_LISTENER:Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
2: 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/offheap/AbstractOffHeapStore.lambda$1()Ljava/lang/Boolean; (6)
()Ljava/lang/Boolean;
putstatic org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.REPLACE_EQUALS_TRUE:Ljava/util/function/Supplier;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.ehcache.core.spi.store.Store$Configuration<K, V>, org.ehcache.core.spi.time.TimeSource, org.ehcache.core.events.StoreEventDispatcher<K, V>, org.ehcache.core.spi.service.StatisticsService);
descriptor: (Lorg/ehcache/core/spi/store/Store$Configuration;Lorg/ehcache/core/spi/time/TimeSource;Lorg/ehcache/core/events/StoreEventDispatcher;Lorg/ehcache/core/spi/service/StatisticsService;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tThe import org.terracotta.management.model.stats.StatisticType cannot be resolved\n\tThe import org.terracotta.management.model.stats.StatisticType cannot be resolved\n\tGAUGE cannot be resolved to a variable\n\tGAUGE cannot be resolved to a variable\n\tGAUGE cannot be resolved to a variable\n\tGAUGE cannot be resolved to a variable\n\tGAUGE cannot be resolved to a variable\n\tGAUGE cannot be resolved to a variable\n\tGAUGE cannot be resolved to a variable\n\tGAUGE cannot be resolved to a variable\n\tGAUGE cannot be resolved to a variable\n\tGAUGE cannot be resolved to a variable\n\tGAUGE cannot be resolved to a variable\n\tStatisticType cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
Signature: (Lorg/ehcache/core/spi/store/Store$Configuration<TK;TV;>;Lorg/ehcache/core/spi/time/TimeSource;Lorg/ehcache/core/events/StoreEventDispatcher<TK;TV;>;Lorg/ehcache/core/spi/service/StatisticsService;)V
MethodParameters:
Name Flags
config
timeSource
eventDispatcher
statisticsService
<T extends java.io.Serializable> void registerStatistic(java.lang.String, StatisticType, java.util.Set<java.lang.String>, java.util.function.Function<org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap<K, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V>>, T>);
descriptor: (Ljava/lang/String;LStatisticType;Ljava/util/Set;Ljava/util/function/Function;)V
flags: (0x0000)
Code:
stack=3, locals=5, args_size=5
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tStatisticType cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
Signature: <T::Ljava/io/Serializable;>(Ljava/lang/String;LStatisticType;Ljava/util/Set<Ljava/lang/String;>;Ljava/util/function/Function<Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;TT;>;)V
MethodParameters:
Name Flags
name
type
tags
fn
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=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.getObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
2: aload 0
aload 1
iconst_1
iconst_1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.internalGet:(Ljava/lang/Object;ZZ)Lorg/ehcache/core/spi/store/Store$ValueHolder;
astore 2
start local 2 3: aload 2
ifnonnull 6
4: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.getObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$GetOutcome.MISS:Lorg/ehcache/core/statistics/StoreOperationOutcomes$GetOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
5: goto 7
6: StackMap locals: org.ehcache.core.spi.store.Store$ValueHolder
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.getObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$GetOutcome.HIT:Lorg/ehcache/core/statistics/StoreOperationOutcomes$GetOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
7: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 8 1 key TK;
3 8 2 result Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key
private org.ehcache.core.spi.store.Store$ValueHolder<V> internalGet(K, boolean, boolean);
descriptor: (Ljava/lang/Object;ZZ)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 4
start local 4 1: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 5
start local 5 2: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
aload 0
aload 4
iload 2
aload 5
iload 3
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Lorg/ehcache/core/events/StoreEventSink;ZLjava/util/concurrent/atomic/AtomicReference;Z)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$14(Lorg/ehcache/core/events/StoreEventSink;ZLjava/util/concurrent/atomic/AtomicReference;ZLjava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.computeIfPresent:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
checkcast org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
astore 6
start local 6 3: aload 6
ifnonnull 5
aload 5
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
ifnull 5
4: aload 5
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
astore 6
5: StackMap locals: org.ehcache.core.events.StoreEventSink java.util.concurrent.atomic.AtomicReference org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 4
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
6: aload 6
7: areturn
end local 6 8: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object int int org.ehcache.core.events.StoreEventSink java.util.concurrent.atomic.AtomicReference
StackMap stack: java.lang.RuntimeException
astore 6
start local 6 9: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 4
aload 6
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
10: aload 6
invokestatic org.ehcache.core.exceptions.StorePassThroughException.handleException:(Ljava/lang/Exception;)Lorg/ehcache/spi/resilience/StoreAccessException;
athrow
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 11 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 11 1 key TK;
0 11 2 updateAccess Z
0 11 3 touchValue Z
1 11 4 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
2 11 5 heldValue Ljava/util/concurrent/atomic/AtomicReference<Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
3 8 6 result Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
9 11 6 re Ljava/lang/RuntimeException;
Exception table:
from to target type
2 7 8 Class java.lang.RuntimeException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;ZZ)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key
updateAccess final
touchValue final
public boolean containsKey();
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
aload 1
iconst_0
iconst_0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.internalGet:(Ljava/lang/Object;ZZ)Lorg/ehcache/core/spi/store/Store$ValueHolder;
ifnull 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 3 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=7, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
aload 2
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkValue:(Ljava/lang/Object;)V
2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.putObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
3: new java.util.concurrent.atomic.AtomicBoolean
dup
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
astore 3
start local 3 4: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 4
start local 4 5: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 5
start local 5 6: aload 0
lload 5
aload 1
aload 2
aload 4
aload 3
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;JLjava/lang/Object;Ljava/lang/Object;Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicBoolean;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$15(JLjava/lang/Object;Ljava/lang/Object;Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 7
start local 7 7: aload 0
aload 1
aload 7
iconst_0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeWithRetry:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
pop
8: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 4
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
9: aload 3
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 13
10: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.putObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$PutOutcome.PUT:Lorg/ehcache/core/statistics/StoreOperationOutcomes$PutOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
11: getstatic org.ehcache.core.spi.store.Store$PutStatus.PUT:Lorg/ehcache/core/spi/store/Store$PutStatus;
12: areturn
13: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.lang.Object java.util.concurrent.atomic.AtomicBoolean org.ehcache.core.events.StoreEventSink long java.util.function.BiFunction
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.putObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$PutOutcome.NOOP:Lorg/ehcache/core/statistics/StoreOperationOutcomes$PutOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
14: getstatic org.ehcache.core.spi.store.Store$PutStatus.NOOP:Lorg/ehcache/core/spi/store/Store$PutStatus;
15: areturn
end local 7 16: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.lang.Object java.util.concurrent.atomic.AtomicBoolean org.ehcache.core.events.StoreEventSink long
StackMap stack: java.lang.Exception
astore 7
start local 7 17: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 4
aload 7
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
18: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.putObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$PutOutcome.FAILURE:Lorg/ehcache/core/statistics/StoreOperationOutcomes$PutOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
19: aload 7
athrow
end local 7 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 20 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 20 1 key TK;
0 20 2 value TV;
4 20 3 put Ljava/util/concurrent/atomic/AtomicBoolean;
5 20 4 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
6 20 5 now J
7 16 7 mappingFunction Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
17 20 7 caex Ljava/lang/Exception;
Exception table:
from to target type
6 12 16 Class org.ehcache.spi.resilience.StoreAccessException
13 15 16 Class org.ehcache.spi.resilience.StoreAccessException
6 12 16 Class java.lang.RuntimeException
13 15 16 Class java.lang.RuntimeException
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> 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=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
aload 2
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkValue:(Ljava/lang/Object;)V
2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.putIfAbsentObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
3: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 4
start local 4 4: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 5
start local 5 5: aload 0
aload 5
aload 2
aload 4
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicReference;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$16(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 6
start local 6 6: aload 0
aload 1
aload 6
iconst_0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeWithRetry:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
pop
7: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 5
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
8: aload 4
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.ehcache.core.spi.store.Store$ValueHolder
astore 7
start local 7 9: aload 7
ifnonnull 12
10: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.putIfAbsentObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$PutIfAbsentOutcome.PUT:Lorg/ehcache/core/statistics/StoreOperationOutcomes$PutIfAbsentOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
11: aconst_null
areturn
12: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.lang.Object java.util.function.Consumer java.util.concurrent.atomic.AtomicReference org.ehcache.core.events.StoreEventSink java.util.function.BiFunction org.ehcache.core.spi.store.Store$ValueHolder
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.putIfAbsentObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$PutIfAbsentOutcome.HIT:Lorg/ehcache/core/statistics/StoreOperationOutcomes$PutIfAbsentOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
13: aload 7
14: areturn
end local 7 end local 6 15: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.lang.Object java.util.function.Consumer java.util.concurrent.atomic.AtomicReference org.ehcache.core.events.StoreEventSink
StackMap stack: java.lang.Exception
astore 6
start local 6 16: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 5
aload 6
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
17: aload 6
athrow
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 18 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 18 1 key TK;
0 18 2 value TV;
0 18 3 put Ljava/util/function/Consumer<Ljava/lang/Boolean;>;
4 18 4 returnValue Ljava/util/concurrent/atomic/AtomicReference<Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;
5 18 5 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
6 15 6 mappingFunction Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
9 15 7 resultHolder Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
16 18 6 caex Ljava/lang/Exception;
Exception table:
from to target type
5 11 15 Class org.ehcache.spi.resilience.StoreAccessException
12 14 15 Class org.ehcache.spi.resilience.StoreAccessException
5 11 15 Class java.lang.RuntimeException
12 14 15 Class java.lang.RuntimeException
Exceptions:
throws java.lang.NullPointerException, 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 final
value final
put
public boolean remove();
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=7, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.removeObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 2
start local 2 3: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 3
start local 3 4: new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 5
start local 5 5: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
aload 0
lload 3
aload 2
aload 5
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;JLorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicBoolean;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$17(JLorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.computeIfPresent:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
pop
6: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 2
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
7: aload 5
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 10
8: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.removeObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$RemoveOutcome.REMOVED:Lorg/ehcache/core/statistics/StoreOperationOutcomes$RemoveOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
9: goto 11
10: StackMap locals: org.ehcache.core.events.StoreEventSink long java.util.concurrent.atomic.AtomicBoolean
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.removeObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$RemoveOutcome.MISS:Lorg/ehcache/core/statistics/StoreOperationOutcomes$RemoveOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
11: StackMap locals:
StackMap stack:
aload 5
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
12: ireturn
13: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 6
start local 6 14: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 2
aload 6
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
15: aload 6
invokestatic org.ehcache.core.exceptions.StorePassThroughException.handleException:(Ljava/lang/Exception;)Lorg/ehcache/spi/resilience/StoreAccessException;
athrow
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 16 1 key TK;
3 16 2 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
4 16 3 now J
5 16 5 removed Ljava/util/concurrent/atomic/AtomicBoolean;
14 16 6 re Ljava/lang/RuntimeException;
Exception table:
from to target type
5 12 13 Class java.lang.RuntimeException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;)Z
MethodParameters:
Name Flags
key final
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=7, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
aload 2
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkValue:(Ljava/lang/Object;)V
2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.conditionalRemoveObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
3: new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 3
start local 3 4: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 4
start local 4 5: new java.util.concurrent.atomic.AtomicBoolean
dup
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
astore 5
start local 5 6: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
aload 0
aload 4
aload 2
aload 3
aload 5
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/atomic/AtomicBoolean;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$18(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.computeIfPresent:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
pop
7: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 4
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
8: aload 3
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 12
9: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.conditionalRemoveObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ConditionalRemoveOutcome.REMOVED:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ConditionalRemoveOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
10: getstatic org.ehcache.core.spi.store.Store$RemoveStatus.REMOVED:Lorg/ehcache/core/spi/store/Store$RemoveStatus;
11: areturn
12: StackMap locals: java.util.concurrent.atomic.AtomicBoolean org.ehcache.core.events.StoreEventSink java.util.concurrent.atomic.AtomicBoolean
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.conditionalRemoveObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ConditionalRemoveOutcome.MISS:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ConditionalRemoveOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
13: aload 5
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 16
14: getstatic org.ehcache.core.spi.store.Store$RemoveStatus.KEY_PRESENT:Lorg/ehcache/core/spi/store/Store$RemoveStatus;
15: areturn
16: StackMap locals:
StackMap stack:
getstatic org.ehcache.core.spi.store.Store$RemoveStatus.KEY_MISSING:Lorg/ehcache/core/spi/store/Store$RemoveStatus;
17: areturn
18: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 6
start local 6 19: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 4
aload 6
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
20: aload 6
invokestatic org.ehcache.core.exceptions.StorePassThroughException.handleException:(Ljava/lang/Exception;)Lorg/ehcache/spi/resilience/StoreAccessException;
athrow
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 21 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 21 1 key TK;
0 21 2 value TV;
4 21 3 removed Ljava/util/concurrent/atomic/AtomicBoolean;
5 21 4 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
6 21 5 mappingExists Ljava/util/concurrent/atomic/AtomicBoolean;
19 21 6 re Ljava/lang/RuntimeException;
Exception table:
from to target type
6 11 18 Class java.lang.RuntimeException
12 15 18 Class java.lang.RuntimeException
16 17 18 Class java.lang.RuntimeException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;TV;)Lorg/ehcache/core/spi/store/Store$RemoveStatus;
MethodParameters:
Name Flags
key final
value final
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=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
aload 2
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkValue:(Ljava/lang/Object;)V
2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.replaceObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
3: new java.util.concurrent.atomic.AtomicReference
dup
aconst_null
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:(Ljava/lang/Object;)V
astore 3
start local 3 4: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 4
start local 4 5: aload 0
aload 4
aload 3
aload 2
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$19(Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 5
start local 5 6: aload 0
aload 1
aload 5
iconst_0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeWithRetry:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
pop
7: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 4
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
8: aload 3
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.ehcache.core.spi.store.Store$ValueHolder
astore 6
start local 6 9: aload 6
ifnull 12
10: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.replaceObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ReplaceOutcome.REPLACED:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ReplaceOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
11: goto 13
12: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.lang.Object java.util.concurrent.atomic.AtomicReference org.ehcache.core.events.StoreEventSink java.util.function.BiFunction org.ehcache.core.spi.store.Store$ValueHolder
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.replaceObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ReplaceOutcome.MISS:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ReplaceOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
13: StackMap locals:
StackMap stack:
aload 6
14: areturn
end local 6 15: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.lang.Object java.util.concurrent.atomic.AtomicReference org.ehcache.core.events.StoreEventSink java.util.function.BiFunction
StackMap stack: java.lang.Exception
astore 6
start local 6 16: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 4
aload 6
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
17: aload 6
athrow
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 18 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 18 1 key TK;
0 18 2 value TV;
4 18 3 returnValue Ljava/util/concurrent/atomic/AtomicReference<Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;
5 18 4 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
6 18 5 mappingFunction Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
9 15 6 resultHolder Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
16 18 6 caex Ljava/lang/Exception;
Exception table:
from to target type
6 14 15 Class org.ehcache.spi.resilience.StoreAccessException
6 14 15 Class java.lang.RuntimeException
Exceptions:
throws java.lang.NullPointerException, org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;TV;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key final
value final
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=6, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
aload 2
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkValue:(Ljava/lang/Object;)V
2: aload 0
aload 3
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkValue:(Ljava/lang/Object;)V
3: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.conditionalReplaceObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
4: new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 4
start local 4 5: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 5
start local 5 6: new java.util.concurrent.atomic.AtomicBoolean
dup
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
astore 6
start local 6 7: aload 0
aload 5
aload 2
aload 4
aload 3
aload 6
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicBoolean;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$20(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 7
start local 7 8: aload 0
aload 1
aload 7
iconst_0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeWithRetry:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
pop
9: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 5
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
10: aload 4
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 14
11: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.conditionalReplaceObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ConditionalReplaceOutcome.REPLACED:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ConditionalReplaceOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
12: getstatic org.ehcache.core.spi.store.Store$ReplaceStatus.HIT:Lorg/ehcache/core/spi/store/Store$ReplaceStatus;
13: areturn
14: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.lang.Object java.lang.Object java.util.concurrent.atomic.AtomicBoolean org.ehcache.core.events.StoreEventSink java.util.concurrent.atomic.AtomicBoolean java.util.function.BiFunction
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.conditionalReplaceObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ConditionalReplaceOutcome.MISS:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ConditionalReplaceOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
15: aload 6
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 18
16: getstatic org.ehcache.core.spi.store.Store$ReplaceStatus.MISS_PRESENT:Lorg/ehcache/core/spi/store/Store$ReplaceStatus;
17: areturn
18: StackMap locals:
StackMap stack:
getstatic org.ehcache.core.spi.store.Store$ReplaceStatus.MISS_NOT_PRESENT:Lorg/ehcache/core/spi/store/Store$ReplaceStatus;
19: areturn
20: StackMap locals:
StackMap stack: java.lang.Exception
astore 8
start local 8 21: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 5
aload 8
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
22: aload 8
athrow
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 23 1 key TK;
0 23 2 oldValue TV;
0 23 3 newValue TV;
5 23 4 replaced Ljava/util/concurrent/atomic/AtomicBoolean;
6 23 5 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
7 23 6 mappingExists Ljava/util/concurrent/atomic/AtomicBoolean;
8 23 7 mappingFunction Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
21 23 8 caex Ljava/lang/Exception;
Exception table:
from to target type
8 13 20 Class org.ehcache.spi.resilience.StoreAccessException
14 17 20 Class org.ehcache.spi.resilience.StoreAccessException
18 19 20 Class org.ehcache.spi.resilience.StoreAccessException
8 13 20 Class java.lang.RuntimeException
14 17 20 Class java.lang.RuntimeException
18 19 20 Class java.lang.RuntimeException
Exceptions:
throws java.lang.NullPointerException, java.lang.IllegalArgumentException, org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;TV;TV;)Lorg/ehcache/core/spi/store/Store$ReplaceStatus;
MethodParameters:
Name Flags
key final
oldValue final
newValue final
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.clear:()V
1: goto 4
StackMap locals:
StackMap stack: java.lang.RuntimeException
2: astore 1
start local 1 3: aload 1
invokestatic org.ehcache.core.exceptions.StorePassThroughException.handleException:(Ljava/lang/Exception;)Lorg/ehcache/spi/resilience/StoreAccessException;
athrow
end local 1 4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
3 4 1 re Ljava/lang/RuntimeException;
Exception table:
from to target type
0 1 2 Class java.lang.RuntimeException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
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.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<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=3, locals=1, args_size=1
start local 0 0: new org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$1
dup
aload 0
invokespecial org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$1.<init>:(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;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=7, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
2: new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 3
start local 3 3: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 4
start local 4 4: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 5
start local 5 5: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 6
start local 6 6: aload 0
aload 6
aload 5
aload 2
aload 3
aload 1
aload 4
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/function/BiFunction;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicReference;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$21(Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/function/BiFunction;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 7
start local 7 7: aload 0
aload 1
aload 7
iconst_0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeWithRetry:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 8
start local 8 8: aload 8
ifnonnull 10
aload 4
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
ifnull 10
9: aload 4
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
astore 8
10: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.util.function.BiFunction java.util.concurrent.atomic.AtomicBoolean java.util.concurrent.atomic.AtomicReference java.util.concurrent.atomic.AtomicReference org.ehcache.core.events.StoreEventSink java.util.function.BiFunction org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 6
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
11: aload 8
ifnonnull 17
12: aload 3
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 15
13: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeOutcome.REMOVED:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
14: goto 21
15: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeOutcome.MISS:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
16: goto 21
StackMap locals:
StackMap stack:
17: aload 3
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 20
18: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeOutcome.PUT:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
19: goto 21
20: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeOutcome.HIT:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
21: StackMap locals:
StackMap stack:
aload 5
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.ehcache.core.spi.store.Store$ValueHolder
22: areturn
end local 8 23: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.util.function.BiFunction java.util.concurrent.atomic.AtomicBoolean java.util.concurrent.atomic.AtomicReference java.util.concurrent.atomic.AtomicReference org.ehcache.core.events.StoreEventSink java.util.function.BiFunction
StackMap stack: java.lang.Exception
astore 9
start local 9 24: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 6
aload 9
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
25: aload 9
athrow
end local 9 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 26 1 key TK;
0 26 2 mappingFunction Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
3 26 3 write Ljava/util/concurrent/atomic/AtomicBoolean;
4 26 4 valueHeld Ljava/util/concurrent/atomic/AtomicReference<Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
5 26 5 existingValueHolder Ljava/util/concurrent/atomic/AtomicReference<Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
6 26 6 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
7 26 7 computeFunction Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
8 23 8 result Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
24 26 9 caex Ljava/lang/Exception;
Exception table:
from to target type
7 22 23 Class org.ehcache.spi.resilience.StoreAccessException
7 22 23 Class java.lang.RuntimeException
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
mappingFunction
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=7, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
2: new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 5
start local 5 3: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 6
start local 6 4: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 7
start local 7 5: aload 0
aload 7
aload 2
aload 5
aload 3
aload 6
aload 1
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Lorg/ehcache/core/events/StoreEventSink;Ljava/util/function/BiFunction;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/function/Supplier;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$22(Lorg/ehcache/core/events/StoreEventSink;Ljava/util/function/BiFunction;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/function/Supplier;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 8
start local 8 6: aload 0
aload 1
aload 8
iconst_0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeWithRetry:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 9
start local 9 7: aload 9
ifnonnull 9
aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
ifnull 9
8: aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
astore 9
9: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.util.function.BiFunction java.util.function.Supplier java.util.function.Supplier java.util.concurrent.atomic.AtomicBoolean java.util.concurrent.atomic.AtomicReference org.ehcache.core.events.StoreEventSink java.util.function.BiFunction org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 7
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
10: aload 9
ifnonnull 16
11: aload 5
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 14
12: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeOutcome.REMOVED:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
13: goto 20
14: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeOutcome.MISS:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
15: goto 20
StackMap locals:
StackMap stack:
16: aload 5
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 19
17: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeOutcome.PUT:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
18: goto 20
19: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeOutcome.HIT:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
20: StackMap locals:
StackMap stack:
aload 9
21: areturn
end local 9 22: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.util.function.BiFunction java.util.function.Supplier java.util.function.Supplier java.util.concurrent.atomic.AtomicBoolean java.util.concurrent.atomic.AtomicReference org.ehcache.core.events.StoreEventSink java.util.function.BiFunction
StackMap stack: java.lang.Exception
astore 10
start local 10 23: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 7
aload 10
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
24: aload 10
athrow
end local 10 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 25 1 key TK;
0 25 2 mappingFunction Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
0 25 3 replaceEqual Ljava/util/function/Supplier<Ljava/lang/Boolean;>;
0 25 4 invokeWriter Ljava/util/function/Supplier<Ljava/lang/Boolean;>;
3 25 5 write Ljava/util/concurrent/atomic/AtomicBoolean;
4 25 6 valueHeld Ljava/util/concurrent/atomic/AtomicReference<Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
5 25 7 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
6 25 8 computeFunction Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
7 22 9 result Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
23 25 10 caex Ljava/lang/Exception;
Exception table:
from to target type
6 21 22 Class org.ehcache.spi.resilience.StoreAccessException
6 21 22 Class java.lang.RuntimeException
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=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_0
iconst_0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.internalComputeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;ZZ)Lorg/ehcache/core/spi/store/Store$ValueHolder;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 1 1 key TK;
0 1 2 mappingFunction Ljava/util/function/Function<-TK;+TV;>;
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
private org.ehcache.core.spi.store.Store$ValueHolder<V> internalComputeIfAbsent(K, java.util.function.Function<? super K, ? extends V>, boolean, boolean);
descriptor: (Ljava/lang/Object;Ljava/util/function/Function;ZZ)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: iload 3
ifeq 4
2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeIfAbsentAndFaultObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeIfAbsentObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
5: StackMap locals:
StackMap stack:
new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 5
start local 5 6: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 6
start local 6 7: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 7
start local 7 8: aload 0
aload 7
aload 5
aload 2
iload 4
aload 6
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/function/Function;ZLjava/util/concurrent/atomic/AtomicReference;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$23(Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/function/Function;ZLjava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 8
start local 8 9: aload 0
aload 1
aload 8
iload 3
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeWithRetry:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 9
start local 9 10: aload 9
ifnonnull 12
aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
ifnull 12
11: aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
astore 9
12: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.util.function.Function int int java.util.concurrent.atomic.AtomicBoolean java.util.concurrent.atomic.AtomicReference org.ehcache.core.events.StoreEventSink java.util.function.BiFunction org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 7
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
13: aload 5
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 25
14: aload 9
ifnull 20
15: iload 3
ifeq 18
16: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeIfAbsentAndFaultObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$ComputeIfAbsentAndFaultOutcome.PUT:Lorg/ehcache/core/statistics/AuthoritativeTierOperationOutcomes$ComputeIfAbsentAndFaultOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
17: goto 29
18: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeIfAbsentObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeIfAbsentOutcome.PUT:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeIfAbsentOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
19: goto 29
20: StackMap locals:
StackMap stack:
iload 3
ifeq 23
21: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeIfAbsentAndFaultObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$ComputeIfAbsentAndFaultOutcome.NOOP:Lorg/ehcache/core/statistics/AuthoritativeTierOperationOutcomes$ComputeIfAbsentAndFaultOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
22: goto 29
23: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeIfAbsentObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeIfAbsentOutcome.NOOP:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeIfAbsentOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
24: goto 29
25: StackMap locals:
StackMap stack:
iload 3
ifeq 28
26: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeIfAbsentAndFaultObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$ComputeIfAbsentAndFaultOutcome.HIT:Lorg/ehcache/core/statistics/AuthoritativeTierOperationOutcomes$ComputeIfAbsentAndFaultOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
27: goto 29
28: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeIfAbsentObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ComputeIfAbsentOutcome.HIT:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ComputeIfAbsentOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
29: StackMap locals:
StackMap stack:
aload 9
30: areturn
end local 9 31: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.util.function.Function int int java.util.concurrent.atomic.AtomicBoolean java.util.concurrent.atomic.AtomicReference org.ehcache.core.events.StoreEventSink java.util.function.BiFunction
StackMap stack: java.lang.Exception
astore 10
start local 10 32: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 7
aload 10
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
33: aload 10
athrow
end local 10 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 34 1 key TK;
0 34 2 mappingFunction Ljava/util/function/Function<-TK;+TV;>;
0 34 3 fault Z
0 34 4 delayedDeserialization Z
6 34 5 write Ljava/util/concurrent/atomic/AtomicBoolean;
7 34 6 valueHeld Ljava/util/concurrent/atomic/AtomicReference<Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
8 34 7 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
9 34 8 computeFunction Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
10 31 9 computeResult Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
32 34 10 caex Ljava/lang/Exception;
Exception table:
from to target type
9 30 31 Class org.ehcache.spi.resilience.StoreAccessException
9 30 31 Class java.lang.RuntimeException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;Ljava/util/function/Function<-TK;+TV;>;ZZ)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key final
mappingFunction final
fault
delayedDeserialization 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=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
getstatic org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.REPLACE_EQUALS_TRUE:Ljava/util/function/Supplier;
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.bulkCompute:(Ljava/util/Set;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/util/Map;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 1 1 keys Ljava/util/Set<+TK;>;
0 1 2 remappingFunction Ljava/util/function/Function<Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;>;
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=5, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.util.HashMap
dup
aload 1
invokeinterface java.util.Set.size:()I
invokespecial java.util.HashMap.<init>:(I)V
astore 4
start local 4 1: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 7
StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.util.Set java.util.function.Function java.util.function.Supplier 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
aload 5
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
4: aload 0
aload 2
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Ljava/util/function/Function;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$24(Ljava/util/function/Function;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; (7)
(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 5: aload 0
aload 5
aload 7
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/offheap/AbstractOffHeapStore.lambda$25()Ljava/lang/Boolean; (6)
()Ljava/lang/Boolean;
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeAndGet:(Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/util/function/Supplier;Ljava/util/function/Supplier;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
astore 8
start local 8 6: aload 4
aload 5
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 8 end local 7 end local 5 7: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
8: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 9 1 keys Ljava/util/Set<+TK;>;
0 9 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 9 3 replaceEqual Ljava/util/function/Supplier<Ljava/lang/Boolean;>;
1 9 4 result Ljava/util/Map<TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;
3 7 5 key TK;
5 7 7 biFunction Ljava/util/function/BiFunction<TK;TV;TV;>;
6 7 8 computed Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
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 final
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=8, args_size=3
start local 0 start local 1 start local 2 0: new java.util.HashMap
dup
aload 1
invokeinterface java.util.Set.size:()I
invokespecial java.util.HashMap.<init>:(I)V
astore 3
start local 3 1: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 7
StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.util.Set java.util.function.Function java.util.Map top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 4
start local 4 3: aload 0
aload 4
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
4: aload 0
aload 2
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;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/offheap/AbstractOffHeapStore.lambda$26(Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; (7)
(Ljava/lang/Object;)Ljava/lang/Object;
astore 6
start local 6 5: aload 0
aload 4
aload 6
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
astore 7
start local 7 6: aload 3
aload 4
aload 7
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 7 end local 6 end local 4 7: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
8: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 9 1 keys Ljava/util/Set<+TK;>;
0 9 2 mappingFunction Ljava/util/function/Function<Ljava/lang/Iterable<+TK;>;Ljava/lang/Iterable<+Ljava/util/Map$Entry<+TK;+TV;>;>;>;
1 9 3 result Ljava/util/Map<TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;
3 7 4 key TK;
5 7 6 function Ljava/util/function/Function<TK;TV;>;
6 7 7 computed Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
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 final
public org.ehcache.core.spi.store.Store$ValueHolder<V> getAndFault(K);
descriptor: (Ljava/lang/Object;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.getAndFaultObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 3
start local 3 3: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
aload 0
aload 3
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Lorg/ehcache/core/events/StoreEventSink;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$27(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.computeIfPresentAndPin:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
checkcast org.ehcache.core.spi.store.Store$ValueHolder
astore 2
start local 2 4: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 3
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
5: aload 2
ifnonnull 8
6: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.getAndFaultObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$GetAndFaultOutcome.MISS:Lorg/ehcache/core/statistics/AuthoritativeTierOperationOutcomes$GetAndFaultOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
7: goto 13
8: StackMap locals: org.ehcache.core.spi.store.Store$ValueHolder org.ehcache.core.events.StoreEventSink
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.getAndFaultObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$GetAndFaultOutcome.HIT:Lorg/ehcache/core/statistics/AuthoritativeTierOperationOutcomes$GetAndFaultOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
9: goto 13
end local 2 StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object top org.ehcache.core.events.StoreEventSink
StackMap stack: java.lang.RuntimeException
10: astore 4
start local 4 11: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 3
aload 4
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
12: aload 4
invokestatic org.ehcache.core.exceptions.StorePassThroughException.handleException:(Ljava/lang/Exception;)Lorg/ehcache/spi/resilience/StoreAccessException;
athrow
end local 4 start local 2 13: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object org.ehcache.core.spi.store.Store$ValueHolder org.ehcache.core.events.StoreEventSink
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 14 1 key TK;
4 10 2 mappedValue Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
13 14 2 mappedValue Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
3 14 3 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
11 13 4 re Ljava/lang/RuntimeException;
Exception table:
from to target type
3 9 10 Class java.lang.RuntimeException
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$ValueHolder<V> computeIfAbsentAndFault(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=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_1
iconst_1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.internalComputeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;ZZ)Lorg/ehcache/core/spi/store/Store$ValueHolder;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 1 1 key TK;
0 1 2 mappingFunction Ljava/util/function/Function<-TK;+TV;>;
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
mappingFunction
public boolean flush(K, org.ehcache.core.spi.store.Store$ValueHolder<V>);
descriptor: (Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.flushObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 3
start local 3 3: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
aload 0
aload 2
aload 3
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$28(Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
4: aload 2
invokedynamic apply(Lorg/ehcache/core/spi/store/Store$ValueHolder;)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/offheap/AbstractOffHeapStore.lambda$29(Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Ljava/lang/Boolean; (6)
(Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Ljava/lang/Boolean;
5: invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.computeIfPinned:(Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/util/function/Function;)Z
istore 4
start local 4 6: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 3
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
7: iload 4
ifeq 10
8: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.flushObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$FlushOutcome.HIT:Lorg/ehcache/core/statistics/AuthoritativeTierOperationOutcomes$FlushOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
9: iconst_1
ireturn
10: StackMap locals: org.ehcache.core.events.StoreEventSink int
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.flushObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$FlushOutcome.MISS:Lorg/ehcache/core/statistics/AuthoritativeTierOperationOutcomes$FlushOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
11: iconst_0
ireturn
end local 4 12: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object org.ehcache.core.spi.store.Store$ValueHolder org.ehcache.core.events.StoreEventSink
StackMap stack: java.lang.RuntimeException
astore 4
start local 4 13: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 3
aload 4
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSinkAfterFailure:(Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Throwable;)V
14: aload 4
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 15 1 key TK;
0 15 2 valueFlushed Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
3 15 3 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
6 12 4 result Z
13 15 4 re Ljava/lang/RuntimeException;
Exception table:
from to target type
3 9 12 Class java.lang.RuntimeException
10 11 12 Class java.lang.RuntimeException
Signature: (TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;)Z
MethodParameters:
Name Flags
key
valueFlushed final
public void setInvalidationValve(org.ehcache.core.spi.store.tiering.AuthoritativeTier$InvalidationValve);
descriptor: (Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier$InvalidationValve;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.valve:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier$InvalidationValve;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 2 1 valve Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier$InvalidationValve;
MethodParameters:
Name Flags
valve
public void setInvalidationListener(org.ehcache.core.spi.store.tiering.CachingTier$InvalidationListener<K, V>);
descriptor: (Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidationListener:Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.mapEvictionListener:Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore$BackingMapEvictionListener;
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.setInvalidationListener:(Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 3 1 invalidationListener Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener<TK;TV;>;
Signature: (Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener<TK;TV;>;)V
MethodParameters:
Name Flags
invalidationListener
public void invalidate();
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidateObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
1: new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 2
start local 2 2: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
aload 0
aload 2
aload 1
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$30(Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.computeIfPresent:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
pop
3: aload 2
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifeq 6
4: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidateObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateOutcome.REMOVED:Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InvalidateOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
5: goto 10
6: StackMap locals: java.util.concurrent.atomic.AtomicBoolean
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidateObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateOutcome.MISS:Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InvalidateOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
7: goto 10
StackMap locals:
StackMap stack: java.lang.RuntimeException
8: astore 3
start local 3 9: aload 3
invokestatic org.ehcache.core.exceptions.StorePassThroughException.handleException:(Ljava/lang/Exception;)Lorg/ehcache/spi/resilience/StoreAccessException;
athrow
end local 3 10: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 11 1 key TK;
2 11 2 removed Ljava/util/concurrent/atomic/AtomicBoolean;
9 10 3 re Ljava/lang/RuntimeException;
Exception table:
from to target type
2 7 8 Class java.lang.RuntimeException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;)V
MethodParameters:
Name Flags
key final
public void invalidateAll();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=1
start local 0 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidateAllObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
1: aconst_null
astore 1
start local 1 2: lconst_0
lstore 2
start local 2 3: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 11
StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore org.ehcache.spi.resilience.StoreAccessException long top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 4
start local 4 5: aload 0
aload 4
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidate:(Ljava/lang/Object;)V
6: goto 11
StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore org.ehcache.spi.resilience.StoreAccessException long java.lang.Object java.util.Iterator
StackMap stack: org.ehcache.spi.resilience.StoreAccessException
7: astore 6
start local 6 8: lload 2
lconst_1
ladd
lstore 2
9: aload 1
ifnonnull 11
10: aload 6
astore 1
end local 6 end local 4 11: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore org.ehcache.spi.resilience.StoreAccessException long top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
12: aload 1
ifnull 15
13: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidateAllObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateAllOutcome.FAILURE:Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InvalidateAllOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
14: new org.ehcache.spi.resilience.StoreAccessException
dup
new java.lang.StringBuilder
dup
ldc "invalidateAll failed - error count: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 2
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial org.ehcache.spi.resilience.StoreAccessException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
15: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore org.ehcache.spi.resilience.StoreAccessException long
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidateAllObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateAllOutcome.SUCCESS:Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InvalidateAllOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
16: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
2 17 1 exception Lorg/ehcache/spi/resilience/StoreAccessException;
3 17 2 errorCount J
5 11 4 k TK;
8 11 6 e Lorg/ehcache/spi/resilience/StoreAccessException;
Exception table:
from to target type
5 6 7 Class org.ehcache.spi.resilience.StoreAccessException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
public void invalidateAllWithHash(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidateAllWithHashObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
1: lload 1
invokestatic org.ehcache.impl.store.HashUtils.longHashToInt:(J)I
istore 3
start local 3 2: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
iload 3
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.removeAllWithHash:(I)Ljava/util/Map;
astore 4
start local 4 3: aload 4
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 6
StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore long int java.util.Map top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 5
start local 5 5: aload 0
aload 5
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
aload 5
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast org.ehcache.core.spi.store.Store$ValueHolder
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.notifyInvalidation:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
end local 5 6: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidateAllWithHashObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateAllWithHashOutcome.SUCCESS:Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InvalidateAllWithHashOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
8: return
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 9 1 hash J
2 9 3 intHash I
3 9 4 removed Ljava/util/Map<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
5 6 5 entry Ljava/util/Map$Entry<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
MethodParameters:
Name Flags
hash
private void notifyInvalidation(K, org.ehcache.core.spi.store.Store$ValueHolder<V>);
descriptor: (Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidationListener:Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
astore 3
start local 3 1: aload 3
ifnull 3
2: aload 3
aload 1
aload 2
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier$InvalidationListener.onInvalidation:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
3: StackMap locals: org.ehcache.core.spi.store.tiering.CachingTier$InvalidationListener
StackMap stack:
return
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/offheap/AbstractOffHeapStore<TK;TV;>;
0 4 1 key TK;
0 4 2 p Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
1 4 3 invalidationListener Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener<TK;TV;>;
Signature: (TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;)V
MethodParameters:
Name Flags
key final
p final
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=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.getAndRemoveObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
2: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 2
start local 2 3: aload 0
aload 1
aload 2
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicReference;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$31(Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 3
start local 3 4: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
aload 3
iconst_0
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.compute:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Ljava/lang/Object;
pop
5: aload 2
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.ehcache.core.spi.store.Store$ValueHolder
astore 4
start local 4 6: aload 4
ifnonnull 9
7: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.getAndRemoveObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$GetAndRemoveOutcome.MISS:Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$GetAndRemoveOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
8: goto 10
9: StackMap locals: java.util.concurrent.atomic.AtomicReference java.util.function.BiFunction org.ehcache.core.spi.store.Store$ValueHolder
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.getAndRemoveObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$GetAndRemoveOutcome.HIT_REMOVED:Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$GetAndRemoveOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
10: StackMap locals:
StackMap stack:
aload 4
11: areturn
end local 4 12: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.util.concurrent.atomic.AtomicReference java.util.function.BiFunction
StackMap stack: java.lang.RuntimeException
astore 4
start local 4 13: aload 4
invokestatic org.ehcache.core.exceptions.StorePassThroughException.handleException:(Ljava/lang/Exception;)Lorg/ehcache/spi/resilience/StoreAccessException;
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 14 1 key TK;
3 14 2 valueHolderAtomicReference Ljava/util/concurrent/atomic/AtomicReference<Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;
4 14 3 computeFunction Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
6 12 4 result Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
13 14 4 re Ljava/lang/RuntimeException;
Exception table:
from to target type
4 11 12 Class java.lang.RuntimeException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key final
public org.ehcache.core.spi.store.Store$ValueHolder<V> installMapping(K, java.util.function.Function<K, org.ehcache.core.spi.store.Store$ValueHolder<V>>);
descriptor: (Ljava/lang/Object;Ljava/util/function/Function;)Lorg/ehcache/core/spi/store/Store$ValueHolder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.installMappingObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
1: aload 0
aload 2
aload 1
invokedynamic apply(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/util/function/BiFunction;
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;)Ljava/lang/Object;
org/ehcache/impl/internal/store/offheap/AbstractOffHeapStore.lambda$32(Ljava/util/function/Function;Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder; (7)
(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 3
start local 3 2: aload 0
aload 1
aload 3
iconst_0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.computeWithRetry:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 4
start local 4 3: aload 4
ifnull 6
4: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.installMappingObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InstallMappingOutcome.PUT:Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InstallMappingOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
5: goto 7
6: StackMap locals: java.util.function.BiFunction org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.installMappingObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InstallMappingOutcome.NOOP:Lorg/ehcache/core/statistics/LowerCachingTierOperationsOutcome$InstallMappingOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
7: StackMap locals:
StackMap stack:
aload 4
8: areturn
end local 4 9: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.util.function.Function java.util.function.BiFunction
StackMap stack: java.lang.RuntimeException
astore 5
start local 5 10: aload 5
invokestatic org.ehcache.core.exceptions.StorePassThroughException.handleException:(Ljava/lang/Exception;)Lorg/ehcache/spi/resilience/StoreAccessException;
athrow
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 11 1 key TK;
0 11 2 source Ljava/util/function/Function<TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;
2 11 3 computeFunction Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
3 9 4 computeResult Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
10 11 5 re Ljava/lang/RuntimeException;
Exception table:
from to target type
2 8 9 Class java.lang.RuntimeException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;Ljava/util/function/Function<TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;>;)Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
MethodParameters:
Name Flags
key final
source final
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V> computeWithRetry(K, java.util.function.BiFunction<K, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V>, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V>>, boolean);
descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
aload 2
iload 3
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.compute:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Ljava/lang/Object;
checkcast org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
astore 4
start local 4 1: goto 20
end local 4 StackMap locals:
StackMap stack: org.terracotta.offheapstore.exceptions.OversizeMappingException
2: pop
3: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.evictionAdvisor:()Lorg/ehcache/impl/internal/store/offheap/SwitchableEvictionAdvisor;
iconst_0
invokeinterface org.ehcache.impl.internal.store.offheap.SwitchableEvictionAdvisor.setSwitchedOn:(Z)V
4: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invokeValve:()V
5: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
aload 2
iload 3
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.compute:(Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Ljava/lang/Object;
checkcast org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
astore 4
start local 4 6: goto 16
end local 4 StackMap locals:
StackMap stack: org.terracotta.offheapstore.exceptions.OversizeMappingException
7: astore 5
start local 5 8: new org.ehcache.spi.resilience.StoreAccessException
dup
new java.lang.StringBuilder
dup
ldc "The element with key '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "' is too large to be stored"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: ldc " in this offheap store."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5
10: invokespecial org.ehcache.spi.resilience.StoreAccessException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 11: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 5
start local 5 12: aload 5
invokestatic org.ehcache.core.exceptions.StorePassThroughException.handleException:(Ljava/lang/Exception;)Lorg/ehcache/spi/resilience/StoreAccessException;
athrow
end local 5 13: StackMap locals:
StackMap stack: java.lang.Throwable
astore 6
14: aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.evictionAdvisor:()Lorg/ehcache/impl/internal/store/offheap/SwitchableEvictionAdvisor;
iconst_1
invokeinterface org.ehcache.impl.internal.store.offheap.SwitchableEvictionAdvisor.setSwitchedOn:(Z)V
15: aload 6
athrow
start local 4 16: StackMap locals: org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.evictionAdvisor:()Lorg/ehcache/impl/internal/store/offheap/SwitchableEvictionAdvisor;
iconst_1
invokeinterface org.ehcache.impl.internal.store.offheap.SwitchableEvictionAdvisor.setSwitchedOn:(Z)V
17: goto 20
end local 4 18: StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.util.function.BiFunction int
StackMap stack: java.lang.RuntimeException
astore 5
start local 5 19: aload 5
invokestatic org.ehcache.core.exceptions.StorePassThroughException.handleException:(Ljava/lang/Exception;)Lorg/ehcache/spi/resilience/StoreAccessException;
athrow
end local 5 start local 4 20: StackMap locals: org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 21 1 key TK;
0 21 2 computeFunction Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
0 21 3 fault Z
1 2 4 computeResult Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
6 7 4 computeResult Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
16 18 4 computeResult Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
20 21 4 computeResult Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
8 11 5 e Lorg/terracotta/offheapstore/exceptions/OversizeMappingException;
12 13 5 e Ljava/lang/RuntimeException;
19 20 5 re Ljava/lang/RuntimeException;
Exception table:
from to target type
0 1 2 Class org.terracotta.offheapstore.exceptions.OversizeMappingException
3 6 7 Class org.terracotta.offheapstore.exceptions.OversizeMappingException
3 6 11 Class java.lang.RuntimeException
3 13 13 any
0 1 18 Class java.lang.RuntimeException
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
Signature: (TK;Ljava/util/function/BiFunction<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;Z)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
MethodParameters:
Name Flags
key
computeFunction
fault
private boolean safeEquals(V, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
if_acmpeq 2
aload 1
ifnull 1
aload 1
aload 2
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 2
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
StackMap locals:
StackMap stack:
2: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 3 1 existingValue TV;
0 3 2 computedValue TV;
Signature: (TV;TV;)Z
MethodParameters:
Name Flags
existingValue
computedValue
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V> setAccessTimeAndExpiryThenReturnMapping(K, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V>, long, org.ehcache.core.events.StoreEventSink<K, V>);
descriptor: (Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: getstatic java.time.Duration.ZERO:Ljava/time/Duration;
astore 6
start local 6 1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.expiry:Lorg/ehcache/expiry/ExpiryPolicy;
aload 1
aload 2
invokeinterface org.ehcache.expiry.ExpiryPolicy.getExpiryForAccess:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/time/Duration;
astore 6
2: aload 6
ifnull 7
aload 6
invokevirtual java.time.Duration.isNegative:()Z
ifeq 7
3: getstatic java.time.Duration.ZERO:Ljava/time/Duration;
astore 6
4: goto 7
StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object org.ehcache.impl.internal.store.offheap.OffHeapValueHolder long org.ehcache.core.events.StoreEventSink java.time.Duration
StackMap stack: java.lang.RuntimeException
5: astore 7
start local 7 6: getstatic org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.LOG:Lorg/slf4j/Logger;
ldc "Expiry computation caused an exception - Expiry duration will be 0 "
aload 7
invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
end local 7 7: StackMap locals:
StackMap stack:
getstatic java.time.Duration.ZERO:Ljava/time/Duration;
aload 6
invokevirtual java.time.Duration.equals:(Ljava/lang/Object;)Z
ifeq 10
8: aload 0
aload 1
aload 2
aload 5
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
9: aconst_null
areturn
10: StackMap locals:
StackMap stack:
aload 2
lload 3
aload 6
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.accessed:(JLjava/time/Duration;)V
11: aload 2
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.writeBack:()V
12: aload 2
areturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 13 1 key TK;
0 13 2 valueHolder Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
0 13 3 now J
0 13 5 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
1 13 6 duration Ljava/time/Duration;
6 7 7 re Ljava/lang/RuntimeException;
Exception table:
from to target type
1 4 5 Class java.lang.RuntimeException
Signature: (TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;JLorg/ehcache/core/events/StoreEventSink<TK;TV;>;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
MethodParameters:
Name Flags
key
valueHolder
now
eventSink
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V> newUpdatedValueHolder(K, V, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V>, long, org.ehcache.core.events.StoreEventSink<K, V>);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 6 0: aload 6
aload 1
aload 3
aload 2
invokeinterface org.ehcache.core.events.StoreEventSink.updated:(Ljava/lang/Object;Ljava/util/function/Supplier;Ljava/lang/Object;)V
1: getstatic java.time.Duration.ZERO:Ljava/time/Duration;
astore 7
start local 7 2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.expiry:Lorg/ehcache/expiry/ExpiryPolicy;
aload 1
aload 3
aload 2
invokeinterface org.ehcache.expiry.ExpiryPolicy.getExpiryForUpdate:(Ljava/lang/Object;Ljava/util/function/Supplier;Ljava/lang/Object;)Ljava/time/Duration;
astore 7
3: aload 7
ifnull 8
aload 7
invokevirtual java.time.Duration.isNegative:()Z
ifeq 8
4: getstatic java.time.Duration.ZERO:Ljava/time/Duration;
astore 7
5: goto 8
StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore java.lang.Object java.lang.Object org.ehcache.impl.internal.store.offheap.OffHeapValueHolder long org.ehcache.core.events.StoreEventSink java.time.Duration
StackMap stack: java.lang.RuntimeException
6: astore 8
start local 8 7: getstatic org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.LOG:Lorg/slf4j/Logger;
ldc "Expiry computation caused an exception - Expiry duration will be 0 "
aload 8
invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
end local 8 8: StackMap locals:
StackMap stack:
getstatic java.time.Duration.ZERO:Ljava/time/Duration;
aload 7
invokevirtual java.time.Duration.equals:(Ljava/lang/Object;)Z
ifeq 11
9: aload 6
aload 1
aload 2
invokedynamic get(Ljava/lang/Object;)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/offheap/AbstractOffHeapStore.lambda$33(Ljava/lang/Object;)Ljava/lang/Object; (6)
()Ljava/lang/Object;
invokeinterface org.ehcache.core.events.StoreEventSink.expired:(Ljava/lang/Object;Ljava/util/function/Supplier;)V
10: aconst_null
areturn
11: StackMap locals:
StackMap stack:
aload 7
ifnonnull 13
12: new org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder
dup
aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.nextIdFor:(Ljava/lang/Object;)J
aload 2
lload 4
aload 3
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.expirationTime:()J
invokespecial org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder.<init>:(JLjava/lang/Object;JJ)V
areturn
13: StackMap locals:
StackMap stack:
aload 7
invokestatic org.ehcache.core.config.ExpiryUtils.isExpiryDurationInfinite:(Ljava/time/Duration;)Z
ifeq 15
14: new org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder
dup
aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.nextIdFor:(Ljava/lang/Object;)J
aload 2
lload 4
ldc -1
invokespecial org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder.<init>:(JLjava/lang/Object;JJ)V
areturn
15: StackMap locals:
StackMap stack:
new org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder
dup
aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.nextIdFor:(Ljava/lang/Object;)J
aload 2
lload 4
lload 4
aload 7
invokestatic org.ehcache.core.config.ExpiryUtils.getExpirationMillis:(JLjava/time/Duration;)J
invokespecial org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder.<init>:(JLjava/lang/Object;JJ)V
areturn
end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 16 1 key TK;
0 16 2 value TV;
0 16 3 existing Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
0 16 4 now J
0 16 6 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
2 16 7 duration Ljava/time/Duration;
7 8 8 re Ljava/lang/RuntimeException;
Exception table:
from to target type
2 5 6 Class java.lang.RuntimeException
Signature: (TK;TV;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;JLorg/ehcache/core/events/StoreEventSink<TK;TV;>;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
MethodParameters:
Name Flags
key
value
existing
now
eventSink
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V> newCreateValueHolder(K, V, long, org.ehcache.core.events.StoreEventSink<K, V>);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 2
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 1
aload 2
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.expiry:Lorg/ehcache/expiry/ExpiryPolicy;
invokestatic org.ehcache.core.config.ExpiryUtils.getExpiryForCreation:(Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/expiry/ExpiryPolicy;)Ljava/time/Duration;
astore 6
start local 6 2: aload 6
invokevirtual java.time.Duration.isZero:()Z
ifeq 4
3: aconst_null
areturn
4: StackMap locals: java.time.Duration
StackMap stack:
aload 5
aload 1
aload 2
invokeinterface org.ehcache.core.events.StoreEventSink.created:(Ljava/lang/Object;Ljava/lang/Object;)V
5: aload 6
invokestatic org.ehcache.core.config.ExpiryUtils.isExpiryDurationInfinite:(Ljava/time/Duration;)Z
ifeq 6
ldc -1
goto 7
StackMap locals:
StackMap stack:
6: lload 3
aload 6
invokestatic org.ehcache.core.config.ExpiryUtils.getExpirationMillis:(JLjava/time/Duration;)J
StackMap locals:
StackMap stack: long
7: lstore 7
start local 7 8: new org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder
dup
aload 0
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.backingMap:()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
aload 1
invokeinterface org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap.nextIdFor:(Ljava/lang/Object;)J
aload 2
lload 3
lload 7
invokespecial org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder.<init>:(JLjava/lang/Object;JJ)V
areturn
end local 7 end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 9 1 key TK;
0 9 2 value TV;
0 9 3 now J
0 9 5 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
2 9 6 duration Ljava/time/Duration;
8 9 7 expirationTime J
Signature: (TK;TV;JLorg/ehcache/core/events/StoreEventSink<TK;TV;>;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
MethodParameters:
Name Flags
key
value
now
eventSink
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V> newTransferValueHolder(org.ehcache.core.spi.store.Store$ValueHolder<V>);
descriptor: (Lorg/ehcache/core/spi/store/Store$ValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x0002) ACC_PRIVATE
Code:
stack=12, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.ehcache.impl.internal.store.BinaryValueHolder
ifeq 5
aload 1
checkcast org.ehcache.impl.internal.store.BinaryValueHolder
invokeinterface org.ehcache.impl.internal.store.BinaryValueHolder.isBinaryValueAvailable:()Z
ifeq 5
1: new org.ehcache.impl.internal.store.offheap.BinaryOffHeapValueHolder
dup
aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.getId:()J
aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.get:()Ljava/lang/Object;
aload 1
checkcast org.ehcache.impl.internal.store.BinaryValueHolder
invokeinterface org.ehcache.impl.internal.store.BinaryValueHolder.getBinaryValue:()Ljava/nio/ByteBuffer;
2: aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.creationTime:()J
aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.expirationTime:()J
3: aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.lastAccessTime:()J
4: invokespecial org.ehcache.impl.internal.store.offheap.BinaryOffHeapValueHolder.<init>:(JLjava/lang/Object;Ljava/nio/ByteBuffer;JJJ)V
areturn
5: StackMap locals:
StackMap stack:
new org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder
dup
aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.getId:()J
aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.get:()Ljava/lang/Object;
aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.creationTime:()J
6: aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.expirationTime:()J
aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.lastAccessTime:()J
7: invokespecial org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder.<init>:(JLjava/lang/Object;JJJ)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 8 1 valueHolder Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
Signature: (Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
MethodParameters:
Name Flags
valueHolder
private void invokeValve();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.valve:Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier$InvalidationValve;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
invokeinterface org.ehcache.core.spi.store.tiering.AuthoritativeTier$InvalidationValve.invalidateAll:()V
3: StackMap locals: org.ehcache.core.spi.store.tiering.AuthoritativeTier$InvalidationValve
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
1 4 1 valve Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier$InvalidationValve;
Exceptions:
throws org.ehcache.spi.resilience.StoreAccessException
private void onExpirationInCachingTier(org.ehcache.core.spi.store.Store$ValueHolder<V>, );
descriptor: (Lorg/ehcache/core/spi/store/Store$ValueHolder;Ljava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.expirationObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidationListener:Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
aload 2
aload 1
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier$InvalidationListener.onInvalidation:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.expirationObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ExpirationOutcome.SUCCESS:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ExpirationOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 4 1 mappedValue Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
0 4 2 key TK;
Signature: (Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;TK;)V
MethodParameters:
Name Flags
mappedValue
key
private void onExpiration(K, org.ehcache.core.spi.store.Store$ValueHolder<V>, org.ehcache.core.events.StoreEventSink<K, V>);
descriptor: (Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.expirationObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
1: aload 3
aload 1
aload 2
invokeinterface org.ehcache.core.events.StoreEventSink.expired:(Ljava/lang/Object;Ljava/util/function/Supplier;)V
2: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.invalidationListener:Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
aload 1
aload 2
invokeinterface org.ehcache.core.spi.store.tiering.CachingTier$InvalidationListener.onInvalidation:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
3: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.expirationObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$ExpirationOutcome.SUCCESS:Lorg/ehcache/core/statistics/StoreOperationOutcomes$ExpirationOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 5 1 mappedKey TK;
0 5 2 mappedValue Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
0 5 3 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
Signature: (TK;Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;)V
MethodParameters:
Name Flags
mappedKey
mappedValue
eventSink
protected abstract org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap<K, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V>> backingMap();
descriptor: ()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Signature: ()Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
protected abstract org.ehcache.impl.internal.store.offheap.SwitchableEvictionAdvisor<K, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V>> evictionAdvisor();
descriptor: ()Lorg/ehcache/impl/internal/store/offheap/SwitchableEvictionAdvisor;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Signature: ()Lorg/ehcache/impl/internal/store/offheap/SwitchableEvictionAdvisor<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
protected org.ehcache.impl.internal.store.offheap.portability.OffHeapValueHolderPortability<V> createValuePortability(org.ehcache.spi.serialization.Serializer<V>);
descriptor: (Lorg/ehcache/spi/serialization/Serializer;)Lorg/ehcache/impl/internal/store/offheap/portability/OffHeapValueHolderPortability;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new org.ehcache.impl.internal.store.offheap.portability.OffHeapValueHolderPortability
dup
aload 1
invokespecial org.ehcache.impl.internal.store.offheap.portability.OffHeapValueHolderPortability.<init>:(Lorg/ehcache/spi/serialization/Serializer;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 1 1 serializer Lorg/ehcache/spi/serialization/Serializer<TV;>;
Signature: (Lorg/ehcache/spi/serialization/Serializer<TV;>;)Lorg/ehcache/impl/internal/store/offheap/portability/OffHeapValueHolderPortability<TV;>;
MethodParameters:
Name Flags
serializer
protected static <K, V> org.ehcache.impl.internal.store.offheap.SwitchableEvictionAdvisor<K, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V>> wrap(org.ehcache.config.EvictionAdvisor<? super K, ? super V>);
descriptor: (Lorg/ehcache/config/EvictionAdvisor;)Lorg/ehcache/impl/internal/store/offheap/SwitchableEvictionAdvisor;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$OffHeapEvictionAdvisorWrapper
dup
aload 0
invokespecial org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$OffHeapEvictionAdvisorWrapper.<init>:(Lorg/ehcache/config/EvictionAdvisor;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 delegate Lorg/ehcache/config/EvictionAdvisor<-TK;-TV;>;
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lorg/ehcache/config/EvictionAdvisor<-TK;-TV;>;)Lorg/ehcache/impl/internal/store/offheap/SwitchableEvictionAdvisor<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
MethodParameters:
Name Flags
delegate
private static void lambda$0(java.lang.Object, org.ehcache.core.spi.store.Store$ValueHolder);
descriptor: (Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 key Ljava/lang/Object;
0 1 1 valueHolder Lorg/ehcache/core/spi/store/Store$ValueHolder<Ljava/lang/Object;>;
private static java.lang.Boolean lambda$1();
descriptor: ()Ljava/lang/Boolean;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
areturn
LocalVariableTable:
Start End Slot Name Signature
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$14(org.ehcache.core.events.StoreEventSink, boolean, java.util.concurrent.atomic.AtomicReference, boolean, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/events/StoreEventSink;ZLjava/util/concurrent/atomic/AtomicReference;ZLjava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=10, args_size=7
start local 0 start local 5 start local 6 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 7
start local 7 1: aload 6
lload 7
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 4
2: aload 0
aload 5
aload 6
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
3: aconst_null
areturn
4: StackMap locals: long
StackMap stack:
iload 2
ifeq 10
5: aload 6
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.forceDeserialization:()V
6: aload 0
aload 5
aload 6
lload 7
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.setAccessTimeAndExpiryThenReturnMapping:(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 9
start local 9 7: aload 9
ifnonnull 9
8: aload 3
aload 6
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
9: StackMap locals: org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 9
areturn
end local 9 10: StackMap locals:
StackMap stack:
iload 4
ifeq 12
11: aload 6
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.forceDeserialization:()V
12: StackMap locals:
StackMap stack:
aload 6
areturn
end local 7 end local 6 end local 5 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 13 5 mappedKey TK;
0 13 6 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
1 13 7 now J
7 10 9 valueHolder Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$15(long, java.lang.Object, java.lang.Object, org.ehcache.core.events.StoreEventSink, java.util.concurrent.atomic.AtomicBoolean, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (JLjava/lang/Object;Ljava/lang/Object;Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=10, args_size=8
start local 0 start local 7 start local 8 0: aload 8
ifnull 2
aload 8
lload 1
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 2
1: aconst_null
astore 8
2: StackMap locals:
StackMap stack:
aload 8
ifnonnull 8
3: aload 0
aload 3
aload 4
lload 1
aload 5
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newCreateValueHolder:(Ljava/lang/Object;Ljava/lang/Object;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 9
start local 9 4: aload 6
aload 9
ifnull 5
iconst_1
goto 6
StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore long java.lang.Object java.lang.Object org.ehcache.core.events.StoreEventSink java.util.concurrent.atomic.AtomicBoolean java.lang.Object org.ehcache.impl.internal.store.offheap.OffHeapValueHolder org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack: java.util.concurrent.atomic.AtomicBoolean
5: iconst_0
StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore long java.lang.Object java.lang.Object org.ehcache.core.events.StoreEventSink java.util.concurrent.atomic.AtomicBoolean java.lang.Object org.ehcache.impl.internal.store.offheap.OffHeapValueHolder org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack: java.util.concurrent.atomic.AtomicBoolean int
6: invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
7: aload 9
areturn
end local 9 8: StackMap locals:
StackMap stack:
aload 0
aload 3
aload 4
aload 8
lload 1
aload 5
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newUpdatedValueHolder:(Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 9
start local 9 9: aload 6
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
10: aload 9
areturn
end local 9 end local 8 end local 7 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 11 7 mappedKey TK;
0 11 8 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
4 8 9 newValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
9 11 9 newValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$16(org.ehcache.core.events.StoreEventSink, java.lang.Object, java.util.concurrent.atomic.AtomicReference, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=8, args_size=6
start local 0 start local 4 start local 5 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 6
start local 6 1: aload 5
ifnull 2
aload 5
lload 6
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 5
2: StackMap locals: long
StackMap stack:
aload 5
ifnull 4
3: aload 0
aload 4
aload 5
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
4: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 2
lload 6
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newCreateValueHolder:(Ljava/lang/Object;Ljava/lang/Object;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
areturn
5: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.forceDeserialization:()V
6: aload 3
aload 5
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
7: aload 0
aload 4
aload 5
lload 6
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.setAccessTimeAndExpiryThenReturnMapping:(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
areturn
end local 6 end local 5 end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 8 4 mappedKey TK;
0 8 5 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
1 8 6 now J
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$17(long, org.ehcache.core.events.StoreEventSink, java.util.concurrent.atomic.AtomicBoolean, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (JLorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=7, args_size=6
start local 0 start local 5 start local 6 0: aload 6
ifnull 3
aload 6
lload 1
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 3
1: aload 0
aload 5
aload 6
aload 3
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
2: aconst_null
areturn
3: StackMap locals:
StackMap stack:
aload 6
ifnull 6
4: aload 4
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
5: aload 3
aload 5
aload 6
invokeinterface org.ehcache.core.events.StoreEventSink.removed:(Ljava/lang/Object;Ljava/util/function/Supplier;)V
6: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 6 end local 5 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 7 5 mappedKey TK;
0 7 6 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$18(org.ehcache.core.events.StoreEventSink, java.lang.Object, java.util.concurrent.atomic.AtomicBoolean, java.util.concurrent.atomic.AtomicBoolean, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=9, args_size=7
start local 0 start local 5 start local 6 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 7
start local 7 1: aload 6
lload 7
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 4
2: aload 0
aload 5
aload 6
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
3: aconst_null
areturn
4: StackMap locals: long
StackMap stack:
aload 6
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.get:()Ljava/lang/Object;
aload 2
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 8
5: aload 3
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
6: aload 1
aload 5
aload 6
invokeinterface org.ehcache.core.events.StoreEventSink.removed:(Ljava/lang/Object;Ljava/util/function/Supplier;)V
7: aconst_null
areturn
8: StackMap locals:
StackMap stack:
aload 4
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
9: aload 0
aload 5
aload 6
lload 7
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.setAccessTimeAndExpiryThenReturnMapping:(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
areturn
end local 7 end local 6 end local 5 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 10 5 mappedKey TK;
0 10 6 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
1 10 7 now J
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$19(org.ehcache.core.events.StoreEventSink, java.util.concurrent.atomic.AtomicReference, java.lang.Object, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=8, args_size=6
start local 0 start local 4 start local 5 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 6
start local 6 1: aload 5
ifnull 2
aload 5
lload 6
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 5
2: StackMap locals: long
StackMap stack:
aload 5
ifnull 4
3: aload 0
aload 4
aload 5
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
4: StackMap locals:
StackMap stack:
aconst_null
areturn
5: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.forceDeserialization:()V
6: aload 2
aload 5
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
7: aload 0
aload 4
aload 3
aload 5
lload 6
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newUpdatedValueHolder:(Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
areturn
end local 6 end local 5 end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 8 4 mappedKey TK;
0 8 5 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
1 8 6 now J
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$20(org.ehcache.core.events.StoreEventSink, java.lang.Object, java.util.concurrent.atomic.AtomicBoolean, java.lang.Object, java.util.concurrent.atomic.AtomicBoolean, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=10, args_size=8
start local 0 start local 6 start local 7 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 8
start local 8 1: aload 7
ifnull 2
aload 7
lload 8
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 5
2: StackMap locals: long
StackMap stack:
aload 7
ifnull 4
3: aload 0
aload 6
aload 7
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
4: StackMap locals:
StackMap stack:
aconst_null
areturn
5: StackMap locals:
StackMap stack:
aload 2
aload 7
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.get:()Ljava/lang/Object;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 8
6: aload 3
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
7: aload 0
aload 6
aload 4
aload 7
lload 8
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newUpdatedValueHolder:(Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
areturn
8: StackMap locals:
StackMap stack:
aload 5
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
9: aload 0
aload 6
aload 7
lload 8
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.setAccessTimeAndExpiryThenReturnMapping:(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
areturn
end local 8 end local 7 end local 6 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 10 6 mappedKey TK;
0 10 7 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
1 10 8 now J
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$21(org.ehcache.core.events.StoreEventSink, java.util.concurrent.atomic.AtomicReference, java.util.function.BiFunction, java.util.concurrent.atomic.AtomicBoolean, java.lang.Object, java.util.concurrent.atomic.AtomicReference, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/function/BiFunction;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=14, args_size=9
start local 0 start local 7 start local 8 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 9
start local 9 1: aconst_null
astore 11
start local 11 2: aload 8
ifnull 3
aload 8
lload 9
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 7
3: StackMap locals: long java.lang.Object
StackMap stack:
aload 8
ifnull 5
4: aload 0
aload 7
aload 8
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
5: StackMap locals:
StackMap stack:
aconst_null
astore 8
6: goto 9
7: StackMap locals:
StackMap stack:
aload 8
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.get:()Ljava/lang/Object;
astore 11
8: aload 2
aload 8
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
9: StackMap locals:
StackMap stack:
aload 3
aload 7
aload 11
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 12
start local 12 10: aload 12
ifnonnull 15
11: aload 8
ifnull 14
12: aload 4
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
13: aload 1
aload 7
aload 8
invokeinterface org.ehcache.core.events.StoreEventSink.removed:(Ljava/lang/Object;Ljava/util/function/Supplier;)V
14: StackMap locals: java.lang.Object
StackMap stack:
aconst_null
areturn
15: StackMap locals:
StackMap stack:
aload 0
aload 12
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkValue:(Ljava/lang/Object;)V
16: aload 4
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
17: aload 8
ifnull 22
18: aload 0
aload 5
aload 12
aload 8
lload 9
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newUpdatedValueHolder:(Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 13
start local 13 19: aload 13
ifnonnull 21
20: aload 6
new org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder
dup
aload 8
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.getId:()J
aload 12
lload 9
lload 9
invokespecial org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder.<init>:(JLjava/lang/Object;JJ)V
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
21: StackMap locals: org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 13
areturn
end local 13 22: StackMap locals:
StackMap stack:
aload 0
aload 5
aload 12
lload 9
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newCreateValueHolder:(Ljava/lang/Object;Ljava/lang/Object;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
areturn
end local 12 end local 11 end local 9 end local 8 end local 7 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 23 7 mappedKey TK;
0 23 8 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
1 23 9 now J
2 23 11 existingValue TV;
10 23 12 computedValue TV;
19 22 13 valueHolder Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$22(org.ehcache.core.events.StoreEventSink, java.util.function.BiFunction, java.util.concurrent.atomic.AtomicBoolean, java.util.function.Supplier, java.util.concurrent.atomic.AtomicReference, java.lang.Object, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/events/StoreEventSink;Ljava/util/function/BiFunction;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/function/Supplier;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=10, locals=14, args_size=9
start local 0 start local 7 start local 8 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 9
start local 9 1: aconst_null
astore 11
start local 11 2: aload 8
ifnull 3
aload 8
lload 9
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 7
3: StackMap locals: long java.lang.Object
StackMap stack:
aload 8
ifnull 5
4: aload 0
aload 7
aload 8
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
5: StackMap locals:
StackMap stack:
aconst_null
astore 8
6: goto 8
7: StackMap locals:
StackMap stack:
aload 8
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.get:()Ljava/lang/Object;
astore 11
8: StackMap locals:
StackMap stack:
aload 2
aload 7
aload 11
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 12
start local 12 9: aload 12
ifnonnull 14
10: aload 8
ifnull 13
11: aload 3
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
12: aload 1
aload 7
aload 8
invokeinterface org.ehcache.core.events.StoreEventSink.removed:(Ljava/lang/Object;Ljava/util/function/Supplier;)V
13: StackMap locals: java.lang.Object
StackMap stack:
aconst_null
areturn
14: StackMap locals:
StackMap stack:
aload 0
aload 11
aload 12
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.safeEquals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 21
aload 4
invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifne 21
15: aload 8
ifnull 20
16: aload 0
aload 7
aload 8
lload 9
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.setAccessTimeAndExpiryThenReturnMapping:(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 13
start local 13 17: aload 13
ifnonnull 19
18: aload 5
aload 8
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
19: StackMap locals: org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 13
areturn
end local 13 20: StackMap locals:
StackMap stack:
aconst_null
areturn
21: StackMap locals:
StackMap stack:
aload 0
aload 12
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkValue:(Ljava/lang/Object;)V
22: aload 3
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
23: aload 8
ifnull 28
24: aload 0
aload 6
aload 12
aload 8
lload 9
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newUpdatedValueHolder:(Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 13
start local 13 25: aload 13
ifnonnull 27
26: aload 5
new org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder
dup
aload 8
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.getId:()J
aload 12
lload 9
lload 9
invokespecial org.ehcache.impl.internal.store.offheap.BasicOffHeapValueHolder.<init>:(JLjava/lang/Object;JJ)V
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
27: StackMap locals: org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 13
areturn
end local 13 28: StackMap locals:
StackMap stack:
aload 0
aload 6
aload 12
lload 9
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newCreateValueHolder:(Ljava/lang/Object;Ljava/lang/Object;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
areturn
end local 12 end local 11 end local 9 end local 8 end local 7 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 29 7 mappedKey TK;
0 29 8 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
1 29 9 now J
2 29 11 existingValue TV;
9 29 12 computedValue TV;
17 20 13 valueHolder Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
25 28 13 valueHolder Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$23(org.ehcache.core.events.StoreEventSink, java.util.concurrent.atomic.AtomicBoolean, java.util.function.Function, boolean, java.util.concurrent.atomic.AtomicReference, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/events/StoreEventSink;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/function/Function;ZLjava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=11, args_size=8
start local 0 start local 6 start local 7 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 8
start local 8 1: aload 7
ifnull 2
aload 7
lload 8
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 10
2: StackMap locals: long
StackMap stack:
aload 7
ifnull 4
3: aload 0
aload 6
aload 7
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
4: StackMap locals:
StackMap stack:
aload 2
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
5: aload 3
aload 6
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
astore 10
start local 10 6: aload 10
ifnonnull 8
7: aconst_null
areturn
8: StackMap locals: java.lang.Object
StackMap stack:
aload 0
aload 10
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkValue:(Ljava/lang/Object;)V
9: aload 0
aload 6
aload 10
lload 8
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newCreateValueHolder:(Ljava/lang/Object;Ljava/lang/Object;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
areturn
end local 10 10: StackMap locals:
StackMap stack:
aload 0
aload 6
aload 7
lload 8
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.setAccessTimeAndExpiryThenReturnMapping:(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;JLorg/ehcache/core/events/StoreEventSink;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
astore 10
start local 10 11: aload 10
ifnull 17
12: iload 4
ifeq 15
13: aload 7
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.detach:()V
14: goto 18
15: StackMap locals: org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
StackMap stack:
aload 7
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.forceDeserialization:()V
16: goto 18
17: StackMap locals:
StackMap stack:
aload 5
aload 7
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
18: StackMap locals:
StackMap stack:
aload 10
areturn
end local 10 end local 8 end local 7 end local 6 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 19 6 mappedKey TK;
0 19 7 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
1 19 8 now J
6 10 10 computedValue TV;
11 19 10 valueHolder Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
private java.lang.Object lambda$24(java.util.function.Function, java.lang.Object, java.lang.Object);
descriptor: (Ljava/util/function/Function;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 2 start local 3 0: new org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$2
dup
aload 0
aload 2
aload 3
invokespecial org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$2.<init>:(Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore;Ljava/lang/Object;Ljava/lang/Object;)V
astore 4
start local 4 1: aload 1
2: aload 4
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
3: invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Iterable
4: invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
5: astore 5
start local 5 6: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 6
start local 6 7: aload 6
ifnull 10
8: aload 0
aload 6
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
9: aload 6
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
areturn
10: StackMap locals: java.util.Map$Entry java.util.Iterator java.util.Map$Entry
StackMap stack:
aconst_null
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 11 2 k TK;
0 11 3 v TV;
1 11 4 entry Ljava/util/Map$Entry<TK;TV;>;
6 11 5 iterator Ljava/util/Iterator<+Ljava/util/Map$Entry<+TK;+TV;>;>;
7 11 6 result1 Ljava/util/Map$Entry<+TK;+TV;>;
private static java.lang.Boolean lambda$25();
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 java.lang.Object lambda$26(java.util.function.Function, java.lang.Object);
descriptor: (Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 2 0: aload 1
aload 2
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Iterable
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
start local 3 1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 4
start local 4 2: aload 4
ifnull 5
3: aload 0
aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.checkKey:(Ljava/lang/Object;)V
4: aload 4
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
areturn
5: StackMap locals: java.util.Iterator java.util.Map$Entry
StackMap stack:
aconst_null
areturn
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 6 2 k TK;
1 6 3 iterator Ljava/util/Iterator<+Ljava/util/Map$Entry<+TK;+TV;>;>;
2 6 4 result1 Ljava/util/Map$Entry<+TK;+TV;>;
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$27(org.ehcache.core.events.StoreEventSink, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 2 start local 3 0: aload 3
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 3
1: aload 0
aload 2
aload 3
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
2: aconst_null
areturn
3: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.detach:()V
4: aload 3
areturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 5 2 mappedKey TK;
0 5 3 mappedValue1 Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$28(org.ehcache.core.spi.store.Store$ValueHolder, org.ehcache.core.events.StoreEventSink, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=5, args_size=5
start local 0 start local 3 start local 4 0: aload 4
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.getId:()J
aload 1
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.getId:()J
lcmp
ifne 6
1: aload 1
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.isExpired:(J)Z
ifeq 4
2: aload 0
aload 3
aload 4
aload 2
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpiration:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/core/events/StoreEventSink;)V
3: aconst_null
areturn
4: StackMap locals:
StackMap stack:
aload 4
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.updateMetadata:(Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
5: aload 4
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.writeBack:()V
6: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 7 3 k TK;
0 7 4 valuePresent Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
private static java.lang.Boolean lambda$29(org.ehcache.core.spi.store.Store$ValueHolder, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Lorg/ehcache/core/spi/store/Store$ValueHolder;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Ljava/lang/Boolean;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=2, args_size=2
start local 1 0: aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.getId:()J
aload 0
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.getId:()J
lcmp
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 3 1 valuePresent Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$30(java.util.concurrent.atomic.AtomicBoolean, java.lang.Object, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 3 start local 4 0: aload 1
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
1: aload 0
aload 2
aload 4
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.notifyInvalidation:(Ljava/lang/Object;Lorg/ehcache/core/spi/store/Store$ValueHolder;)V
2: aconst_null
areturn
end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 3 3 k TK;
0 3 4 present Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$31(java.lang.Object, java.util.concurrent.atomic.AtomicReference, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Ljava/lang/Object;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=7, args_size=5
start local 0 start local 3 start local 4 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
lstore 5
start local 5 1: aload 4
ifnull 2
aload 4
lload 5
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.isExpired:(J)Z
ifeq 5
2: StackMap locals: long
StackMap stack:
aload 4
ifnull 4
3: aload 0
aload 4
aload 1
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpirationInCachingTier:(Lorg/ehcache/core/spi/store/Store$ValueHolder;Ljava/lang/Object;)V
4: StackMap locals:
StackMap stack:
aconst_null
areturn
5: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.ehcache.impl.internal.store.offheap.OffHeapValueHolder.detach:()V
6: aload 2
aload 4
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
7: aconst_null
areturn
end local 5 end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 8 3 mappedKey TK;
0 8 4 mappedValue Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
1 8 5 now J
private org.ehcache.impl.internal.store.offheap.OffHeapValueHolder lambda$32(java.util.function.Function, java.lang.Object, java.lang.Object, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder);
descriptor: (Ljava/util/function/Function;Ljava/lang/Object;Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=6, args_size=5
start local 0 start local 3 start local 4 0: aload 4
ifnull 2
1: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 1
aload 3
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.ehcache.core.spi.store.Store$ValueHolder
astore 5
start local 5 3: aload 5
ifnull 8
4: aload 5
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.timeSource:Lorg/ehcache/core/spi/time/TimeSource;
invokeinterface org.ehcache.core.spi.time.TimeSource.getTimeMillis:()J
invokeinterface org.ehcache.core.spi.store.Store$ValueHolder.isExpired:(J)Z
ifeq 7
5: aload 0
aload 5
aload 2
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.onExpirationInCachingTier:(Lorg/ehcache/core/spi/store/Store$ValueHolder;Ljava/lang/Object;)V
6: aconst_null
areturn
7: StackMap locals: org.ehcache.core.spi.store.Store$ValueHolder
StackMap stack:
aload 0
aload 5
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.newTransferValueHolder:(Lorg/ehcache/core/spi/store/Store$ValueHolder;)Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;
areturn
8: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 5 end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore<TK;TV;>;
0 9 3 k TK;
0 9 4 offHeapValueHolder Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
3 9 5 valueHolder Lorg/ehcache/core/spi/store/Store$ValueHolder<TV;>;
private static java.lang.Object lambda$33(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Lorg/ehcache/impl/store/BaseStore<TK;TV;>;Lorg/ehcache/core/spi/store/tiering/AuthoritativeTier<TK;TV;>;Lorg/ehcache/core/spi/store/tiering/LowerCachingTier<TK;TV;>;
SourceFile: "AbstractOffHeapStore.java"
NestMembers:
org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$1 org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$1$1 org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$2 org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$OffHeapEvictionAdvisorWrapper
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 Configuration = org.ehcache.core.spi.store.Store$Configuration of org.ehcache.core.spi.store.Store
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
public final ComputeIfAbsentAndFaultOutcome = org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$ComputeIfAbsentAndFaultOutcome of org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes
public final FlushOutcome = org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$FlushOutcome of org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes
public final GetAndFaultOutcome = org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes$GetAndFaultOutcome of org.ehcache.core.statistics.AuthoritativeTierOperationOutcomes
public final GetAndRemoveOutcome = org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$GetAndRemoveOutcome of org.ehcache.core.statistics.LowerCachingTierOperationsOutcome
public final InstallMappingOutcome = org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InstallMappingOutcome of org.ehcache.core.statistics.LowerCachingTierOperationsOutcome
public final InvalidateAllOutcome = org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateAllOutcome of org.ehcache.core.statistics.LowerCachingTierOperationsOutcome
public final InvalidateAllWithHashOutcome = org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateAllWithHashOutcome of org.ehcache.core.statistics.LowerCachingTierOperationsOutcome
public final InvalidateOutcome = org.ehcache.core.statistics.LowerCachingTierOperationsOutcome$InvalidateOutcome of org.ehcache.core.statistics.LowerCachingTierOperationsOutcome
public final ComputeIfAbsentOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$ComputeIfAbsentOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
public final ComputeOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$ComputeOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
public final ConditionalRemoveOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$ConditionalRemoveOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
public final ConditionalReplaceOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$ConditionalReplaceOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
public final EvictionOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$EvictionOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
public final ExpirationOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$ExpirationOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
public final GetOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$GetOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
public final PutIfAbsentOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$PutIfAbsentOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
public final PutOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$PutOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
public final RemoveOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$RemoveOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
public final ReplaceOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$ReplaceOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$1
org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$2
BackingMapEvictionListener = org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener of org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore
private OffHeapEvictionAdvisorWrapper = org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$OffHeapEvictionAdvisorWrapper of org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore