class io.netty.handler.codec.marshalling.LimitingByteInput extends java.lang.Object implements org.jboss.marshalling.ByteInput
{
private static final io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException EXCEPTION;
private final org.jboss.marshalling.ByteInput input;
private final long limit;
private long read;
void <init>(org.jboss.marshalling.ByteInput, long)
{
org.jboss.marshalling.ByteInput v;
io.netty.handler.codec.marshalling.LimitingByteInput v;
long v, v;
v := @this: io.netty.handler.codec.marshalling.LimitingByteInput;
v := @parameter: org.jboss.marshalling.ByteInput;
v := @parameter: long;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<io.netty.handler.codec.marshalling.LimitingByteInput: org.jboss.marshalling.ByteInput input> = v;
v = staticinvoke <io.netty.util.internal.ObjectUtil: long checkPositive(long,java.lang.String)>(v, "limit");
v.<io.netty.handler.codec.marshalling.LimitingByteInput: long limit> = v;
return;
}
public void close() throws java.io.IOException
{
io.netty.handler.codec.marshalling.LimitingByteInput v;
v := @this: io.netty.handler.codec.marshalling.LimitingByteInput;
return;
}
public int available() throws java.io.IOException
{
org.jboss.marshalling.ByteInput v;
io.netty.handler.codec.marshalling.LimitingByteInput v;
int v, v;
v := @this: io.netty.handler.codec.marshalling.LimitingByteInput;
v = v.<io.netty.handler.codec.marshalling.LimitingByteInput: org.jboss.marshalling.ByteInput input>;
v = interfaceinvoke v.<org.jboss.marshalling.ByteInput: int available()>();
v = specialinvoke v.<io.netty.handler.codec.marshalling.LimitingByteInput: int readable(int)>(v);
return v;
}
public int read() throws java.io.IOException
{
org.jboss.marshalling.ByteInput v;
io.netty.handler.codec.marshalling.LimitingByteInput v;
int v, v;
long v, v;
io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException v;
v := @this: io.netty.handler.codec.marshalling.LimitingByteInput;
v = specialinvoke v.<io.netty.handler.codec.marshalling.LimitingByteInput: int readable(int)>(1);
if v <= 0 goto label;
v = v.<io.netty.handler.codec.marshalling.LimitingByteInput: org.jboss.marshalling.ByteInput input>;
v = interfaceinvoke v.<org.jboss.marshalling.ByteInput: int read()>();
v = v.<io.netty.handler.codec.marshalling.LimitingByteInput: long read>;
v = v + 1L;
v.<io.netty.handler.codec.marshalling.LimitingByteInput: long read> = v;
return v;
label:
v = <io.netty.handler.codec.marshalling.LimitingByteInput: io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException EXCEPTION>;
throw v;
}
public int read(byte[]) throws java.io.IOException
{
byte[] v;
io.netty.handler.codec.marshalling.LimitingByteInput v;
int v, v;
v := @this: io.netty.handler.codec.marshalling.LimitingByteInput;
v := @parameter: byte[];
v = lengthof v;
v = virtualinvoke v.<io.netty.handler.codec.marshalling.LimitingByteInput: int read(byte[],int,int)>(v, 0, v);
return v;
}
public int read(byte[], int, int) throws java.io.IOException
{
byte[] v;
org.jboss.marshalling.ByteInput v;
long v, v;
io.netty.handler.codec.marshalling.LimitingByteInput v;
int v, v, v, v;
io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException v;
v := @this: io.netty.handler.codec.marshalling.LimitingByteInput;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v = specialinvoke v.<io.netty.handler.codec.marshalling.LimitingByteInput: int readable(int)>(v);
if v <= 0 goto label;
v = v.<io.netty.handler.codec.marshalling.LimitingByteInput: org.jboss.marshalling.ByteInput input>;
v = interfaceinvoke v.<org.jboss.marshalling.ByteInput: int read(byte[],int,int)>(v, v, v);
v = v.<io.netty.handler.codec.marshalling.LimitingByteInput: long read>;
v = v + v;
v.<io.netty.handler.codec.marshalling.LimitingByteInput: long read> = v;
return v;
label:
v = <io.netty.handler.codec.marshalling.LimitingByteInput: io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException EXCEPTION>;
throw v;
}
public long skip(long) throws java.io.IOException
{
org.jboss.marshalling.ByteInput v;
long v, v, v, v;
io.netty.handler.codec.marshalling.LimitingByteInput v;
int v;
io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException v;
v := @this: io.netty.handler.codec.marshalling.LimitingByteInput;
v := @parameter: long;
v = specialinvoke v.<io.netty.handler.codec.marshalling.LimitingByteInput: int readable(int)>(v);
if v <= 0 goto label;
v = v.<io.netty.handler.codec.marshalling.LimitingByteInput: org.jboss.marshalling.ByteInput input>;
v = interfaceinvoke v.<org.jboss.marshalling.ByteInput: long skip(long)>(v);
v = v.<io.netty.handler.codec.marshalling.LimitingByteInput: long read>;
v = v + v;
v.<io.netty.handler.codec.marshalling.LimitingByteInput: long read> = v;
return v;
label:
v = <io.netty.handler.codec.marshalling.LimitingByteInput: io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException EXCEPTION>;
throw v;
}
private int readable(int)
{
io.netty.handler.codec.marshalling.LimitingByteInput v;
int v;
long v, v, v, v;
v := @this: io.netty.handler.codec.marshalling.LimitingByteInput;
v := @parameter: int;
v = v.<io.netty.handler.codec.marshalling.LimitingByteInput: long limit>;
v = v.<io.netty.handler.codec.marshalling.LimitingByteInput: long read>;
v = v - v;
v = staticinvoke <java.lang.Math: long min(long,long)>(v, v);
return v;
}
static void <clinit>()
{
io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException v;
v = new io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException;
specialinvoke v.<io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException: void <init>()>();
<io.netty.handler.codec.marshalling.LimitingByteInput: io.netty.handler.codec.marshalling.LimitingByteInput$TooBigObjectException EXCEPTION> = v;
return;
}
}