final class io.netty.util.Recycler$DefaultHandle extends io.netty.util.Recycler$EnhancedHandle
{
private static final int STATE_CLAIMED;
private static final int STATE_AVAILABLE;
private static final java.util.concurrent.atomic.AtomicIntegerFieldUpdater STATE_UPDATER;
private volatile int state;
private final io.netty.util.Recycler$LocalPool localPool;
private java.lang.Object value;
static final boolean $assertionsDisabled;
void <init>(io.netty.util.Recycler$LocalPool)
{
io.netty.util.Recycler$DefaultHandle v;
io.netty.util.Recycler$LocalPool v;
v := @this: io.netty.util.Recycler$DefaultHandle;
v := @parameter: io.netty.util.Recycler$LocalPool;
specialinvoke v.<io.netty.util.Recycler$EnhancedHandle: void <init>()>();
v.<io.netty.util.Recycler$DefaultHandle: io.netty.util.Recycler$LocalPool localPool> = v;
return;
}
public void recycle(java.lang.Object)
{
java.lang.Object v, v;
io.netty.util.Recycler$DefaultHandle v;
io.netty.util.Recycler$LocalPool v;
java.lang.IllegalArgumentException v;
v := @this: io.netty.util.Recycler$DefaultHandle;
v := @parameter: java.lang.Object;
v = v.<io.netty.util.Recycler$DefaultHandle: java.lang.Object value>;
if v == v goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("object does not belong to handle");
throw v;
label:
v = v.<io.netty.util.Recycler$DefaultHandle: io.netty.util.Recycler$LocalPool localPool>;
virtualinvoke v.<io.netty.util.Recycler$LocalPool: void release(io.netty.util.Recycler$DefaultHandle,boolean)>(v, 1);
return;
}
public void unguardedRecycle(java.lang.Object)
{
java.lang.Object v, v;
io.netty.util.Recycler$DefaultHandle v;
io.netty.util.Recycler$LocalPool v;
java.lang.IllegalArgumentException v;
v := @this: io.netty.util.Recycler$DefaultHandle;
v := @parameter: java.lang.Object;
v = v.<io.netty.util.Recycler$DefaultHandle: java.lang.Object value>;
if v == v goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("object does not belong to handle");
throw v;
label:
v = v.<io.netty.util.Recycler$DefaultHandle: io.netty.util.Recycler$LocalPool localPool>;
virtualinvoke v.<io.netty.util.Recycler$LocalPool: void release(io.netty.util.Recycler$DefaultHandle,boolean)>(v, 0);
return;
}
java.lang.Object get()
{
java.lang.Object v;
io.netty.util.Recycler$DefaultHandle v;
v := @this: io.netty.util.Recycler$DefaultHandle;
v = v.<io.netty.util.Recycler$DefaultHandle: java.lang.Object value>;
return v;
}
void set(java.lang.Object)
{
java.lang.Object v;
io.netty.util.Recycler$DefaultHandle v;
v := @this: io.netty.util.Recycler$DefaultHandle;
v := @parameter: java.lang.Object;
v.<io.netty.util.Recycler$DefaultHandle: java.lang.Object value> = v;
return;
}
void toClaimed()
{
java.util.concurrent.atomic.AtomicIntegerFieldUpdater v;
int v;
io.netty.util.Recycler$DefaultHandle v;
java.lang.AssertionError v;
boolean v;
v := @this: io.netty.util.Recycler$DefaultHandle;
v = <io.netty.util.Recycler$DefaultHandle: boolean $assertionsDisabled>;
if v != 0 goto label;
v = v.<io.netty.util.Recycler$DefaultHandle: int state>;
if v == 1 goto label;
v = new java.lang.AssertionError;
specialinvoke v.<java.lang.AssertionError: void <init>()>();
throw v;
label:
v = <io.netty.util.Recycler$DefaultHandle: java.util.concurrent.atomic.AtomicIntegerFieldUpdater STATE_UPDATER>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicIntegerFieldUpdater: void lazySet(java.lang.Object,int)>(v, 0);
return;
}
void toAvailable()
{
java.lang.IllegalStateException v;
java.util.concurrent.atomic.AtomicIntegerFieldUpdater v;
int v;
io.netty.util.Recycler$DefaultHandle v;
v := @this: io.netty.util.Recycler$DefaultHandle;
v = <io.netty.util.Recycler$DefaultHandle: java.util.concurrent.atomic.AtomicIntegerFieldUpdater STATE_UPDATER>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicIntegerFieldUpdater: int getAndSet(java.lang.Object,int)>(v, 1);
if v != 1 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Object has been recycled already.");
throw v;
label:
return;
}
void unguardedToAvailable()
{
java.lang.IllegalStateException v;
java.util.concurrent.atomic.AtomicIntegerFieldUpdater v;
int v;
io.netty.util.Recycler$DefaultHandle v;
v := @this: io.netty.util.Recycler$DefaultHandle;
v = v.<io.netty.util.Recycler$DefaultHandle: int state>;
if v != 1 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Object has been recycled already.");
throw v;
label:
v = <io.netty.util.Recycler$DefaultHandle: java.util.concurrent.atomic.AtomicIntegerFieldUpdater STATE_UPDATER>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicIntegerFieldUpdater: void lazySet(java.lang.Object,int)>(v, 1);
return;
}
static void <clinit>()
{
java.util.concurrent.atomic.AtomicIntegerFieldUpdater v;
java.lang.Class v;
boolean v, v;
v = class "Lio/netty/util/Recycler;";
v = virtualinvoke v.<java.lang.Class: boolean desiredAssertionStatus()>();
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
<io.netty.util.Recycler$DefaultHandle: boolean $assertionsDisabled> = v;
v = staticinvoke <java.util.concurrent.atomic.AtomicIntegerFieldUpdater: java.util.concurrent.atomic.AtomicIntegerFieldUpdater newUpdater(java.lang.Class,java.lang.String)>(class "Lio/netty/util/Recycler$DefaultHandle;", "state");
<io.netty.util.Recycler$DefaultHandle: java.util.concurrent.atomic.AtomicIntegerFieldUpdater STATE_UPDATER> = v;
return;
}
}