final class org.glassfish.grizzly.http.ajp.AjpMessageUtils extends java.lang.Object
{
private static final int[] DEC;
private static final byte[] EMPTY_BYTE_ARRAY;
private static final int BODY_CHUNK_HEADER_SIZE;
private static final int MAX_BODY_CHUNK_CONTENT_SIZE;
void <init>()
{
org.glassfish.grizzly.http.ajp.AjpMessageUtils v;
v := @this: org.glassfish.grizzly.http.ajp.AjpMessageUtils;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
static void decodeRequest(org.glassfish.grizzly.Buffer, org.glassfish.grizzly.http.ajp.AjpHttpRequest, boolean) throws java.io.IOException
{
byte v, v;
boolean v, v, v;
org.glassfish.grizzly.http.util.DataChunk v, v, v, v, v, v;
org.glassfish.grizzly.Buffer v;
org.glassfish.grizzly.http.util.RequestURIRef v;
java.lang.String[] v;
org.glassfish.grizzly.http.HttpResponsePacket v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v;
org.glassfish.grizzly.http.util.MimeHeaders v;
org.glassfish.grizzly.http.ajp.AjpHttpRequest v;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: org.glassfish.grizzly.http.ajp.AjpHttpRequest;
v := @parameter: boolean;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int position()>();
v = v + 1;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: byte get(int)>(v);
v = (int) -1;
if v == v goto label;
v = <org.glassfish.grizzly.http.ajp.AjpConstants: java.lang.String[] methodTransArray>;
v = v - 1;
v = v[v];
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk getMethodDC()>();
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void setString(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk getProtocolDC()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int readShort(org.glassfish.grizzly.Buffer,int)>(v, v);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: boolean isNullLength(int)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.RequestURIRef getRequestURIRef()>();
v = v + 2;
v = v + 2;
v = v + v;
virtualinvoke v.<org.glassfish.grizzly.http.util.RequestURIRef: void init(org.glassfish.grizzly.Buffer,int,int)>(v, v, v);
label:
v = 2 + v;
v = v + 1;
v = v + v;
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk remoteAddr()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk remoteHostRaw()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk localName()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int readShort(org.glassfish.grizzly.Buffer,int)>(v, v);
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setLocalPort(int)>(v);
v = v + 2;
v = v + 1;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: byte get(int)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setSecure(boolean)>(v);
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.HttpResponsePacket getResponse()>();
virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: void setSecure(boolean)>(v);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int decodeHeaders(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.ajp.AjpHttpRequest)>(v, v, v);
staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int decodeAttributes(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.ajp.AjpHttpRequest,boolean)>(v, v, v, v);
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.MimeHeaders getHeaders()>();
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: org.glassfish.grizzly.http.util.DataChunk getValue(java.lang.String)>("host");
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setUnparsedHostHeader(org.glassfish.grizzly.http.util.DataChunk)>(v);
return;
}
private static int decodeAttributes(org.glassfish.grizzly.Buffer, int, org.glassfish.grizzly.http.ajp.AjpHttpRequest, boolean)
{
java.lang.Integer v;
byte v;
int v, v, v, v;
java.lang.String v;
boolean v;
org.glassfish.grizzly.http.util.DataChunk v, v, v, v, v, v, v;
org.glassfish.grizzly.Buffer v;
org.glassfish.grizzly.http.ajp.AjpHttpRequest v;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: int;
v := @parameter: org.glassfish.grizzly.http.ajp.AjpHttpRequest;
v := @parameter: boolean;
v = v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk tmpDataChunk>;
label:
v = v;
v = v + 1;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: byte get(int)>(v);
v = (int) -1;
if v != v goto label;
return v;
label:
if v != 11 goto label;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int readShort(org.glassfish.grizzly.Buffer,int)>(v, v);
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setAttribute(java.lang.String,java.lang.Object)>("jakarta.servlet.request.key_size", v);
v = v + 2;
label:
if v != 10 goto label;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int setStringAttribute(org.glassfish.grizzly.http.ajp.AjpHttpRequest,org.glassfish.grizzly.Buffer,int)>(v, v, v);
label:
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
case 10: goto label;
case 11: goto label;
case 12: goto label;
case 13: goto label;
default: goto label;
};
label:
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int skipBytes(org.glassfish.grizzly.Buffer,int)>(v, v);
goto label;
label:
if v == 0 goto label;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int skipBytes(org.glassfish.grizzly.Buffer,int)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk remoteUser()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
goto label;
label:
if v == 0 goto label;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int skipBytes(org.glassfish.grizzly.Buffer,int)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk authType()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
goto label;
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk getQueryStringDC()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
goto label;
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk instanceId()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
goto label;
label:
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setSecure(boolean)>(1);
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk sslCert()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
goto label;
label:
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setSecure(boolean)>(1);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int setStringAttributeValue(org.glassfish.grizzly.http.ajp.AjpHttpRequest,java.lang.String,org.glassfish.grizzly.Buffer,int)>(v, "jakarta.servlet.request.cipher_suite", v, v);
goto label;
label:
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setSecure(boolean)>(1);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int setStringAttributeValue(org.glassfish.grizzly.http.ajp.AjpHttpRequest,java.lang.String,org.glassfish.grizzly.Buffer,int)>(v, "jakarta.servlet.request.ssl_session_id", v, v);
goto label;
label:
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: java.lang.String toString()>();
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setSecret(java.lang.String)>(v);
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void recycle()>();
goto label;
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk getMethodDC()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
goto label;
}
static int decodeHeaders(org.glassfish.grizzly.Buffer, int, org.glassfish.grizzly.http.ajp.AjpHttpRequest)
{
java.lang.String[] v;
long v;
byte v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v;
boolean v, v;
org.glassfish.grizzly.http.util.DataChunk v, v;
org.glassfish.grizzly.http.util.MimeHeaders v;
org.glassfish.grizzly.Buffer v;
org.glassfish.grizzly.http.ajp.AjpHttpRequest v;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: int;
v := @parameter: org.glassfish.grizzly.http.ajp.AjpHttpRequest;
v = virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.MimeHeaders getHeaders()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int readShort(org.glassfish.grizzly.Buffer,int)>(v, v);
v = v + 2;
v = 0;
label:
if v >= v goto label;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int readShort(org.glassfish.grizzly.Buffer,int)>(v, v);
v = v & 255;
v = (int) 65280;
v = v & v;
v = (int) 40960;
if v != v goto label;
v = v + 2;
v = <org.glassfish.grizzly.http.ajp.AjpConstants: java.lang.String[] headerTransArray>;
v = v - 1;
v = v[v];
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: org.glassfish.grizzly.http.util.DataChunk addValue(java.lang.String)>(v);
goto label;
label:
v = (int) -1;
v = v;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int readShort(org.glassfish.grizzly.Buffer,int)>(v, v);
v = v + 2;
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: org.glassfish.grizzly.http.util.DataChunk addValue(org.glassfish.grizzly.Buffer,int,int)>(v, v, v);
v = v + 1;
v = v + v;
label:
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: int size()>();
v = v - 1;
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: org.glassfish.grizzly.http.util.DataChunk getName(int)>(v);
if v == 8 goto label;
v = (int) -1;
if v != v goto label;
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: boolean equalsIgnoreCase(java.lang.String)>("Content-Length");
if v == 0 goto label;
label:
v = staticinvoke <org.glassfish.grizzly.http.util.Ascii: long parseLong(org.glassfish.grizzly.http.util.DataChunk)>(v);
v = v cmp 2147483647L;
if v >= 0 goto label;
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setContentLength(int)>(v);
goto label;
label:
if v == 7 goto label;
v = (int) -1;
if v != v goto label;
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: boolean equalsIgnoreCase(java.lang.String)>("Content-Type");
if v == 0 goto label;
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: java.lang.String toString()>();
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setContentType(java.lang.String)>(v);
label:
v = v + 1;
goto label;
label:
return v;
}
static void parseHost(org.glassfish.grizzly.http.util.DataChunk, org.glassfish.grizzly.http.util.DataChunk, org.glassfish.grizzly.http.HttpRequestPacket)
{
java.lang.IllegalStateException v;
org.glassfish.grizzly.http.HttpRequestPacket v;
byte v, v, v;
int[] v;
boolean v, v, v, v;
org.glassfish.grizzly.http.util.DataChunk v, v;
org.glassfish.grizzly.Buffer v;
java.lang.Object[] v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v;
org.glassfish.grizzly.http.util.BufferChunk v;
v := @parameter: org.glassfish.grizzly.http.util.DataChunk;
v := @parameter: org.glassfish.grizzly.http.util.DataChunk;
v := @parameter: org.glassfish.grizzly.http.HttpRequestPacket;
if v != null goto label;
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpRequestPacket: int getLocalPort()>();
virtualinvoke v.<org.glassfish.grizzly.http.HttpRequestPacket: void setServerPort(int)>(v);
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpRequestPacket: java.lang.String getLocalName()>();
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void setString(java.lang.String)>(v);
return;
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: org.glassfish.grizzly.http.util.BufferChunk getBufferChunk()>();
v = virtualinvoke v.<org.glassfish.grizzly.http.util.BufferChunk: int getStart()>();
v = virtualinvoke v.<org.glassfish.grizzly.http.util.BufferChunk: int getEnd()>();
v = v - v;
v = (int) -1;
v = v;
v = virtualinvoke v.<org.glassfish.grizzly.http.util.BufferChunk: org.glassfish.grizzly.Buffer getBuffer()>();
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: byte get(int)>(v);
if v != 91 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
v = 0;
v = 0;
label:
if v >= v goto label;
v = v + v;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: byte get(int)>(v);
if v != 93 goto label;
v = 1;
goto label;
label:
if v != 58 goto label;
if v == 0 goto label;
if v == 0 goto label;
label:
v = v;
goto label;
label:
v = v + 1;
goto label;
label:
if v >= 0 goto label;
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpRequestPacket: boolean isSecure()>();
if v != 0 goto label;
virtualinvoke v.<org.glassfish.grizzly.http.HttpRequestPacket: void setServerPort(int)>(80);
goto label;
label:
virtualinvoke v.<org.glassfish.grizzly.http.HttpRequestPacket: void setServerPort(int)>(443);
label:
v = v + v;
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void setBuffer(org.glassfish.grizzly.Buffer,int,int)>(v, v, v);
goto label;
label:
v = v + v;
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void setBuffer(org.glassfish.grizzly.Buffer,int,int)>(v, v, v);
v = 0;
v = 1;
v = v - 1;
label:
if v <= v goto label;
v = <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int[] DEC>;
v = v + v;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: byte get(int)>(v);
v = v[v];
v = (int) -1;
if v != v goto label;
v = new java.lang.IllegalStateException;
v = newarray (java.lang.Object)[1];
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: java.lang.String toString()>();
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Host header %s contained a non-decimal value in the port definition.", v);
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v * v;
v = v + v;
v = 10 * v;
v = v - 1;
goto label;
label:
virtualinvoke v.<org.glassfish.grizzly.http.HttpRequestPacket: void setServerPort(int)>(v);
label:
return;
}
private static boolean isNullLength(int)
{
int v, v, v;
boolean v;
v := @parameter: int;
v = (int) 65535;
if v == v goto label;
v = (int) -1;
if v != v goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
static int readShort(org.glassfish.grizzly.Buffer, int)
{
short v;
int v, v, v;
org.glassfish.grizzly.Buffer v;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: int;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: short getShort(int)>(v);
v = (int) 65535;
v = v & v;
return v;
}
static int getBytesToDataChunk(org.glassfish.grizzly.Buffer, int, org.glassfish.grizzly.http.util.DataChunk)
{
org.glassfish.grizzly.http.util.DataChunk v;
org.glassfish.grizzly.Buffer v;
int v, v, v, v, v, v;
boolean v;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: int;
v := @parameter: org.glassfish.grizzly.http.util.DataChunk;
v = v + 2;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int readShort(org.glassfish.grizzly.Buffer,int)>(v, v);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: boolean isNullLength(int)>(v);
if v == 0 goto label;
return v;
label:
v = v + v;
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void setBuffer(org.glassfish.grizzly.Buffer,int,int)>(v, v, v);
v = v + v;
v = v + 1;
return v;
}
private static int skipBytes(org.glassfish.grizzly.Buffer, int)
{
int v, v, v, v, v;
org.glassfish.grizzly.Buffer v;
boolean v;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: int;
v = v + 2;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int readShort(org.glassfish.grizzly.Buffer,int)>(v, v);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: boolean isNullLength(int)>(v);
if v == 0 goto label;
return v;
label:
v = v + v;
v = v + 1;
return v;
}
private static int setStringAttribute(org.glassfish.grizzly.http.ajp.AjpHttpRequest, org.glassfish.grizzly.Buffer, int)
{
org.glassfish.grizzly.http.util.DataChunk v;
org.glassfish.grizzly.Buffer v;
int v, v, v;
org.glassfish.grizzly.http.ajp.AjpHttpRequest v;
java.lang.String v, v;
v := @parameter: org.glassfish.grizzly.http.ajp.AjpHttpRequest;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: int;
v = v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk tmpDataChunk>;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: java.lang.String toString()>();
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void recycle()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: java.lang.String toString()>();
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void recycle()>();
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setAttribute(java.lang.String,java.lang.Object)>(v, v);
return v;
}
private static int setStringAttributeValue(org.glassfish.grizzly.http.ajp.AjpHttpRequest, java.lang.String, org.glassfish.grizzly.Buffer, int)
{
org.glassfish.grizzly.http.util.DataChunk v;
int v, v;
org.glassfish.grizzly.Buffer v;
org.glassfish.grizzly.http.ajp.AjpHttpRequest v;
java.lang.String v, v;
v := @parameter: org.glassfish.grizzly.http.ajp.AjpHttpRequest;
v := @parameter: java.lang.String;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: int;
v = v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: org.glassfish.grizzly.http.util.DataChunk tmpDataChunk>;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: int getBytesToDataChunk(org.glassfish.grizzly.Buffer,int,org.glassfish.grizzly.http.util.DataChunk)>(v, v, v);
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: java.lang.String toString()>();
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void recycle()>();
virtualinvoke v.<org.glassfish.grizzly.http.ajp.AjpHttpRequest: void setAttribute(java.lang.String,java.lang.Object)>(v, v);
return v;
}
public static org.glassfish.grizzly.Buffer encodeHeaders(org.glassfish.grizzly.memory.MemoryManager, org.glassfish.grizzly.http.HttpResponsePacket)
{
byte[] v, v;
org.glassfish.grizzly.memory.MemoryManager v;
byte v;
org.glassfish.grizzly.http.util.HttpStatus v;
boolean v, v;
org.glassfish.grizzly.http.util.DataChunk v, v, v, v, v, v, v;
org.glassfish.grizzly.Buffer v, v, v, v, v;
long v;
org.glassfish.grizzly.http.HttpResponsePacket v;
int v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v;
org.glassfish.grizzly.http.util.MimeHeaders v;
v := @parameter: org.glassfish.grizzly.memory.MemoryManager;
v := @parameter: org.glassfish.grizzly.http.HttpResponsePacket;
v = interfaceinvoke v.<org.glassfish.grizzly.memory.MemoryManager: org.glassfish.grizzly.Buffer allocate(int)>(4096);
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int position()>();
v = v + 4;
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer position(int)>(v);
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer put(byte)>(4);
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: int getStatus()>();
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer putShort(short)>(v);
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: byte[] getTempHeaderEncodingBuffer()>();
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: boolean isCustomReasonPhraseSet()>();
if v == 0 goto label;
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: org.glassfish.grizzly.http.util.DataChunk getReasonPhraseDC()>();
v = staticinvoke <org.glassfish.grizzly.http.util.HttpUtils: org.glassfish.grizzly.http.util.DataChunk filter(org.glassfish.grizzly.http.util.DataChunk)>(v);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: org.glassfish.grizzly.Buffer putBytes(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,org.glassfish.grizzly.http.util.DataChunk,byte[])>(v, v, v, v);
goto label;
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: org.glassfish.grizzly.http.util.HttpStatus getHttpStatus()>();
v = virtualinvoke v.<org.glassfish.grizzly.http.util.HttpStatus: byte[] getReasonPhraseBytes()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: org.glassfish.grizzly.Buffer putBytes(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,byte[])>(v, v, v);
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: boolean isAcknowledgement()>();
if v == 0 goto label;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: org.glassfish.grizzly.Buffer putShort(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,int)>(v, v, 0);
goto label;
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: org.glassfish.grizzly.http.util.MimeHeaders getHeaders()>();
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: java.lang.String getContentType()>();
if v == null goto label;
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: org.glassfish.grizzly.http.util.DataChunk setValue(java.lang.String)>("Content-Type");
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void setString(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: java.lang.String getContentLanguage()>();
if v == null goto label;
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: org.glassfish.grizzly.http.util.DataChunk setValue(java.lang.String)>("Content-Language");
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void setString(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.HttpResponsePacket: long getContentLength()>();
v = v cmp 0L;
if v < 0 goto label;
v = staticinvoke <org.glassfish.grizzly.http.util.HttpCodecUtils: org.glassfish.grizzly.Buffer getLongAsBuffer(org.glassfish.grizzly.memory.MemoryManager,long)>(v, v);
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: org.glassfish.grizzly.http.util.DataChunk setValue(java.lang.String)>("Content-Length");
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int position()>();
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int limit()>();
virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: void setBuffer(org.glassfish.grizzly.Buffer,int,int)>(v, v, v);
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: int size()>();
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: org.glassfish.grizzly.Buffer putShort(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,int)>(v, v, v);
v = 0;
label:
if v >= v goto label;
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: org.glassfish.grizzly.http.util.DataChunk getName(int)>(v);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: org.glassfish.grizzly.Buffer putBytes(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,org.glassfish.grizzly.http.util.DataChunk,byte[])>(v, v, v, v);
v = virtualinvoke v.<org.glassfish.grizzly.http.util.MimeHeaders: org.glassfish.grizzly.http.util.DataChunk getValue(int)>(v);
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: org.glassfish.grizzly.Buffer putBytes(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,org.glassfish.grizzly.http.util.DataChunk,byte[])>(v, v, v, v);
v = v + 1;
goto label;
label:
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer put(int,byte)>(v, 65);
v = v + 1;
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer put(int,byte)>(v, 66);
v = v + 2;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int position()>();
v = v - v;
v = v - 4;
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer putShort(int,short)>(v, v);
return v;
}
public static org.glassfish.grizzly.Buffer appendContentAndTrim(org.glassfish.grizzly.memory.MemoryManager, org.glassfish.grizzly.Buffer, org.glassfish.grizzly.Buffer)
{
org.glassfish.grizzly.memory.MemoryManager v;
org.glassfish.grizzly.Buffer v, v, v, v, v;
int v, v, v;
boolean v;
v := @parameter: org.glassfish.grizzly.memory.MemoryManager;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: org.glassfish.grizzly.Buffer;
v = null;
label:
v = null;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int remaining()>();
if v <= 8178 goto label;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int position()>();
v = v + 8178;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer split(int)>(v);
label:
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: org.glassfish.grizzly.Buffer appendContentChunkAndTrim(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,org.glassfish.grizzly.Buffer)>(v, v, v);
v = staticinvoke <org.glassfish.grizzly.memory.Buffers: org.glassfish.grizzly.Buffer appendBuffers(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,org.glassfish.grizzly.Buffer)>(v, v, v);
v = null;
v = v;
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: boolean hasRemaining()>();
if v != 0 goto label;
label:
return v;
}
private static org.glassfish.grizzly.Buffer appendContentChunkAndTrim(org.glassfish.grizzly.memory.MemoryManager, org.glassfish.grizzly.Buffer, org.glassfish.grizzly.Buffer)
{
org.glassfish.grizzly.memory.MemoryManager v;
org.glassfish.grizzly.Buffer v, v, v, v, v, v;
int v, v, v, v;
boolean v, v, v;
v := @parameter: org.glassfish.grizzly.memory.MemoryManager;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: org.glassfish.grizzly.Buffer;
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int remaining()>();
if v < 7 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
if v == 0 goto label;
v = v;
goto label;
label:
if v == null goto label;
interfaceinvoke v.<org.glassfish.grizzly.Buffer: void trim()>();
label:
v = interfaceinvoke v.<org.glassfish.grizzly.memory.MemoryManager: org.glassfish.grizzly.Buffer allocate(int)>(7);
interfaceinvoke v.<org.glassfish.grizzly.Buffer: void allowBufferDispose(boolean)>(1);
label:
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer put(byte)>(65);
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer put(byte)>(66);
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int remaining()>();
v = 4 + v;
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer putShort(short)>(v);
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer put(byte)>(3);
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int remaining()>();
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer putShort(short)>(v);
interfaceinvoke v.<org.glassfish.grizzly.Buffer: void trim()>();
v = staticinvoke <org.glassfish.grizzly.memory.Buffers: org.glassfish.grizzly.Buffer appendBuffers(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,org.glassfish.grizzly.Buffer)>(v, v, v);
v = interfaceinvoke v.<org.glassfish.grizzly.memory.MemoryManager: org.glassfish.grizzly.Buffer allocate(int)>(1);
interfaceinvoke v.<org.glassfish.grizzly.Buffer: void allowBufferDispose(boolean)>(1);
v = staticinvoke <org.glassfish.grizzly.memory.Buffers: org.glassfish.grizzly.Buffer appendBuffers(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,org.glassfish.grizzly.Buffer)>(v, v, v);
if v != 0 goto label;
if v == null goto label;
v = staticinvoke <org.glassfish.grizzly.memory.Buffers: org.glassfish.grizzly.Buffer appendBuffers(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,org.glassfish.grizzly.Buffer)>(v, v, v);
label:
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: boolean isComposite()>();
if v == 0 goto label;
virtualinvoke v.<org.glassfish.grizzly.memory.CompositeBuffer: void allowInternalBuffersDispose(boolean)>(1);
label:
return v;
}
private static org.glassfish.grizzly.Buffer putBytes(org.glassfish.grizzly.memory.MemoryManager, org.glassfish.grizzly.Buffer, org.glassfish.grizzly.http.util.DataChunk, byte[])
{
byte[] v, v;
org.glassfish.grizzly.http.util.DataChunk v;
org.glassfish.grizzly.memory.MemoryManager v;
org.glassfish.grizzly.Buffer v, v, v;
int v, v, v, v, v, v;
boolean v;
v := @parameter: org.glassfish.grizzly.memory.MemoryManager;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: org.glassfish.grizzly.http.util.DataChunk;
v := @parameter: byte[];
if v == null goto label;
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: boolean isNull()>();
if v == 0 goto label;
label:
v = <org.glassfish.grizzly.http.ajp.AjpMessageUtils: byte[] EMPTY_BYTE_ARRAY>;
v = staticinvoke <org.glassfish.grizzly.http.ajp.AjpMessageUtils: org.glassfish.grizzly.Buffer putBytes(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,byte[])>(v, v, v);
return v;
label:
v = virtualinvoke v.<org.glassfish.grizzly.http.util.DataChunk: int getLength()>();
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int remaining()>();
v = v + 2;
v = v + 1;
if v >= v goto label;
v = v + 2;
v = v + 1;
v = staticinvoke <org.glassfish.grizzly.http.util.HttpCodecUtils: org.glassfish.grizzly.Buffer resizeBuffer(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,int)>(v, v, v);
label:
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer putShort(short)>(v);
v = staticinvoke <org.glassfish.grizzly.http.util.HttpCodecUtils: org.glassfish.grizzly.Buffer put(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,byte[],org.glassfish.grizzly.http.util.DataChunk)>(v, v, v, v);
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer put(byte)>(0);
return v;
}
private static org.glassfish.grizzly.Buffer putBytes(org.glassfish.grizzly.memory.MemoryManager, org.glassfish.grizzly.Buffer, byte[])
{
byte[] v;
org.glassfish.grizzly.memory.MemoryManager v;
org.glassfish.grizzly.Buffer v, v;
int v, v, v, v, v, v;
v := @parameter: org.glassfish.grizzly.memory.MemoryManager;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: byte[];
v = lengthof v;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int remaining()>();
v = v + 2;
v = v + 1;
if v >= v goto label;
v = v + 2;
v = v + 1;
v = staticinvoke <org.glassfish.grizzly.http.util.HttpCodecUtils: org.glassfish.grizzly.Buffer resizeBuffer(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,int)>(v, v, v);
label:
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer putShort(short)>(v);
v = staticinvoke <org.glassfish.grizzly.http.util.HttpCodecUtils: org.glassfish.grizzly.Buffer put(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,byte[])>(v, v, v);
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer put(byte)>(0);
return v;
}
private static org.glassfish.grizzly.Buffer putShort(org.glassfish.grizzly.memory.MemoryManager, org.glassfish.grizzly.Buffer, int)
{
org.glassfish.grizzly.memory.MemoryManager v;
int v, v;
org.glassfish.grizzly.Buffer v;
v := @parameter: org.glassfish.grizzly.memory.MemoryManager;
v := @parameter: org.glassfish.grizzly.Buffer;
v := @parameter: int;
v = interfaceinvoke v.<org.glassfish.grizzly.Buffer: int remaining()>();
if v >= 2 goto label;
v = staticinvoke <org.glassfish.grizzly.http.util.HttpCodecUtils: org.glassfish.grizzly.Buffer resizeBuffer(org.glassfish.grizzly.memory.MemoryManager,org.glassfish.grizzly.Buffer,int)>(v, v, 2);
label:
interfaceinvoke v.<org.glassfish.grizzly.Buffer: org.glassfish.grizzly.Buffer putShort(short)>(v);
return v;
}
static void <clinit>()
{
byte[] v;
int[] v;
v = staticinvoke <org.glassfish.grizzly.http.util.HexUtils: int[] getDecBytes()>();
<org.glassfish.grizzly.http.ajp.AjpMessageUtils: int[] DEC> = v;
v = newarray (byte)[0];
<org.glassfish.grizzly.http.ajp.AjpMessageUtils: byte[] EMPTY_BYTE_ARRAY> = v;
return;
}
}