abstract class org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache extends org.apache.camel.com.github.benmanes.caffeine.cache.BLCHeader$DrainStatusRef implements org.apache.camel.com.github.benmanes.caffeine.cache.LocalCache
{
static final java.util.logging.Logger logger;
static final int NCPU;
static final int WRITE_BUFFER_MIN;
static final int WRITE_BUFFER_MAX;
static final int WRITE_BUFFER_RETRIES;
static final long MAXIMUM_CAPACITY;
static final double PERCENT_MAIN;
static final double PERCENT_MAIN_PROTECTED;
static final long EXPIRE_WRITE_TOLERANCE;
static final long MAXIMUM_EXPIRY;
final java.util.concurrent.ConcurrentHashMap data;
final org.apache.camel.com.github.benmanes.caffeine.cache.CacheLoader cacheLoader;
final org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$PerformCleanupTask drainBuffersTask;
final java.util.function.Consumer accessPolicy;
final org.apache.camel.com.github.benmanes.caffeine.cache.Buffer readBuffer;
final org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory;
final java.util.concurrent.locks.ReentrantLock evictionLock;
final org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter writer;
final org.apache.camel.com.github.benmanes.caffeine.cache.Weigher weigher;
final java.util.concurrent.Executor executor;
final boolean isAsync;
transient java.util.Set keySet;
transient java.util.Collection values;
transient java.util.Set entrySet;
protected void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine, org.apache.camel.com.github.benmanes.caffeine.cache.CacheLoader, boolean)
{
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.Weigher v;
org.apache.camel.com.github.benmanes.caffeine.cache.CacheLoader v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine v;
int v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedBuffer v;
boolean v, v, v, v, v, v, v, v;
java.util.concurrent.locks.ReentrantLock v;
java.util.concurrent.Executor v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.Buffer v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
java.util.function.Consumer v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$PerformCleanupTask v;
org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.CacheLoader;
v := @parameter: boolean;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BLCHeader$DrainStatusRef: void <init>()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isAsync> = v;
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.CacheLoader cacheLoader> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine: java.util.concurrent.Executor getExecutor()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.Executor executor> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine: org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter getCacheWriter()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter writer> = v;
v = new java.util.concurrent.locks.ReentrantLock;
specialinvoke v.<java.util.concurrent.locks.ReentrantLock: void <init>()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine: org.apache.camel.com.github.benmanes.caffeine.cache.Weigher getWeigher(boolean)>(v);
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Weigher weigher> = v;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$PerformCleanupTask;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$PerformCleanupTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache)>(v);
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$PerformCleanupTask drainBuffersTask> = v;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory newFactory(org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine,boolean)>(v, v);
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory> = v;
v = new java.util.concurrent.ConcurrentHashMap;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine: int getInitialCapacity()>();
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>(int)>(v);
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean collectKeys()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean collectValues()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterAccess()>();
if v == 0 goto label;
label:
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedBuffer;
v = v;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedBuffer: void <init>()>();
goto label;
label:
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.Buffer: org.apache.camel.com.github.benmanes.caffeine.cache.Buffer disabled()>();
label:
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Buffer readBuffer> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterAccess()>();
if v == 0 goto label;
label:
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$onAccess__42: java.util.function.Consumer bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache)>(v);
goto label;
label:
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_new_0__43: java.util.function.Consumer bootstrap$()>();
label:
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.function.Consumer accessPolicy> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine: long getMaximum()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setMaximum(long)>(v);
label:
return;
}
static int ceilingPowerOfTwo(int)
{
int v, v, v, v, v;
v := @parameter: int;
v = v - 1;
v = staticinvoke <java.lang.Integer: int numberOfLeadingZeros(int)>(v);
v = neg v;
v = 1 << v;
return v;
}
final boolean isComputingAsync(org.apache.camel.com.github.benmanes.caffeine.cache.Node)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.Object v;
boolean v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isAsync>;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.Async: boolean isReady(java.util.concurrent.CompletableFuture)>(v);
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
protected org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderEdenDeque()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProbationDeque()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProtectedDeque()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque writeOrderDeque()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected boolean buffersWrites()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
protected org.apache.camel.com.github.benmanes.caffeine.cache.MpscGrowableArrayQueue writeBuffer()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
public final java.util.concurrent.Executor executor()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.util.concurrent.Executor v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.Executor executor>;
return v;
}
protected boolean hasWriter()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter v, v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter writer>;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter: org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter disabledWriter()>();
if v == v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean isRecordingStats()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
public org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter statsCounter()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter: org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter disabledStatsCounter()>();
return v;
}
public org.apache.camel.com.github.benmanes.caffeine.cache.Ticker statsTicker()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker disabledTicker()>();
return v;
}
public org.apache.camel.com.github.benmanes.caffeine.cache.RemovalListener removalListener()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return null;
}
public boolean hasRemovalListener()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
public void notifyRemoval(java.lang.Object, java.lang.Object, org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)
{
java.lang.Throwable v;
java.lang.Object[] v;
java.util.concurrent.Executor v;
java.util.logging.Logger v;
java.lang.Runnable v;
java.util.logging.Level v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v;
java.lang.Object v, v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
v = newarray (java.lang.Object)[0];
staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine: void requireState(boolean,java.lang.String,java.lang.Object[])>(v, "Notification should be guarded with a check", v);
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_notifyRemoval_1__44: java.lang.Runnable bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v, v);
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.Executor executor()>();
interfaceinvoke v.<java.util.concurrent.Executor: void execute(java.lang.Runnable)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level SEVERE>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Throwable)>(v, "Exception thrown when submitting removal listener", v);
interfaceinvoke v.<java.lang.Runnable: void run()>();
label:
return;
catch java.lang.Throwable from label to label with label;
}
protected boolean collectKeys()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
protected boolean collectValues()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
protected java.lang.ref.ReferenceQueue keyReferenceQueue()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return null;
}
protected java.lang.ref.ReferenceQueue valueReferenceQueue()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return null;
}
protected boolean expiresVariable()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
protected boolean expiresAfterAccess()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
protected long expiresAfterAccessNanos()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected void setExpiresAfterAccessNanos(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
long v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected boolean expiresAfterWrite()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
protected long expiresAfterWriteNanos()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected void setExpiresAfterWriteNanos(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
long v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected boolean refreshAfterWrite()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
protected long refreshAfterWriteNanos()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected void setRefreshAfterWriteNanos(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
long v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
public boolean hasWriteTime()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
boolean v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean refreshAfterWrite()>();
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
protected org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return null;
}
public org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker disabledTicker()>();
return v;
}
protected org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel timerWheel()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected boolean evicts()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
protected boolean isWeighted()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.Weigher v, v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Weigher weigher>;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.Weigher: org.apache.camel.com.github.benmanes.caffeine.cache.Weigher singletonWeigher()>();
if v == v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
protected org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch frequencySketch()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected boolean fastpath()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
return 0;
}
protected long maximum()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected long edenMaximum()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected long mainProtectedMaximum()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected void lazySetMaximum(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
long v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected void lazySetEdenMaximum(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
long v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected void lazySetMainProtectedMaximum(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
long v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
void setMaximum(long)
{
long v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch v, v;
byte v, v;
boolean v, v;
double v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = v cmp 0L;
if v < 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine: void requireArgument(boolean)>(v);
v = staticinvoke <java.lang.Math: long min(long,long)>(v, 9223372034707292160L);
v = v * 0.99;
v = v - v;
v = v - v;
v = v * 0.8;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetMaximum(long)>(v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetEdenMaximum(long)>(v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetMainProtectedMaximum(long)>(v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch frequencySketch()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isWeighted()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long weightedSize()>();
v = v >>> 1;
v = v cmp v;
if v < 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch frequencySketch()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch: void ensureCapacity(long)>(v);
label:
return;
}
long adjustedWeightedSize()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long weightedSize()>();
v = staticinvoke <java.lang.Math: long max(long,long)>(0L, v);
return v;
}
protected long weightedSize()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected long edenWeightedSize()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected long mainProtectedWeightedSize()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected void lazySetWeightedSize(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
long v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected void lazySetEdenWeightedSize(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
long v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
protected void lazySetMainProtectedWeightedSize(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.UnsupportedOperationException v;
long v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
void evictEntries()
{
int v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v != 0 goto label;
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int evictFromEden()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void evictFromMain(int)>(v);
return;
}
int evictFromEden()
{
long v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
byte v;
int v, v, v;
java.lang.Object v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = 0;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderEdenDeque()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: java.lang.Object peek()>();
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long edenWeightedSize()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long edenMaximum()>();
v = v cmp v;
if v <= 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getNextInAccessOrder()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getWeight()>();
if v == 0 goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: void makeMainProbation()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderEdenDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean remove(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque$AccessOrder)>(v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProbationDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean add(java.lang.Object)>(v);
v = v + 1;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long edenWeightedSize()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getPolicyWeight()>();
v = v - v;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetEdenWeightedSize(long)>(v);
label:
v = v;
goto label;
label:
return v;
}
void evictFromMain(int)
{
byte v, v, v;
boolean v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v, v, v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v, v, v, v, v, v, v;
long v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
int v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque v, v, v, v;
java.lang.Object v, v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: int;
v = 1;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProbationDeque()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: java.lang.Object peekFirst()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProbationDeque()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: java.lang.Object peekLast()>();
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long weightedSize()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long maximum()>();
v = v cmp v;
if v <= 0 goto label;
if v != 0 goto label;
v = null;
label:
if v != null goto label;
if v != null goto label;
if v != 1 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProtectedDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: java.lang.Object peekFirst()>();
v = 2;
goto label;
label:
if v != 2 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderEdenDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: java.lang.Object peekFirst()>();
v = 0;
goto label;
label:
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getPolicyWeight()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getNextInAccessOrder()>();
goto label;
label:
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getPolicyWeight()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getPreviousInAccessOrder()>();
v = v - 1;
goto label;
label:
if v != null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getPreviousInAccessOrder()>();
v = v;
v = v;
v = v - 1;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause SIZE>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, 0L);
goto label;
label:
if v != null goto label;
v = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getNextInAccessOrder()>();
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause SIZE>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, 0L);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKey()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKey()>();
if v != null goto label;
v = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getNextInAccessOrder()>();
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause COLLECTED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, 0L);
goto label;
label:
if v != null goto label;
v = v - 1;
v = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getPreviousInAccessOrder()>();
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause COLLECTED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, 0L);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getPolicyWeight()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long maximum()>();
v = v cmp v;
if v <= 0 goto label;
v = v - 1;
v = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getPreviousInAccessOrder()>();
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause SIZE>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, 0L);
goto label;
label:
v = v - 1;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean admit(java.lang.Object,java.lang.Object)>(v, v);
if v == 0 goto label;
v = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getNextInAccessOrder()>();
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause SIZE>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, 0L);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getPreviousInAccessOrder()>();
goto label;
label:
v = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: org.apache.camel.com.github.benmanes.caffeine.cache.Node getPreviousInAccessOrder()>();
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause SIZE>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, 0L);
goto label;
label:
return;
}
boolean admit(java.lang.Object, java.lang.Object)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch v, v;
java.util.concurrent.ThreadLocalRandom v;
int v, v, v, v;
java.lang.Object v, v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch frequencySketch()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch: int frequency(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch frequencySketch()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch: int frequency(java.lang.Object)>(v);
if v <= v goto label;
return 1;
label:
if v > 5 goto label;
return 0;
label:
v = staticinvoke <java.util.concurrent.ThreadLocalRandom: java.util.concurrent.ThreadLocalRandom current()>();
v = virtualinvoke v.<java.util.concurrent.ThreadLocalRandom: int nextInt()>();
v = v & 127;
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
void expireEntries()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void expireAfterAccessEntries(long)>(v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void expireAfterWriteEntries(long)>(v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void expireVariableEntries(long)>(v);
return;
}
void expireAfterAccessEntries(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque v, v, v;
boolean v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterAccess()>();
if v != 0 goto label;
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderEdenDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void expireAfterAccessEntries(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque,long)>(v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProbationDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void expireAfterAccessEntries(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque,long)>(v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProtectedDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void expireAfterAccessEntries(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque,long)>(v, v);
label:
return;
}
void expireAfterAccessEntries(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque, long)
{
long v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v;
byte v;
java.lang.Object v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expiresAfterAccessNanos()>();
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: java.lang.Object peekFirst()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: long getAccessTime()>();
v = v - v;
v = v cmp v;
if v >= 0 goto label;
label:
return;
label:
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause EXPIRED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, v);
goto label;
}
void expireAfterWriteEntries(long)
{
long v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v;
byte v;
org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque v;
java.lang.Object v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v != 0 goto label;
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expiresAfterWriteNanos()>();
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque writeOrderDeque()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque: java.lang.Object peekFirst()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: long getWriteTime()>();
v = v - v;
v = v cmp v;
if v < 0 goto label;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause EXPIRED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, v);
goto label;
label:
return;
}
void expireVariableEntries(long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresVariable()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel timerWheel()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel: void advance(long)>(v);
label:
return;
}
boolean hasExpired(org.apache.camel.com.github.benmanes.caffeine.cache.Node, long)
{
long v, v, v, v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
byte v, v, v;
boolean v, v, v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterAccess()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: long getAccessTime()>();
v = v - v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expiresAfterAccessNanos()>();
v = v cmp v;
if v < 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: long getWriteTime()>();
v = v - v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expiresAfterWriteNanos()>();
v = v cmp v;
if v < 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v | v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresVariable()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: long getVariableTime()>();
v = v - v;
v = v cmp 0L;
if v < 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v | v;
return v;
}
boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node, org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause, long)
{
java.lang.Object[] v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[] v;
java.util.function.BiFunction v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
int v;
boolean v, v, v, v, v, v, v, v, v, v;
boolean[] v, v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter v;
org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque v;
java.lang.Object v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKey()>();
v = newarray (java.lang.Object)[1];
v = newarray (boolean)[1];
v = newarray (boolean)[1];
v = newarray (org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)[1];
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKeyReference()>();
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_evictEntry_2__45: java.util.function.BiFunction bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,java.lang.Object[],org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[],java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long,boolean[],boolean[])>(v, v, v, v, v, v, v, v, v);
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object computeIfPresent(java.lang.Object,java.util.function.BiFunction)>(v, v);
v = v[0];
if v == 0 goto label;
return 0;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean inEden()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterAccess()>();
if v == 0 goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderEdenDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean remove(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque$AccessOrder)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean inMainProbation()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProbationDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean remove(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque$AccessOrder)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProtectedDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean remove(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque$AccessOrder)>(v);
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque writeOrderDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque: boolean remove(org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque$WriteOrder)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresVariable()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel timerWheel()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel: void deschedule(org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v);
label:
v = v[0];
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter statsCounter()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getWeight()>();
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter: void recordEviction(int)>(v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
if v == 0 goto label;
v = v[0];
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
goto label;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void makeDead(org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v);
label:
return 1;
}
void afterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node, long, boolean)
{
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.Buffer v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter v;
int v;
boolean v, v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v := @parameter: long;
v := @parameter: boolean;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter statsCounter()>();
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter: void recordHits(int)>(1);
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean skipReadBuffer()>();
if v != 0 goto label;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Buffer readBuffer>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Buffer: int offer(java.lang.Object)>(v);
if v == 1 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean shouldDrainBuffers(boolean)>(v);
if v == 0 goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void scheduleDrainBuffers()>();
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void refreshIfNeeded(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
return;
}
boolean skipReadBuffer()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch v;
boolean v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean fastpath()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch frequencySketch()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch: boolean isNotInitialized()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
void refreshIfNeeded(org.apache.camel.com.github.benmanes.caffeine.cache.Node, long)
{
java.lang.Throwable v;
java.util.concurrent.CompletableFuture v, v, v;
long v, v, v, v, v;
java.util.function.Function v;
org.apache.camel.com.github.benmanes.caffeine.cache.CacheLoader v;
java.util.logging.Level v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
byte v;
java.util.function.BiConsumer v;
boolean v, v, v, v;
java.util.concurrent.Executor v;
java.util.logging.Logger v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
java.lang.Object v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean refreshAfterWrite()>();
if v != 0 goto label;
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: long getWriteTime()>();
v = v + 6917529027641081854L;
v = v - v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long refreshAfterWriteNanos()>();
v = v cmp v;
if v <= 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKey()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean casWriteTime(long,long)>(v, v);
if v == 0 goto label;
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isAsync>;
if v == 0 goto label;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.Async: boolean isReady(java.util.concurrent.CompletableFuture)>(v);
if v == 0 goto label;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_refreshIfNeeded_3__47: java.util.function.Function bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,java.lang.Object)>(v, v);
v = virtualinvoke v.<java.util.concurrent.CompletableFuture: java.util.concurrent.CompletableFuture thenCompose(java.util.function.Function)>(v);
v = v;
goto label;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean casWriteTime(long,long)>(v, v);
label:
return;
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.CacheLoader cacheLoader>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.Executor executor>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.CacheLoader: java.util.concurrent.CompletableFuture asyncReload(java.lang.Object,java.lang.Object,java.util.concurrent.Executor)>(v, v, v);
v = v;
label:
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_refreshIfNeeded_5__46: java.util.function.BiConsumer bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,long,org.apache.camel.com.github.benmanes.caffeine.cache.Node,long,long,java.util.concurrent.CompletableFuture,java.lang.Object,java.lang.Object)>(v, v, v, v, v, v, v, v);
virtualinvoke v.<java.util.concurrent.CompletableFuture: java.util.concurrent.CompletableFuture whenComplete(java.util.function.BiConsumer)>(v);
label:
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean casWriteTime(long,long)>(v, v);
v = <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level SEVERE>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Throwable)>(v, "Exception thrown when submitting refresh task", v);
label:
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
long expireAfterCreate(java.lang.Object, java.lang.Object, org.apache.camel.com.github.benmanes.caffeine.cache.Expiry, long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
long v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.Object v, v;
boolean v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresVariable()>();
if v == 0 goto label;
if v == null goto label;
if v == null goto label;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Expiry: long expireAfterCreate(java.lang.Object,java.lang.Object,long)>(v, v, v);
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isAsync>;
if v == 0 goto label;
v = v + v;
goto label;
label:
v = staticinvoke <java.lang.Math: long min(long,long)>(v, 4611686018427387903L);
v = v + v;
label:
return v;
label:
return 0L;
}
long expireAfterUpdate(org.apache.camel.com.github.benmanes.caffeine.cache.Node, java.lang.Object, java.lang.Object, org.apache.camel.com.github.benmanes.caffeine.cache.Expiry, long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
long v, v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.Object v, v;
boolean v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresVariable()>();
if v == 0 goto label;
if v == null goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: long getVariableTime()>();
v = v - v;
v = staticinvoke <java.lang.Math: long max(long,long)>(1L, v);
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Expiry: long expireAfterUpdate(java.lang.Object,java.lang.Object,long,long)>(v, v, v, v);
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isAsync>;
if v == 0 goto label;
v = v + v;
goto label;
label:
v = staticinvoke <java.lang.Math: long min(long,long)>(v, 4611686018427387903L);
v = v + v;
label:
return v;
label:
return 0L;
}
long expireAfterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node, java.lang.Object, java.lang.Object, org.apache.camel.com.github.benmanes.caffeine.cache.Expiry, long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
long v, v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.Object v, v;
boolean v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresVariable()>();
if v == 0 goto label;
if v == null goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: long getVariableTime()>();
v = v - v;
v = staticinvoke <java.lang.Math: long max(long,long)>(1L, v);
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Expiry: long expireAfterRead(java.lang.Object,java.lang.Object,long,long)>(v, v, v, v);
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isAsync>;
if v == 0 goto label;
v = v + v;
goto label;
label:
v = staticinvoke <java.lang.Math: long min(long,long)>(v, 4611686018427387903L);
v = v + v;
label:
return v;
label:
return 0L;
}
void setVariableTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node, long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long v;
boolean v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresVariable()>();
if v == 0 goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: void setVariableTime(long)>(v);
label:
return;
}
void setWriteTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node, long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long v;
boolean v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean refreshAfterWrite()>();
if v == 0 goto label;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: void setWriteTime(long)>(v);
label:
return;
}
void setAccessTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node, long)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long v;
boolean v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterAccess()>();
if v == 0 goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: void setAccessTime(long)>(v);
label:
return;
}
void afterWrite(java.lang.Runnable)
{
java.lang.RuntimeException v;
java.util.logging.Logger v;
org.apache.camel.com.github.benmanes.caffeine.cache.MpscGrowableArrayQueue v;
java.lang.Runnable v;
java.util.logging.Level v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
int v;
boolean v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Runnable;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean buffersWrites()>();
if v == 0 goto label;
v = 0;
label:
if v >= 100 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.MpscGrowableArrayQueue writeBuffer()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.MpscGrowableArrayQueue: boolean offer(java.lang.Object)>(v);
if v == 0 goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void scheduleAfterWrite()>();
return;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void scheduleDrainBuffers()>();
v = v + 1;
goto label;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void performCleanUp(java.lang.Runnable)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level SEVERE>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Throwable)>(v, "Exception thrown when performing the maintenance task", v);
goto label;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void scheduleAfterWrite()>();
label:
return;
catch java.lang.RuntimeException from label to label with label;
}
void scheduleAfterWrite()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.IllegalStateException v;
int v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int drainStatus()>();
tableswitch(v)
{
case 0: goto label;
case 1: goto label;
case 2: goto label;
case 3: goto label;
default: goto label;
};
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean casDrainStatus(int,int)>(0, 1);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void scheduleDrainBuffers()>();
return;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void scheduleDrainBuffers()>();
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean casDrainStatus(int,int)>(2, 3);
if v == 0 goto label;
return;
label:
return;
label:
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>()>();
throw v;
}
void scheduleDrainBuffers()
{
java.lang.Throwable v, v;
java.util.concurrent.locks.ReentrantLock v, v, v, v, v;
java.util.concurrent.Executor v;
java.util.logging.Logger v;
java.util.logging.Level v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$PerformCleanupTask v;
int v, v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int drainStatus()>();
if v < 2 goto label;
return;
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
v = virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: boolean tryLock()>();
if v == 0 goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int drainStatus()>();
if v < 2 goto label;
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
return;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetDrainStatus(int)>(2);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.Executor executor()>();
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$PerformCleanupTask drainBuffersTask>;
interfaceinvoke v.<java.util.concurrent.Executor: void execute(java.lang.Runnable)>(v);
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
goto label;
label:
v := @caughtexception;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level WARNING>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Throwable)>(v, "Exception thrown when submitting maintenance task", v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void maintenance(java.lang.Runnable)>(null);
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
goto label;
label:
v := @caughtexception;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public void cleanUp()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.RuntimeException v;
java.util.logging.Logger v;
java.util.logging.Level v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void performCleanUp(java.lang.Runnable)>(null);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level SEVERE>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Throwable)>(v, "Exception thrown when performing the maintenance task", v);
label:
return;
catch java.lang.RuntimeException from label to label with label;
}
void performCleanUp(java.lang.Runnable)
{
java.lang.Throwable v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.util.concurrent.locks.ReentrantLock v, v, v;
java.lang.Runnable v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Runnable;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void lock()>();
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void maintenance(java.lang.Runnable)>(v);
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
goto label;
label:
v := @caughtexception;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
void maintenance(java.lang.Runnable)
{
java.lang.Throwable v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
int v, v;
java.lang.Runnable v;
boolean v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Runnable;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetDrainStatus(int)>(2);
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void drainReadBuffer()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void drainWriteBuffer()>();
if v == null goto label;
interfaceinvoke v.<java.lang.Runnable: void run()>();
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void drainKeyReferences()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void drainValueReferences()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void expireEntries()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void evictEntries()>();
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int drainStatus()>();
if v != 2 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean casDrainStatus(int,int)>(2, 0);
if v != 0 goto label;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetDrainStatus(int)>(1);
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int drainStatus()>();
if v != 2 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean casDrainStatus(int,int)>(2, 0);
if v != 0 goto label;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetDrainStatus(int)>(1);
label:
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
void drainKeyReferences()
{
java.lang.ref.Reference v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v;
java.util.concurrent.ConcurrentHashMap v;
java.lang.Object v;
java.lang.ref.ReferenceQueue v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean collectKeys()>();
if v != 0 goto label;
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.ref.ReferenceQueue keyReferenceQueue()>();
v = virtualinvoke v.<java.lang.ref.ReferenceQueue: java.lang.ref.Reference poll()>();
if v == null goto label;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause COLLECTED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, 0L);
goto label;
label:
return;
}
void drainValueReferences()
{
java.util.concurrent.ConcurrentHashMap v;
java.lang.ref.ReferenceQueue v;
java.lang.ref.Reference v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v;
java.lang.Object v, v, v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean collectValues()>();
if v != 0 goto label;
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.ref.ReferenceQueue valueReferenceQueue()>();
v = virtualinvoke v.<java.lang.ref.ReferenceQueue: java.lang.ref.Reference poll()>();
if v == null goto label;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.References$InternalReference: java.lang.Object getKeyReference()>();
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValueReference()>();
if v != v goto label;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause COLLECTED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evictEntry(org.apache.camel.com.github.benmanes.caffeine.cache.Node,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause,long)>(v, v, 0L);
goto label;
label:
return;
}
void drainReadBuffer()
{
java.util.function.Consumer v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.Buffer v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean skipReadBuffer()>();
if v != 0 goto label;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Buffer readBuffer>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.function.Consumer accessPolicy>;
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Buffer: void drainTo(java.util.function.Consumer)>(v);
label:
return;
}
void onAccess(org.apache.camel.com.github.benmanes.caffeine.cache.Node)
{
org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch v;
java.lang.Object v;
boolean v, v, v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKey()>();
if v != null goto label;
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch frequencySketch()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.FrequencySketch: void increment(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean inEden()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderEdenDeque()>();
staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void reorder(org.apache.camel.com.github.benmanes.caffeine.cache.LinkedDeque,org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean inMainProbation()>();
if v == 0 goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void reorderProbation(org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProtectedDeque()>();
staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void reorder(org.apache.camel.com.github.benmanes.caffeine.cache.LinkedDeque,org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterAccess()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderEdenDeque()>();
staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void reorder(org.apache.camel.com.github.benmanes.caffeine.cache.LinkedDeque,org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v, v);
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresVariable()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel timerWheel()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel: void reschedule(org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v);
label:
return;
}
void reorderProbation(org.apache.camel.com.github.benmanes.caffeine.cache.Node)
{
long v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
byte v, v;
int v, v, v;
boolean v;
org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
java.lang.Object v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProbationDeque()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean contains(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque$AccessOrder)>(v);
if v != 0 goto label;
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getPolicyWeight()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long mainProtectedMaximum()>();
v = v cmp v;
if v <= 0 goto label;
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long mainProtectedWeightedSize()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getPolicyWeight()>();
v = v + v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProbationDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean remove(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque$AccessOrder)>(v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProtectedDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean add(java.lang.Object)>(v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: void makeMainProtected()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long mainProtectedMaximum()>();
label:
v = v cmp v;
if v <= 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProtectedDeque()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: java.lang.Object pollFirst()>();
if v == null goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: void makeMainProbation()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProbationDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getPolicyWeight()>();
v = v - v;
goto label;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetMainProtectedWeightedSize(long)>(v);
return;
}
static void reorder(org.apache.camel.com.github.benmanes.caffeine.cache.LinkedDeque, org.apache.camel.com.github.benmanes.caffeine.cache.Node)
{
org.apache.camel.com.github.benmanes.caffeine.cache.LinkedDeque v;
boolean v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.LinkedDeque;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.LinkedDeque: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.LinkedDeque: void moveToBack(java.lang.Object)>(v);
label:
return;
}
void drainWriteBuffer()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
int v, v;
java.lang.Object v;
org.apache.camel.com.github.benmanes.caffeine.cache.MpscGrowableArrayQueue v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean buffersWrites()>();
if v != 0 goto label;
return;
label:
v = 0;
label:
v = <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int WRITE_BUFFER_MAX>;
if v >= v goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.MpscGrowableArrayQueue writeBuffer()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.MpscGrowableArrayQueue: java.lang.Object poll()>();
if v == null goto label;
interfaceinvoke v.<java.lang.Runnable: void run()>();
v = v + 1;
goto label;
label:
return;
}
void makeDead(org.apache.camel.com.github.benmanes.caffeine.cache.Node)
{
java.lang.Throwable v;
long v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
int v, v, v;
boolean v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
entermonitor v;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean isDead()>();
if v == 0 goto label;
exitmonitor v;
label:
return;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean inEden()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long edenWeightedSize()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getWeight()>();
v = v - v;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetEdenWeightedSize(long)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean inMainProtected()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long mainProtectedWeightedSize()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getWeight()>();
v = v - v;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetMainProtectedWeightedSize(long)>(v);
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long weightedSize()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getWeight()>();
v = v - v;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void lazySetWeightedSize(long)>(v);
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: void die()>();
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public boolean isEmpty()
{
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: boolean isEmpty()>();
return v;
}
public int size()
{
int v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: int size()>();
return v;
}
public long estimatedSize()
{
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: long mappingCount()>();
return v;
}
public void clear()
{
java.lang.Throwable v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.MpscGrowableArrayQueue v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
boolean v, v;
java.util.Iterator v;
java.util.concurrent.locks.ReentrantLock v, v, v;
java.util.Collection v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.Buffer v;
java.util.function.Consumer v;
java.lang.Object v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void lock()>();
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean buffersWrites()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.MpscGrowableArrayQueue writeBuffer()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.MpscGrowableArrayQueue: java.lang.Object poll()>();
if v == null goto label;
interfaceinvoke v.<java.lang.Runnable: void run()>();
goto label;
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void removeNode(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
goto label;
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Buffer readBuffer>;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_clear_6__48: java.util.function.Consumer bootstrap$()>();
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Buffer: void drainTo(java.util.function.Consumer)>(v);
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
goto label;
label:
v := @caughtexception;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
void removeNode(org.apache.camel.com.github.benmanes.caffeine.cache.Node, long)
{
java.lang.Object[] v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[] v;
java.util.function.BiFunction v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
boolean v, v, v, v, v, v, v, v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque v;
java.lang.Object v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Node;
v := @parameter: long;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKey()>();
v = newarray (java.lang.Object)[1];
v = newarray (org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)[1];
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKeyReference()>();
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_removeNode_7__49: java.util.function.BiFunction bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,java.lang.Object[],java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[],long)>(v, v, v, v, v, v);
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object computeIfPresent(java.lang.Object,java.util.function.BiFunction)>(v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean inEden()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterAccess()>();
if v == 0 goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderEdenDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean remove(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque$AccessOrder)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean inMainProbation()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProbationDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean remove(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque$AccessOrder)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque accessOrderProtectedDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque: boolean remove(org.apache.camel.com.github.benmanes.caffeine.cache.AccessOrderDeque$AccessOrder)>(v);
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque writeOrderDeque()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque: boolean remove(org.apache.camel.com.github.benmanes.caffeine.cache.WriteOrderDeque$WriteOrder)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresVariable()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel timerWheel()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel: void deschedule(org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v);
label:
v = v[0];
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
if v == 0 goto label;
v = v[0];
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
label:
return;
}
public boolean containsKey(java.lang.Object)
{
java.util.concurrent.ConcurrentHashMap v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.Object v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
boolean v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasExpired(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean containsValue(java.lang.Object)
{
java.util.Iterator v;
java.util.Collection v;
java.util.concurrent.ConcurrentHashMap v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.Object v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
boolean v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean containsValue(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasExpired(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKey()>();
if v == null goto label;
return 1;
label:
return 0;
}
public java.lang.Object get(java.lang.Object)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.Object v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object getIfPresent(java.lang.Object,boolean)>(v, 0);
return v;
}
public java.lang.Object getIfPresent(java.lang.Object, boolean)
{
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
long v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
boolean v, v, v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter v, v;
java.lang.Object v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: boolean;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter statsCounter()>();
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter: void recordMisses(int)>(1);
label:
return null;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasExpired(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
if v == 0 goto label;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter statsCounter()>();
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter: void recordMisses(int)>(1);
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void scheduleDrainBuffers()>();
return null;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isComputingAsync(org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expireAfterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,long)>(v, v, v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setVariableTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setAccessTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long,boolean)>(v, v, v);
return v;
}
public java.lang.Object getIfPresentQuietly(java.lang.Object, long[])
{
java.util.concurrent.ConcurrentHashMap v;
long v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long[] v;
java.lang.Object v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: long[];
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasExpired(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
if v == 0 goto label;
label:
return null;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: long getWriteTime()>();
v[0] = v;
return v;
}
public java.util.Map getAllPresent(java.lang.Iterable)
{
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
long v, v;
java.lang.Iterable v;
java.util.LinkedHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.util.Map v;
int v, v, v;
java.util.LinkedHashSet v;
boolean v, v, v, v;
java.util.Iterator v, v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter v, v;
java.lang.Object v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Iterable;
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
v = interfaceinvoke v.<java.lang.Iterable: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
goto label;
label:
v = 0;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v = new java.util.LinkedHashMap;
v = interfaceinvoke v.<java.util.Set: int size()>();
specialinvoke v.<java.util.LinkedHashMap: void <init>(int)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasExpired(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
if v == 0 goto label;
label:
v = v + 1;
goto label;
label:
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isComputingAsync(org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expireAfterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,long)>(v, v, v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setVariableTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setAccessTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long,boolean)>(v, v, 0);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter statsCounter()>();
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter: void recordMisses(int)>(v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter statsCounter()>();
v = interfaceinvoke v.<java.util.Map: int size()>();
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter: void recordHits(int)>(v);
v = staticinvoke <java.util.Collections: java.util.Map unmodifiableMap(java.util.Map)>(v);
return v;
}
public java.lang.Object put(java.lang.Object, java.lang.Object)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
java.lang.Object v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object put(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,boolean,boolean)>(v, v, v, 1, 0);
return v;
}
public java.lang.Object put(java.lang.Object, java.lang.Object, boolean)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
java.lang.Object v, v, v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: boolean;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object put(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,boolean,boolean)>(v, v, v, v, 0);
return v;
}
public java.lang.Object putIfAbsent(java.lang.Object, java.lang.Object)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
java.lang.Object v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object put(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,boolean,boolean)>(v, v, v, 1, 1);
return v;
}
java.lang.Object put(java.lang.Object, java.lang.Object, org.apache.camel.com.github.benmanes.caffeine.cache.Expiry, boolean, boolean)
{
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
org.apache.camel.com.github.benmanes.caffeine.cache.Weigher v;
byte v;
boolean v, v, v, v, v, v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask v, v;
java.util.concurrent.ConcurrentHashMap v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v, v, v, v, v;
java.lang.Throwable v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask v, v;
long v, v, v, v, v, v;
java.util.function.Function v;
java.lang.ref.ReferenceQueue v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
int v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter v, v, v;
java.lang.Object v, v, v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry;
v := @parameter: boolean;
v := @parameter: boolean;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = null;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Weigher weigher>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Weigher: int weigh(java.lang.Object,java.lang.Object)>(v, v);
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
if v != null goto label;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.ref.ReferenceQueue keyReferenceQueue()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.ref.ReferenceQueue valueReferenceQueue()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: org.apache.camel.com.github.benmanes.caffeine.cache.Node newNode(java.lang.Object,java.lang.ref.ReferenceQueue,java.lang.Object,java.lang.ref.ReferenceQueue,int,long)>(v, v, v, v, v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expireAfterCreate(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,long)>(v, v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setVariableTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
label:
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasWriter()>();
if v == 0 goto label;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKeyReference()>();
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_put_8__50: java.util.function.Function bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v, v, v, v);
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
if v != v goto label;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,int)>(v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
return null;
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKeyReference()>();
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object putIfAbsent(java.lang.Object,java.lang.Object)>(v, v);
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,int)>(v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
return null;
label:
v = 0;
v = 1;
v = 1;
entermonitor v;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean isAlive()>();
if v != 0 goto label;
exitmonitor v;
label:
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: int getWeight()>();
if v != null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expireAfterCreate(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,long)>(v, v, v, v);
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter writer>;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause COLLECTED>;
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter: void delete(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, null, v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasExpired(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
if v == 0 goto label;
v = 1;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expireAfterCreate(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,long)>(v, v, v, v);
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter writer>;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause EXPIRED>;
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter: void delete(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
goto label;
label:
if v == 0 goto label;
v = 0;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expireAfterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,long)>(v, v, v, v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expireAfterUpdate(org.apache.camel.com.github.benmanes.caffeine.cache.Node,java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,long)>(v, v, v, v, v);
label:
if v == 0 goto label;
if v != 0 goto label;
if v == 0 goto label;
if v == v goto label;
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter writer>;
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter: void write(java.lang.Object,java.lang.Object)>(v, v);
label:
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: long getWriteTime()>();
v = v - v;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long EXPIRE_WRITE_TOLERANCE>;
v = v cmp v;
if v <= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setWriteTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: void setWeight(int)>(v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.ref.ReferenceQueue valueReferenceQueue()>();
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: void setValue(java.lang.Object,java.lang.ref.ReferenceQueue)>(v, v);
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setVariableTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setAccessTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
if v == 0 goto label;
if v == 0 goto label;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause EXPIRED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
goto label;
label:
if v != null goto label;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause COLLECTED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, null, v);
goto label;
label:
if v == 0 goto label;
if v == v goto label;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause REPLACED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
label:
if v == 0 goto label;
v = v - v;
goto label;
label:
v = 0;
label:
v = v;
if v == null goto label;
if v != 0 goto label;
if v == 0 goto label;
label:
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,int)>(v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
goto label;
label:
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v == 0 goto label;
if v == 0 goto label;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,int)>(v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
goto label;
label:
if v == 0 goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setWriteTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long,boolean)>(v, v, 0);
label:
if v == 0 goto label;
v = null;
goto label;
label:
v = v;
label:
return v;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public java.lang.Object remove(java.lang.Object)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.lang.Object v, v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasWriter()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object removeWithWriter(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object removeNoWriter(java.lang.Object)>(v);
label:
return v;
}
java.lang.Object removeNoWriter(java.lang.Object)
{
java.lang.Throwable v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
boolean v, v, v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v, v;
java.lang.Object v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object remove(java.lang.Object)>(v);
if v != null goto label;
return null;
label:
entermonitor v;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean isAlive()>();
if v == 0 goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: void retire()>();
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
if v != null goto label;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause COLLECTED>;
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasExpired(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
if v == 0 goto label;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause EXPIRED>;
goto label;
label:
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause EXPLICIT>;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
if v == 0 goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
label:
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause EXPLICIT>;
if v != v goto label;
v = v;
goto label;
label:
v = null;
label:
return v;
catch java.lang.Throwable from label to label with label;
}
java.lang.Object removeWithWriter(java.lang.Object)
{
java.lang.Object[] v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[] v;
java.util.function.BiFunction v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node[] v;
boolean v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v, v, v, v;
java.lang.Object v, v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v = newarray (org.apache.camel.com.github.benmanes.caffeine.cache.Node)[1];
v = newarray (java.lang.Object)[1];
v = newarray (org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)[1];
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_removeWithWriter_9__51: java.util.function.BiFunction bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,java.lang.Object[],org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[],java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Node[])>(v, v, v, v, v);
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object computeIfPresent(java.lang.Object,java.util.function.BiFunction)>(v, v);
v = v[0];
if v == null goto label;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask;
v = v[0];
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
if v == 0 goto label;
v = v[0];
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
label:
v = v[0];
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause EXPLICIT>;
if v != v goto label;
v = v[0];
goto label;
label:
v = null;
label:
return v;
}
public boolean remove(java.lang.Object, java.lang.Object)
{
java.lang.Object[] v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[] v;
java.util.function.BiFunction v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node[] v;
boolean v, v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v, v, v;
java.lang.Object v, v, v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
if v != null goto label;
return 0;
label:
v = newarray (org.apache.camel.com.github.benmanes.caffeine.cache.Node)[1];
v = newarray (java.lang.Object)[1];
v = newarray (java.lang.Object)[1];
v = newarray (org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)[1];
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_remove_10__52: java.util.function.BiFunction bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,java.lang.Object[],java.lang.Object[],org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[],java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Node[])>(v, v, v, v, v, v);
virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object computeIfPresent(java.lang.Object,java.util.function.BiFunction)>(v, v);
v = v[0];
if v != null goto label;
return 0;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
if v == 0 goto label;
v = v[0];
v = v[0];
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
label:
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask;
v = v[0];
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
v = v[0];
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause EXPLICIT>;
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public java.lang.Object replace(java.lang.Object, java.lang.Object)
{
java.lang.Object[] v, v;
java.util.function.BiFunction v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.Weigher v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long[] v;
int[] v;
int v, v, v;
boolean v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v;
java.lang.Object v, v, v, v, v, v, v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = newarray (int)[1];
v = newarray (java.lang.Object)[1];
v = newarray (java.lang.Object)[1];
v = newarray (long)[1];
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Weigher weigher>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Weigher: int weigh(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_replace_11__53: java.util.function.BiFunction bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,java.lang.Object[],java.lang.Object[],int[],long[],java.lang.Object,java.lang.Object,int)>(v, v, v, v, v, v, v, v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object computeIfPresent(java.lang.Object,java.util.function.BiFunction)>(v, v);
v = v[0];
if v != null goto label;
return null;
label:
v = v[0];
v = v - v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v != 0 goto label;
if v == 0 goto label;
label:
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,int)>(v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
goto label;
label:
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long,boolean)>(v, v, 0);
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
if v == 0 goto label;
v = v[0];
if v == v goto label;
v = v[0];
v = v[0];
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause REPLACED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
label:
v = v[0];
return v;
}
public boolean replace(java.lang.Object, java.lang.Object, java.lang.Object)
{
java.lang.Object[] v, v;
java.util.function.BiFunction v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.Weigher v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long[] v;
int[] v;
int v, v, v;
boolean v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask v;
boolean[] v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v;
java.lang.Object v, v, v, v, v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Weigher weigher>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Weigher: int weigh(java.lang.Object,java.lang.Object)>(v, v);
v = newarray (boolean)[1];
v = newarray (java.lang.Object)[1];
v = newarray (java.lang.Object)[1];
v = newarray (int)[1];
v = newarray (long)[1];
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_replace_12__54: java.util.function.BiFunction bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,java.lang.Object[],java.lang.Object[],int[],java.lang.Object,long[],java.lang.Object,java.lang.Object,int,boolean[])>(v, v, v, v, v, v, v, v, v, v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object computeIfPresent(java.lang.Object,java.util.function.BiFunction)>(v, v);
v = v[0];
if v != 0 goto label;
return 0;
label:
v = v[0];
v = v - v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v != 0 goto label;
if v == 0 goto label;
label:
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,int)>(v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
goto label;
label:
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long,boolean)>(v, v, 0);
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
if v == 0 goto label;
if v == v goto label;
v = v[0];
v = v[0];
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause REPLACED>;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
label:
return 1;
}
public void replaceAll(java.util.function.BiFunction)
{
java.util.Iterator v;
java.util.function.BiFunction v, v;
java.util.Set v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long[] v;
java.lang.Object v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.util.function.BiFunction;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_replaceAll_13__55: java.util.function.BiFunction bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,java.util.function.BiFunction)>(v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Set keySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = newarray (long)[1];
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v[0] = v;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object remap(java.lang.Object,java.lang.Object,java.util.function.BiFunction,long[],boolean)>(v, v, v, v, 0);
goto label;
label:
return;
}
public java.lang.Object computeIfAbsent(java.lang.Object, java.util.function.Function, boolean, boolean)
{
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
long v, v;
java.util.function.Function v;
java.lang.ref.ReferenceQueue v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long[] v;
boolean v, v, v, v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v, v;
java.lang.Object v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.util.function.Function;
v := @parameter: boolean;
v := @parameter: boolean;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasExpired(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isComputingAsync(org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expireAfterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,long)>(v, v, v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setVariableTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setAccessTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long,boolean)>(v, v, 1);
return v;
label:
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.function.Function statsAware(java.util.function.Function,boolean)>(v, v);
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.ref.ReferenceQueue keyReferenceQueue()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newReferenceKey(java.lang.Object,java.lang.ref.ReferenceQueue)>(v, v);
v = newarray (long)[1];
v[0] = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object doComputeIfAbsent(java.lang.Object,java.lang.Object,java.util.function.Function,long[])>(v, v, v, v);
return v;
}
java.lang.Object doComputeIfAbsent(java.lang.Object, java.lang.Object, java.util.function.Function, long[])
{
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[] v;
java.util.function.BiFunction v;
int[] v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node[] v;
boolean v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter v;
java.lang.Object[] v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask v;
long v, v, v, v;
java.util.function.Function v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long[] v;
int v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask v;
java.lang.Object v, v, v, v, v, v, v, v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: java.util.function.Function;
v := @parameter: long[];
v = newarray (java.lang.Object)[1];
v = newarray (java.lang.Object)[1];
v = newarray (java.lang.Object)[1];
v = newarray (org.apache.camel.com.github.benmanes.caffeine.cache.Node)[1];
v = newarray (int)[2];
v = newarray (org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)[1];
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_doComputeIfAbsent_14__56: java.util.function.BiFunction bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,java.lang.Object[],java.util.function.Function,java.lang.Object,long[],int[],java.lang.Object[],java.lang.Object[],org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[],org.apache.camel.com.github.benmanes.caffeine.cache.Node[])>(v, v, v, v, v, v, v, v, v, v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object compute(java.lang.Object,java.util.function.BiFunction)>(v, v);
if v != null goto label;
v = v[0];
if v == null goto label;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask;
v = v[0];
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
label:
return null;
label:
v = v[0];
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
if v == 0 goto label;
v = v[0];
v = v[0];
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter statsCounter()>();
v = v[0];
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter: void recordEviction(int)>(v);
label:
v = v[0];
if v != null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isComputingAsync(org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v);
if v != 0 goto label;
v = v[0];
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry()>();
v = v[0];
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expireAfterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,long)>(v, v, v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setVariableTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setAccessTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
label:
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long,boolean)>(v, v, 1);
v = v[0];
return v;
label:
v = v[0];
if v != null goto label;
v = v[0];
if v != null goto label;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask;
v = v[1];
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,int)>(v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
goto label;
label:
v = v[1];
v = v[0];
v = v - v;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,int)>(v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
label:
v = v[0];
return v;
}
public java.lang.Object computeIfPresent(java.lang.Object, java.util.function.BiFunction)
{
java.util.function.BiFunction v, v;
java.util.concurrent.ConcurrentHashMap v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long[] v;
java.lang.Object v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.util.function.BiFunction;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newLookupKey(java.lang.Object)>(v);
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
return null;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasExpired(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
if v == 0 goto label;
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void scheduleDrainBuffers()>();
return null;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.function.BiFunction statsAware(java.util.function.BiFunction,boolean,boolean)>(v, 0, 1);
v = newarray (long)[1];
v[0] = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object remap(java.lang.Object,java.lang.Object,java.util.function.BiFunction,long[],boolean)>(v, v, v, v, 0);
return v;
}
public java.lang.Object compute(java.lang.Object, java.util.function.BiFunction, boolean, boolean)
{
java.util.function.BiFunction v, v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
java.lang.ref.ReferenceQueue v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long[] v;
java.lang.Object v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
boolean v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.util.function.BiFunction;
v := @parameter: boolean;
v := @parameter: boolean;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = newarray (long)[1];
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v[0] = v;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.ref.ReferenceQueue keyReferenceQueue()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newReferenceKey(java.lang.Object,java.lang.ref.ReferenceQueue)>(v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.function.BiFunction statsAware(java.util.function.BiFunction,boolean,boolean)>(v, v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object remap(java.lang.Object,java.lang.Object,java.util.function.BiFunction,long[],boolean)>(v, v, v, v, 1);
return v;
}
public java.lang.Object merge(java.lang.Object, java.lang.Object, java.util.function.BiFunction)
{
java.util.function.BiFunction v, v;
long v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v;
java.lang.ref.ReferenceQueue v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long[] v;
java.lang.Object v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: java.util.function.BiFunction;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = newarray (long)[1];
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Ticker: long read()>();
v[0] = v;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.ref.ReferenceQueue keyReferenceQueue()>();
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: java.lang.Object newReferenceKey(java.lang.Object,java.lang.ref.ReferenceQueue)>(v, v);
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_merge_15__57: java.util.function.BiFunction bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,java.lang.Object,java.util.function.BiFunction)>(v, v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.lang.Object remap(java.lang.Object,java.lang.Object,java.util.function.BiFunction,long[],boolean)>(v, v, v, v, 1);
return v;
}
java.lang.Object remap(java.lang.Object, java.lang.Object, java.util.function.BiFunction, long[], boolean)
{
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[] v;
java.util.function.BiFunction v, v;
int[] v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node[] v;
boolean v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.Node v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause v, v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter v;
java.lang.Object[] v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask v;
long v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
long[] v;
int v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask v;
java.lang.Object v, v, v, v, v, v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: java.util.function.BiFunction;
v := @parameter: long[];
v := @parameter: boolean;
v = newarray (java.lang.Object)[1];
v = newarray (java.lang.Object)[1];
v = newarray (java.lang.Object)[1];
v = newarray (org.apache.camel.com.github.benmanes.caffeine.cache.Node)[1];
v = newarray (int)[2];
v = newarray (org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)[1];
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.ConcurrentHashMap data>;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_remap_16__58: java.util.function.BiFunction bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,boolean,java.lang.Object[],java.util.function.BiFunction,java.lang.Object,long[],int[],java.lang.Object,java.lang.Object[],java.lang.Object[],org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause[],org.apache.camel.com.github.benmanes.caffeine.cache.Node[])>(v, v, v, v, v, v, v, v, v, v, v, v);
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object compute(java.lang.Object,java.util.function.BiFunction)>(v, v);
v = v[0];
if v == null goto label;
v = v[0];
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: boolean wasEvicted()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter statsCounter()>();
v = v[0];
interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.stats.StatsCounter: void recordEviction(int)>(v);
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean hasRemovalListener()>();
if v == 0 goto label;
v = v[0];
v = v[0];
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void notifyRemoval(java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause)>(v, v, v);
label:
v = v[0];
if v == null goto label;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask;
v = v[0];
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$RemovalTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
goto label;
label:
if v == null goto label;
v = v[0];
if v != null goto label;
v = v[0];
if v != null goto label;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask;
v = v[1];
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$AddTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,int)>(v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
goto label;
label:
v = v[1];
v = v[0];
v = v - v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v != 0 goto label;
if v == 0 goto label;
label:
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$UpdateTask: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,org.apache.camel.com.github.benmanes.caffeine.cache.Node,int)>(v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterWrite(java.lang.Runnable)>(v);
goto label;
label:
v = v[0];
if v != null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isComputingAsync(org.apache.camel.com.github.benmanes.caffeine.cache.Node)>(v);
if v != 0 goto label;
v = v[0];
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry()>();
v = v[0];
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expireAfterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,java.lang.Object,java.lang.Object,org.apache.camel.com.github.benmanes.caffeine.cache.Expiry,long)>(v, v, v, v, v);
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setVariableTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void setAccessTime(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long)>(v, v);
goto label;
label:
v = v[0];
v = <org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalCause COLLECTED>;
if v != v goto label;
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void scheduleDrainBuffers()>();
label:
v = v[0];
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void afterRead(org.apache.camel.com.github.benmanes.caffeine.cache.Node,long,boolean)>(v, v, 0);
label:
v = v[0];
return v;
}
public java.util.Set keySet()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.util.Set v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$KeySetView v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Set keySet>;
if v != null goto label;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$KeySetView;
v = v;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$KeySetView: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache)>(v);
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Set keySet> = v;
goto label;
label:
v = v;
label:
return v;
}
public java.util.Collection values()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$ValuesView v;
java.util.Collection v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Collection values>;
if v != null goto label;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$ValuesView;
v = v;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$ValuesView: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache)>(v);
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Collection values> = v;
goto label;
label:
v = v;
label:
return v;
}
public java.util.Set entrySet()
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.util.Set v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$EntrySetView v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Set entrySet>;
if v != null goto label;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$EntrySetView;
v = v;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$EntrySetView: void <init>(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache)>(v);
v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Set entrySet> = v;
goto label;
label:
v = v;
label:
return v;
}
java.util.Map evictionOrder(int, java.util.function.Function, boolean)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.util.Map v;
int v;
java.util.function.Function v;
java.util.function.Supplier v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: int;
v := @parameter: java.util.function.Function;
v := @parameter: boolean;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_evictionOrder_18__59: java.util.function.Supplier bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,boolean)>(v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Map fixedSnapshot(java.util.function.Supplier,int,java.util.function.Function)>(v, v, v);
return v;
}
java.util.Map expireAfterAcessOrder(int, java.util.function.Function, boolean)
{
java.util.function.Function v;
java.util.function.Supplier v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.util.Map v, v;
int v;
boolean v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: int;
v := @parameter: java.util.function.Function;
v := @parameter: boolean;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v != 0 goto label;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_expireAfterAcessOrder_19__61: java.util.function.Supplier bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,boolean)>(v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Map fixedSnapshot(java.util.function.Supplier,int,java.util.function.Function)>(v, v, v);
return v;
label:
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_expireAfterAcessOrder_20__60: java.util.function.Supplier bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,boolean)>(v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Map fixedSnapshot(java.util.function.Supplier,int,java.util.function.Function)>(v, v, v);
return v;
}
java.util.Map expireAfterWriteOrder(int, java.util.function.Function, boolean)
{
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.util.Map v;
int v;
java.util.function.Function v;
java.util.function.Supplier v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: int;
v := @parameter: java.util.function.Function;
v := @parameter: boolean;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache$lambda_expireAfterWriteOrder_21__62: java.util.function.Supplier bootstrap$(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache,boolean)>(v, v);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.Map fixedSnapshot(java.util.function.Supplier,int,java.util.function.Function)>(v, v, v);
return v;
}
java.util.Map fixedSnapshot(java.util.function.Supplier, int, java.util.function.Function)
{
java.lang.Throwable v;
java.util.function.Function v;
java.util.function.Supplier v;
java.util.LinkedHashMap v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.util.Map v;
int v, v, v, v;
boolean v, v, v;
java.util.concurrent.locks.ReentrantLock v, v, v;
java.lang.Object v, v, v, v, v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: java.util.function.Supplier;
v := @parameter: int;
v := @parameter: java.util.function.Function;
if v < 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.Caffeine: void requireArgument(boolean)>(v);
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void lock()>();
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void maintenance(java.lang.Runnable)>(null);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int size()>();
v = staticinvoke <java.lang.Math: int min(int,int)>(v, v);
v = interfaceinvoke v.<java.util.function.Supplier: java.lang.Object get()>();
v = new java.util.LinkedHashMap;
specialinvoke v.<java.util.LinkedHashMap: void <init>(int)>(v);
label:
v = interfaceinvoke v.<java.util.Map: int size()>();
if v >= v goto label;
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getKey()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: java.lang.Object getValue()>();
v = interfaceinvoke v.<java.util.function.Function: java.lang.Object apply(java.lang.Object)>(v);
if v == null goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.Node: boolean isAlive()>();
if v == 0 goto label;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = staticinvoke <java.util.Collections: java.util.Map unmodifiableMap(java.util.Map)>(v);
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
return v;
label:
v := @caughtexception;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
throw v;
catch java.lang.Throwable from label to label with label;
}
java.util.Map variableSnapshot(boolean, int, java.util.function.Function)
{
java.lang.Throwable v;
java.util.concurrent.locks.ReentrantLock v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel v;
java.util.function.Function v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
java.util.Map v;
int v;
boolean v;
v := @this: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: boolean;
v := @parameter: int;
v := @parameter: java.util.function.Function;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void lock()>();
label:
virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: void maintenance(java.lang.Runnable)>(null);
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel timerWheel()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.TimerWheel: java.util.Map snapshot(boolean,int,java.util.function.Function)>(v, v, v);
label:
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
return v;
label:
v := @caughtexception;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.concurrent.locks.ReentrantLock evictionLock>;
virtualinvoke v.<java.util.concurrent.locks.ReentrantLock: void unlock()>();
throw v;
catch java.lang.Throwable from label to label with label;
}
static org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy makeSerializationProxy(org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache, boolean)
{
org.apache.camel.com.github.benmanes.caffeine.cache.Expiry v;
org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy v;
long v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.Weigher v;
org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache v;
boolean v, v, v, v, v, v, v, v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.RemovalListener v;
org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory v, v;
org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter v;
org.apache.camel.com.github.benmanes.caffeine.cache.Ticker v;
v := @parameter: org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache;
v := @parameter: boolean;
v = new org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy;
specialinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: void <init>()>();
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean collectKeys()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: boolean weakKeys> = v;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: boolean weakValues()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: boolean weakValues> = v;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory nodeFactory>;
v = interfaceinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.NodeFactory: boolean softValues()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: boolean softValues> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean isRecordingStats()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: boolean isRecordingStats> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalListener removalListener()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: org.apache.camel.com.github.benmanes.caffeine.cache.RemovalListener removalListener> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker expirationTicker()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: org.apache.camel.com.github.benmanes.caffeine.cache.Ticker ticker> = v;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter writer>;
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: org.apache.camel.com.github.benmanes.caffeine.cache.CacheWriter writer> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterAccess()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expiresAfterAccessNanos()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: long expiresAfterAccessNanos> = v;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresAfterWrite()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long expiresAfterWriteNanos()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: long expiresAfterWriteNanos> = v;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean expiresVariable()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: org.apache.camel.com.github.benmanes.caffeine.cache.Expiry expiry> = v;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: boolean evicts()>();
if v == 0 goto label;
if v == 0 goto label;
v = v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: org.apache.camel.com.github.benmanes.caffeine.cache.Weigher weigher>;
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: org.apache.camel.com.github.benmanes.caffeine.cache.Weigher weigher> = v;
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long maximum()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: long maximumWeight> = v;
goto label;
label:
v = virtualinvoke v.<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long maximum()>();
v.<org.apache.camel.com.github.benmanes.caffeine.cache.SerializationProxy: long maximumSize> = v;
label:
return v;
}
static void <clinit>()
{
java.lang.Runtime v;
long v;
java.util.logging.Logger v;
java.util.concurrent.TimeUnit v;
int v, v, v, v;
java.lang.Class v;
java.lang.String v;
v = class "Lorg/apache/camel/com/github/benmanes/caffeine/cache/BoundedLocalCache;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = staticinvoke <java.util.logging.Logger: java.util.logging.Logger getLogger(java.lang.String)>(v);
<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: java.util.logging.Logger logger> = v;
v = staticinvoke <java.lang.Runtime: java.lang.Runtime getRuntime()>();
v = virtualinvoke v.<java.lang.Runtime: int availableProcessors()>();
<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int NCPU> = v;
v = <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int NCPU>;
v = staticinvoke <org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int ceilingPowerOfTwo(int)>(v);
v = 128 * v;
<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: int WRITE_BUFFER_MAX> = v;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long toNanos(long)>(1L);
<org.apache.camel.com.github.benmanes.caffeine.cache.BoundedLocalCache: long EXPIRE_WRITE_TOLERANCE> = v;
return;
}
}