class org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener<K, V> implements org.ehcache.impl.internal.store.offheap.factories.EhcacheSegmentFactory$EhcacheSegment$EvictionListener<K, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V>>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener
super_class: java.lang.Object
{
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.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 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 void <init>(org.ehcache.core.events.StoreEventDispatcher<K, V>, org.ehcache.core.statistics.OperationObserver<org.ehcache.core.statistics.StoreOperationOutcomes$EvictionOutcome>);
descriptor: (Lorg/ehcache/core/events/StoreEventDispatcher;Lorg/ehcache/core/statistics/OperationObserver;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
2: aload 0
aload 2
putfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.evictionObserver:Lorg/ehcache/core/statistics/OperationObserver;
3: getstatic org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore.NULL_INVALIDATION_LISTENER:Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
astore 3
start local 3 4: aload 0
aload 3
putfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.invalidationListener:Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore$BackingMapEvictionListener<TK;TV;>;
0 6 1 eventDispatcher Lorg/ehcache/core/events/StoreEventDispatcher<TK;TV;>;
0 6 2 evictionObserver Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$EvictionOutcome;>;
4 6 3 nullInvalidationListener Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener<TK;TV;>;
Signature: (Lorg/ehcache/core/events/StoreEventDispatcher<TK;TV;>;Lorg/ehcache/core/statistics/OperationObserver<Lorg/ehcache/core/statistics/StoreOperationOutcomes$EvictionOutcome;>;)V
MethodParameters:
Name Flags
eventDispatcher
evictionObserver
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=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
ldc "invalidation listener cannot be null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.invalidationListener:Lorg/ehcache/core/spi/store/tiering/CachingTier$InvalidationListener;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore$BackingMapEvictionListener<TK;TV;>;
0 4 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 onEviction(K, org.ehcache.impl.internal.store.offheap.OffHeapValueHolder<V>);
descriptor: (Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.evictionObserver:Lorg/ehcache/core/statistics/OperationObserver;
invokeinterface org.ehcache.core.statistics.OperationObserver.begin:()V
1: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
invokeinterface org.ehcache.core.events.StoreEventDispatcher.eventSink:()Lorg/ehcache/core/events/StoreEventSink;
astore 3
start local 3 2: aload 3
aload 1
aload 2
invokeinterface org.ehcache.core.events.StoreEventSink.evicted:(Ljava/lang/Object;Ljava/util/function/Supplier;)V
3: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.eventDispatcher:Lorg/ehcache/core/events/StoreEventDispatcher;
aload 3
invokeinterface org.ehcache.core.events.StoreEventDispatcher.releaseEventSink:(Lorg/ehcache/core/events/StoreEventSink;)V
4: goto 7
StackMap locals: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener java.lang.Object org.ehcache.impl.internal.store.offheap.OffHeapValueHolder org.ehcache.core.events.StoreEventSink
StackMap stack: java.lang.RuntimeException
5: astore 4
start local 4 6: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.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
end local 4 7: StackMap locals:
StackMap stack:
aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.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
8: aload 0
getfield org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.evictionObserver:Lorg/ehcache/core/statistics/OperationObserver;
getstatic org.ehcache.core.statistics.StoreOperationOutcomes$EvictionOutcome.SUCCESS:Lorg/ehcache/core/statistics/StoreOperationOutcomes$EvictionOutcome;
invokeinterface org.ehcache.core.statistics.OperationObserver.end:(Ljava/lang/Enum;)V
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/ehcache/impl/internal/store/offheap/AbstractOffHeapStore$BackingMapEvictionListener<TK;TV;>;
0 10 1 key TK;
0 10 2 value Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;
2 10 3 eventSink Lorg/ehcache/core/events/StoreEventSink<TK;TV;>;
6 7 4 re Ljava/lang/RuntimeException;
Exception table:
from to target type
2 4 5 Class java.lang.RuntimeException
Signature: (TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;)V
MethodParameters:
Name Flags
key
value
public void onEviction(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast java.lang.Object
aload 2
checkcast org.ehcache.impl.internal.store.offheap.OffHeapValueHolder
invokevirtual org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener.onEviction:(Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder;)V
return
LocalVariableTable:
Start End Slot Name Signature
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/lang/Object;Lorg/ehcache/impl/internal/store/offheap/factories/EhcacheSegmentFactory$EhcacheSegment$EvictionListener<TK;Lorg/ehcache/impl/internal/store/offheap/OffHeapValueHolder<TV;>;>;
SourceFile: "AbstractOffHeapStore.java"
NestHost: org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore
InnerClasses:
public abstract ValueHolder = org.ehcache.core.spi.store.Store$ValueHolder of org.ehcache.core.spi.store.Store
public abstract InvalidationListener = org.ehcache.core.spi.store.tiering.CachingTier$InvalidationListener of org.ehcache.core.spi.store.tiering.CachingTier
public final EvictionOutcome = org.ehcache.core.statistics.StoreOperationOutcomes$EvictionOutcome of org.ehcache.core.statistics.StoreOperationOutcomes
BackingMapEvictionListener = org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore$BackingMapEvictionListener of org.ehcache.impl.internal.store.offheap.AbstractOffHeapStore
public EhcacheSegment = org.ehcache.impl.internal.store.offheap.factories.EhcacheSegmentFactory$EhcacheSegment of org.ehcache.impl.internal.store.offheap.factories.EhcacheSegmentFactory
public abstract EvictionListener = org.ehcache.impl.internal.store.offheap.factories.EhcacheSegmentFactory$EhcacheSegment$EvictionListener of org.ehcache.impl.internal.store.offheap.factories.EhcacheSegmentFactory$EhcacheSegment