public abstract class org.apache.hc.core.http.impl.nio.AbstractContentDecoder extends java.lang.Object implements org.apache.hc.core.http.nio.ContentDecoder
{
final java.nio.channels.ReadableByteChannel channel;
final org.apache.hc.core.http.nio.SessionInputBuffer buffer;
final org.apache.hc.core.http.impl.BasicHttpTransportMetrics metrics;
protected boolean completed;
public void <init>(java.nio.channels.ReadableByteChannel, org.apache.hc.core.http.nio.SessionInputBuffer, org.apache.hc.core.http.impl.BasicHttpTransportMetrics)
{
java.nio.channels.ReadableByteChannel v;
org.apache.hc.core.http.impl.BasicHttpTransportMetrics v;
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
org.apache.hc.core.http.nio.SessionInputBuffer v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
v := @parameter: java.nio.channels.ReadableByteChannel;
v := @parameter: org.apache.hc.core.http.nio.SessionInputBuffer;
v := @parameter: org.apache.hc.core.http.impl.BasicHttpTransportMetrics;
specialinvoke v.<java.lang.Object: void <init>()>();
staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Channel");
staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Session input buffer");
staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Transport metrics");
v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: org.apache.hc.core.http.nio.SessionInputBuffer buffer> = v;
v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: java.nio.channels.ReadableByteChannel channel> = v;
v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: org.apache.hc.core.http.impl.BasicHttpTransportMetrics metrics> = v;
return;
}
protected java.nio.channels.ReadableByteChannel channel()
{
java.nio.channels.ReadableByteChannel v;
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: java.nio.channels.ReadableByteChannel channel>;
return v;
}
protected org.apache.hc.core.http.nio.SessionInputBuffer buffer()
{
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
org.apache.hc.core.http.nio.SessionInputBuffer v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: org.apache.hc.core.http.nio.SessionInputBuffer buffer>;
return v;
}
protected org.apache.hc.core.http.impl.BasicHttpTransportMetrics metrics()
{
org.apache.hc.core.http.impl.BasicHttpTransportMetrics v;
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: org.apache.hc.core.http.impl.BasicHttpTransportMetrics metrics>;
return v;
}
public boolean isCompleted()
{
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
boolean v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: boolean completed>;
return v;
}
public void setCompleted(boolean)
{
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
boolean v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
v := @parameter: boolean;
v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: boolean completed> = v;
return;
}
protected void setCompleted()
{
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: boolean completed> = 1;
return;
}
protected int readFromChannel(java.nio.ByteBuffer) throws java.io.IOException
{
java.nio.channels.ReadableByteChannel v;
int v;
org.apache.hc.core.http.impl.BasicHttpTransportMetrics v;
java.nio.ByteBuffer v;
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
v := @parameter: java.nio.ByteBuffer;
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: java.nio.channels.ReadableByteChannel channel>;
v = interfaceinvoke v.<java.nio.channels.ReadableByteChannel: int read(java.nio.ByteBuffer)>(v);
if v <= 0 goto label;
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: org.apache.hc.core.http.impl.BasicHttpTransportMetrics metrics>;
virtualinvoke v.<org.apache.hc.core.http.impl.BasicHttpTransportMetrics: void incrementBytesTransferred(long)>(v);
label:
return v;
}
protected int fillBufferFromChannel() throws java.io.IOException
{
java.nio.channels.ReadableByteChannel v;
int v;
org.apache.hc.core.http.impl.BasicHttpTransportMetrics v;
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
org.apache.hc.core.http.nio.SessionInputBuffer v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: org.apache.hc.core.http.nio.SessionInputBuffer buffer>;
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: java.nio.channels.ReadableByteChannel channel>;
v = interfaceinvoke v.<org.apache.hc.core.http.nio.SessionInputBuffer: int fill(java.nio.channels.ReadableByteChannel)>(v);
if v <= 0 goto label;
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: org.apache.hc.core.http.impl.BasicHttpTransportMetrics metrics>;
virtualinvoke v.<org.apache.hc.core.http.impl.BasicHttpTransportMetrics: void incrementBytesTransferred(long)>(v);
label:
return v;
}
protected int readFromChannel(java.nio.ByteBuffer, int) throws java.io.IOException
{
java.nio.channels.ReadableByteChannel v, v;
org.apache.hc.core.http.impl.BasicHttpTransportMetrics v;
java.nio.ByteBuffer v;
int v, v, v, v, v, v, v;
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
v := @parameter: java.nio.ByteBuffer;
v := @parameter: int;
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
if v <= v goto label;
v = virtualinvoke v.<java.nio.ByteBuffer: int limit()>();
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
v = v - v;
v = v - v;
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer limit(int)>(v);
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: java.nio.channels.ReadableByteChannel channel>;
v = interfaceinvoke v.<java.nio.channels.ReadableByteChannel: int read(java.nio.ByteBuffer)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer limit(int)>(v);
goto label;
label:
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: java.nio.channels.ReadableByteChannel channel>;
v = interfaceinvoke v.<java.nio.channels.ReadableByteChannel: int read(java.nio.ByteBuffer)>(v);
label:
if v <= 0 goto label;
v = v.<org.apache.hc.core.http.impl.nio.AbstractContentDecoder: org.apache.hc.core.http.impl.BasicHttpTransportMetrics metrics>;
virtualinvoke v.<org.apache.hc.core.http.impl.BasicHttpTransportMetrics: void incrementBytesTransferred(long)>(v);
label:
return v;
}
public java.util.List getTrailers()
{
org.apache.hc.core.http.impl.nio.AbstractContentDecoder v;
v := @this: org.apache.hc.core.http.impl.nio.AbstractContentDecoder;
return null;
}
}