public final class org.apache.hc.client.http.impl.classic.ContentCompressionExec extends java.lang.Object implements org.apache.hc.client.http.classic.ExecChainHandler
{
private final org.apache.hc.core.http.Header acceptEncoding;
private final org.apache.hc.core.http.config.Lookup decoderRegistry;
private final boolean ignoreUnknown;
private static final java.lang.String[] EMPTY_STRING_ARRAY;
public void <init>(java.util.List, org.apache.hc.core.http.config.Lookup, boolean)
{
java.lang.Object[] v;
org.apache.hc.client.http.entity.GZIPInputStreamFactory v, v;
org.apache.hc.client.http.impl.classic.ContentCompressionExec v;
org.apache.hc.core.http.Header v;
org.apache.hc.core.http.config.Lookup v, v;
java.lang.String[] v;
org.apache.hc.core.http.config.RegistryBuilder v, v, v, v;
java.util.List v;
org.apache.hc.client.http.entity.DeflateInputStreamFactory v;
boolean v;
v := @this: org.apache.hc.client.http.impl.classic.ContentCompressionExec;
v := @parameter: java.util.List;
v := @parameter: org.apache.hc.core.http.config.Lookup;
v := @parameter: boolean;
specialinvoke v.<java.lang.Object: void <init>()>();
if v == null goto label;
v = <org.apache.hc.client.http.impl.classic.ContentCompressionExec: java.lang.String[] EMPTY_STRING_ARRAY>;
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray(java.lang.Object[])>(v);
goto label;
label:
v = newarray (java.lang.String)[3];
v[0] = "gzip";
v[1] = "x-gzip";
v[2] = "deflate";
label:
v = staticinvoke <org.apache.hc.core.http.message.MessageSupport: org.apache.hc.core.http.Header format(java.lang.String,java.lang.String[])>("Accept-Encoding", v);
v.<org.apache.hc.client.http.impl.classic.ContentCompressionExec: org.apache.hc.core.http.Header acceptEncoding> = v;
if v == null goto label;
v = v;
goto label;
label:
v = staticinvoke <org.apache.hc.core.http.config.RegistryBuilder: org.apache.hc.core.http.config.RegistryBuilder create()>();
v = staticinvoke <org.apache.hc.client.http.entity.GZIPInputStreamFactory: org.apache.hc.client.http.entity.GZIPInputStreamFactory getInstance()>();
v = virtualinvoke v.<org.apache.hc.core.http.config.RegistryBuilder: org.apache.hc.core.http.config.RegistryBuilder register(java.lang.String,java.lang.Object)>("gzip", v);
v = staticinvoke <org.apache.hc.client.http.entity.GZIPInputStreamFactory: org.apache.hc.client.http.entity.GZIPInputStreamFactory getInstance()>();
v = virtualinvoke v.<org.apache.hc.core.http.config.RegistryBuilder: org.apache.hc.core.http.config.RegistryBuilder register(java.lang.String,java.lang.Object)>("x-gzip", v);
v = staticinvoke <org.apache.hc.client.http.entity.DeflateInputStreamFactory: org.apache.hc.client.http.entity.DeflateInputStreamFactory getInstance()>();
v = virtualinvoke v.<org.apache.hc.core.http.config.RegistryBuilder: org.apache.hc.core.http.config.RegistryBuilder register(java.lang.String,java.lang.Object)>("deflate", v);
v = virtualinvoke v.<org.apache.hc.core.http.config.RegistryBuilder: org.apache.hc.core.http.config.Registry build()>();
label:
v.<org.apache.hc.client.http.impl.classic.ContentCompressionExec: org.apache.hc.core.http.config.Lookup decoderRegistry> = v;
v.<org.apache.hc.client.http.impl.classic.ContentCompressionExec: boolean ignoreUnknown> = v;
return;
}
public void <init>(boolean)
{
boolean v;
org.apache.hc.client.http.impl.classic.ContentCompressionExec v;
v := @this: org.apache.hc.client.http.impl.classic.ContentCompressionExec;
v := @parameter: boolean;
specialinvoke v.<org.apache.hc.client.http.impl.classic.ContentCompressionExec: void <init>(java.util.List,org.apache.hc.core.http.config.Lookup,boolean)>(null, null, v);
return;
}
public void <init>()
{
org.apache.hc.client.http.impl.classic.ContentCompressionExec v;
v := @this: org.apache.hc.client.http.impl.classic.ContentCompressionExec;
specialinvoke v.<org.apache.hc.client.http.impl.classic.ContentCompressionExec: void <init>(java.util.List,org.apache.hc.core.http.config.Lookup,boolean)>(null, null, 1);
return;
}
public org.apache.hc.core.http.ClassicHttpResponse execute(org.apache.hc.core.http.ClassicHttpRequest, org.apache.hc.client.http.classic.ExecChain$Scope, org.apache.hc.client.http.classic.ExecChain) throws java.io.IOException, org.apache.hc.core.http.HttpException
{
org.apache.hc.core.http.config.Lookup v;
org.apache.hc.core.http.message.ParserCursor v;
org.apache.hc.core.http.message.BasicHeaderValueParser v;
byte v;
java.util.Locale v;
org.apache.hc.core.http.ClassicHttpResponse v;
boolean v, v, v, v, v;
org.apache.hc.client.http.impl.classic.ContentCompressionExec v;
org.apache.hc.core.http.HeaderElement[] v;
org.apache.hc.core.http.HttpEntity v, v;
org.apache.hc.client.http.classic.ExecChain$Scope v;
org.apache.hc.client.http.protocol.HttpClientContext v;
long v;
int v, v, v;
java.lang.String v, v, v, v, v, v;
org.apache.hc.client.http.config.RequestConfig v;
org.apache.hc.core.http.HeaderElement v;
org.apache.hc.core.http.HttpException v;
org.apache.hc.core.http.Header v;
org.apache.hc.core.http.ClassicHttpRequest v;
org.apache.hc.client.http.entity.DecompressingEntity v;
java.lang.Object v;
org.apache.hc.client.http.classic.ExecChain v;
v := @this: org.apache.hc.client.http.impl.classic.ContentCompressionExec;
v := @parameter: org.apache.hc.core.http.ClassicHttpRequest;
v := @parameter: org.apache.hc.client.http.classic.ExecChain$Scope;
v := @parameter: org.apache.hc.client.http.classic.ExecChain;
staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "HTTP request");
staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Scope");
v = v.<org.apache.hc.client.http.classic.ExecChain$Scope: org.apache.hc.client.http.protocol.HttpClientContext clientContext>;
v = virtualinvoke v.<org.apache.hc.client.http.protocol.HttpClientContext: org.apache.hc.client.http.config.RequestConfig getRequestConfig()>();
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: boolean containsHeader(java.lang.String)>("Accept-Encoding");
if v != 0 goto label;
v = virtualinvoke v.<org.apache.hc.client.http.config.RequestConfig: boolean isContentCompressionEnabled()>();
if v == 0 goto label;
v = v.<org.apache.hc.client.http.impl.classic.ContentCompressionExec: org.apache.hc.core.http.Header acceptEncoding>;
interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: void addHeader(org.apache.hc.core.http.Header)>(v);
label:
v = interfaceinvoke v.<org.apache.hc.client.http.classic.ExecChain: org.apache.hc.core.http.ClassicHttpResponse proceed(org.apache.hc.core.http.ClassicHttpRequest,org.apache.hc.client.http.classic.ExecChain$Scope)>(v, v);
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpResponse: org.apache.hc.core.http.HttpEntity getEntity()>();
v = virtualinvoke v.<org.apache.hc.client.http.config.RequestConfig: boolean isContentCompressionEnabled()>();
if v == 0 goto label;
if v == null goto label;
v = interfaceinvoke v.<org.apache.hc.core.http.HttpEntity: long getContentLength()>();
v = v cmp 0L;
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.hc.core.http.HttpEntity: java.lang.String getContentEncoding()>();
if v == null goto label;
v = new org.apache.hc.core.http.message.ParserCursor;
v = virtualinvoke v.<java.lang.String: int length()>();
specialinvoke v.<org.apache.hc.core.http.message.ParserCursor: void <init>(int,int)>(0, v);
v = <org.apache.hc.core.http.message.BasicHeaderValueParser: org.apache.hc.core.http.message.BasicHeaderValueParser INSTANCE>;
v = virtualinvoke v.<org.apache.hc.core.http.message.BasicHeaderValueParser: org.apache.hc.core.http.HeaderElement[] parseElements(java.lang.CharSequence,org.apache.hc.core.http.message.ParserCursor)>(v, v);
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = interfaceinvoke v.<org.apache.hc.core.http.HeaderElement: java.lang.String getName()>();
v = <java.util.Locale: java.util.Locale ROOT>;
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase(java.util.Locale)>(v);
v = v.<org.apache.hc.client.http.impl.classic.ContentCompressionExec: org.apache.hc.core.http.config.Lookup decoderRegistry>;
v = interfaceinvoke v.<org.apache.hc.core.http.config.Lookup: java.lang.Object lookup(java.lang.String)>(v);
if v == null goto label;
v = new org.apache.hc.client.http.entity.DecompressingEntity;
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpResponse: org.apache.hc.core.http.HttpEntity getEntity()>();
specialinvoke v.<org.apache.hc.client.http.entity.DecompressingEntity: void <init>(org.apache.hc.core.http.HttpEntity,org.apache.hc.client.http.entity.InputStreamFactory)>(v, v);
interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpResponse: void setEntity(org.apache.hc.core.http.HttpEntity)>(v);
interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpResponse: boolean removeHeaders(java.lang.String)>("Content-Length");
interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpResponse: boolean removeHeaders(java.lang.String)>("Content-Encoding");
interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpResponse: boolean removeHeaders(java.lang.String)>("Content-MD5");
goto label;
label:
v = "identity";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = v.<org.apache.hc.client.http.impl.classic.ContentCompressionExec: boolean ignoreUnknown>;
if v != 0 goto label;
v = new org.apache.hc.core.http.HttpException;
v = interfaceinvoke v.<org.apache.hc.core.http.HeaderElement: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Unsupported Content-Encoding: \u0001");
specialinvoke v.<org.apache.hc.core.http.HttpException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v + 1;
goto label;
label:
return v;
}
static void <clinit>()
{
java.lang.String[] v;
v = newarray (java.lang.String)[0];
<org.apache.hc.client.http.impl.classic.ContentCompressionExec: java.lang.String[] EMPTY_STRING_ARRAY> = v;
return;
}
}