public final class org.apache.hc.client.http.impl.classic.ProtocolExec extends java.lang.Object implements org.apache.hc.client.http.classic.ExecChainHandler
{
private static final org.slf4j.Logger LOG;
private final org.apache.hc.core.http.protocol.HttpProcessor httpProcessor;
private final org.apache.hc.client.http.AuthenticationStrategy targetAuthStrategy;
private final org.apache.hc.client.http.AuthenticationStrategy proxyAuthStrategy;
private final org.apache.hc.client.http.impl.auth.HttpAuthenticator authenticator;
public void <init>(org.apache.hc.core.http.protocol.HttpProcessor, org.apache.hc.client.http.AuthenticationStrategy, org.apache.hc.client.http.AuthenticationStrategy)
{
org.apache.hc.client.http.AuthenticationStrategy v, v;
org.apache.hc.client.http.impl.auth.HttpAuthenticator v;
org.apache.hc.core.http.protocol.HttpProcessor v;
org.apache.hc.client.http.impl.classic.ProtocolExec v;
java.lang.Object v, v, v;
v := @this: org.apache.hc.client.http.impl.classic.ProtocolExec;
v := @parameter: org.apache.hc.core.http.protocol.HttpProcessor;
v := @parameter: org.apache.hc.client.http.AuthenticationStrategy;
v := @parameter: org.apache.hc.client.http.AuthenticationStrategy;
specialinvoke v.<java.lang.Object: void <init>()>();
v = staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "HTTP protocol processor");
v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.core.http.protocol.HttpProcessor httpProcessor> = v;
v = staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Target authentication strategy");
v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.AuthenticationStrategy targetAuthStrategy> = v;
v = staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Proxy authentication strategy");
v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.AuthenticationStrategy proxyAuthStrategy> = v;
v = new org.apache.hc.client.http.impl.auth.HttpAuthenticator;
specialinvoke v.<org.apache.hc.client.http.impl.auth.HttpAuthenticator: void <init>()>();
v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.impl.auth.HttpAuthenticator authenticator> = v;
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.io.support.ClassicRequestBuilder v;
org.apache.hc.core.http.protocol.HttpProcessor v, v;
org.apache.hc.core.net.URIAuthority v, v, v, v, v, v;
java.util.Map v;
org.apache.hc.client.http.classic.ExecRuntime v;
org.apache.hc.client.http.auth.AuthExchange v, v, v;
java.lang.Exception v;
org.apache.hc.client.http.impl.classic.ProtocolExec v;
org.apache.hc.core.http.HttpEntity v, v, v, v;
java.lang.String v, v, v, v, v, v, v;
org.apache.hc.client.http.HttpRoute v;
org.apache.hc.core.http.HttpHost v, v, v;
org.apache.hc.client.http.auth.ChallengeType v, v;
org.apache.hc.core.http.Header[] v;
org.apache.hc.client.http.auth.AuthExchange$State v, v, v, v, v, v;
org.apache.hc.core.http.ClassicHttpResponse v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Collection v;
org.apache.hc.client.http.impl.auth.HttpAuthenticator v, v;
org.apache.hc.client.http.classic.ExecChain$Scope v;
org.apache.hc.client.http.protocol.HttpClientContext v;
org.apache.hc.client.http.auth.CredentialsProvider v;
org.apache.hc.core.http.HttpException v;
org.slf4j.Logger v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v, v;
org.apache.hc.core.http.ProtocolException v;
org.apache.hc.core.http.ClassicHttpRequest v, v, v;
org.apache.hc.core.http.Method v, v;
java.lang.Object v, v;
org.apache.hc.client.http.classic.ExecChain v;
v := @this: org.apache.hc.client.http.impl.classic.ProtocolExec;
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 = <org.apache.hc.core.http.Method: org.apache.hc.core.http.Method CONNECT>;
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: java.lang.String getMethod()>();
v = virtualinvoke v.<org.apache.hc.core.http.Method: boolean isSame(java.lang.String)>(v);
if v == 0 goto label;
v = new org.apache.hc.core.http.ProtocolException;
specialinvoke v.<org.apache.hc.core.http.ProtocolException: void <init>(java.lang.String)>("Direct execution of CONNECT is not allowed");
throw v;
label:
v = v.<org.apache.hc.client.http.classic.ExecChain$Scope: java.lang.String exchangeId>;
v = v.<org.apache.hc.client.http.classic.ExecChain$Scope: org.apache.hc.client.http.HttpRoute route>;
v = v.<org.apache.hc.client.http.classic.ExecChain$Scope: org.apache.hc.client.http.protocol.HttpClientContext clientContext>;
v = v.<org.apache.hc.client.http.classic.ExecChain$Scope: org.apache.hc.client.http.classic.ExecRuntime execRuntime>;
v = virtualinvoke v.<org.apache.hc.client.http.HttpRoute: org.apache.hc.core.http.HttpHost getTargetHost()>();
v = virtualinvoke v.<org.apache.hc.client.http.HttpRoute: org.apache.hc.core.http.HttpHost getProxyHost()>();
label:
if v == null goto label;
v = virtualinvoke v.<org.apache.hc.client.http.HttpRoute: boolean isTunnelled()>();
if v != 0 goto label;
v = staticinvoke <org.apache.hc.core.http.io.support.ClassicRequestBuilder: org.apache.hc.core.http.io.support.ClassicRequestBuilder copy(org.apache.hc.core.http.ClassicHttpRequest)>(v);
v = virtualinvoke v.<org.apache.hc.core.http.io.support.ClassicRequestBuilder: org.apache.hc.core.net.URIAuthority getAuthority()>();
if v != null goto label;
v = new org.apache.hc.core.net.URIAuthority;
specialinvoke v.<org.apache.hc.core.net.URIAuthority: void <init>(org.apache.hc.core.net.NamedEndpoint)>(v);
virtualinvoke v.<org.apache.hc.core.http.io.support.ClassicRequestBuilder: org.apache.hc.core.http.io.support.ClassicRequestBuilder setAuthority(org.apache.hc.core.net.URIAuthority)>(v);
label:
virtualinvoke v.<org.apache.hc.core.http.io.support.ClassicRequestBuilder: org.apache.hc.core.http.io.support.ClassicRequestBuilder setAbsoluteRequestUri(boolean)>(1);
v = virtualinvoke v.<org.apache.hc.core.http.io.support.ClassicRequestBuilder: org.apache.hc.core.http.ClassicHttpRequest build()>();
goto label;
label:
v = v;
label:
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: java.lang.String getScheme()>();
if v != null goto label;
v = virtualinvoke v.<org.apache.hc.core.http.HttpHost: java.lang.String getSchemeName()>();
interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: void setScheme(java.lang.String)>(v);
label:
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: org.apache.hc.core.net.URIAuthority getAuthority()>();
if v != null goto label;
v = new org.apache.hc.core.net.URIAuthority;
specialinvoke v.<org.apache.hc.core.net.URIAuthority: void <init>(org.apache.hc.core.net.NamedEndpoint)>(v);
interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: void setAuthority(org.apache.hc.core.net.URIAuthority)>(v);
label:
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: org.apache.hc.core.net.URIAuthority getAuthority()>();
v = virtualinvoke v.<org.apache.hc.client.http.protocol.HttpClientContext: org.apache.hc.client.http.auth.CredentialsProvider getCredentialsProvider()>();
v = v instanceof org.apache.hc.client.http.auth.CredentialsStore;
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: java.lang.String getScheme()>();
staticinvoke <org.apache.hc.client.http.impl.AuthSupport: void extractFromAuthority(java.lang.String,org.apache.hc.core.net.URIAuthority,org.apache.hc.client.http.auth.CredentialsStore)>(v, v, v);
label:
v = new org.apache.hc.core.http.HttpHost;
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: java.lang.String getScheme()>();
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: org.apache.hc.core.net.URIAuthority getAuthority()>();
specialinvoke v.<org.apache.hc.core.http.HttpHost: void <init>(java.lang.String,org.apache.hc.core.net.NamedEndpoint)>(v, v);
v = virtualinvoke v.<org.apache.hc.client.http.protocol.HttpClientContext: org.apache.hc.client.http.auth.AuthExchange getAuthExchange(org.apache.hc.core.http.HttpHost)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.hc.client.http.protocol.HttpClientContext: org.apache.hc.client.http.auth.AuthExchange getAuthExchange(org.apache.hc.core.http.HttpHost)>(v);
goto label;
label:
v = new org.apache.hc.client.http.auth.AuthExchange;
specialinvoke v.<org.apache.hc.client.http.auth.AuthExchange: void <init>()>();
label:
v = v;
staticinvoke <org.apache.hc.client.http.impl.classic.RequestEntityProxy: void enhance(org.apache.hc.core.http.ClassicHttpRequest)>(v);
label:
virtualinvoke v.<org.apache.hc.client.http.protocol.HttpClientContext: java.lang.Object setAttribute(java.lang.String,java.lang.Object)>("http.route", v);
virtualinvoke v.<org.apache.hc.client.http.protocol.HttpClientContext: java.lang.Object setAttribute(java.lang.String,java.lang.Object)>("http.request", v);
v = v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.core.http.protocol.HttpProcessor httpProcessor>;
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: org.apache.hc.core.http.HttpEntity getEntity()>();
interfaceinvoke v.<org.apache.hc.core.http.protocol.HttpProcessor: void process(org.apache.hc.core.http.HttpRequest,org.apache.hc.core.http.EntityDetails,org.apache.hc.core.http.protocol.HttpContext)>(v, v, v);
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: boolean containsHeader(java.lang.String)>("Authorization");
if v != 0 goto label;
v = <org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.hc.client.http.auth.AuthExchange: org.apache.hc.client.http.auth.AuthExchange$State getState()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("{} target auth state: {}", v, v);
label:
v = v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.impl.auth.HttpAuthenticator authenticator>;
v = <org.apache.hc.client.http.auth.ChallengeType: org.apache.hc.client.http.auth.ChallengeType TARGET>;
virtualinvoke v.<org.apache.hc.client.http.impl.auth.HttpAuthenticator: void addAuthResponse(org.apache.hc.core.http.HttpHost,org.apache.hc.client.http.auth.ChallengeType,org.apache.hc.core.http.HttpRequest,org.apache.hc.client.http.auth.AuthExchange,org.apache.hc.core.http.protocol.HttpContext)>(v, v, v, v, v);
label:
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: boolean containsHeader(java.lang.String)>("Proxy-Authorization");
if v != 0 goto label;
v = virtualinvoke v.<org.apache.hc.client.http.HttpRoute: boolean isTunnelled()>();
if v != 0 goto label;
v = <org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.hc.client.http.auth.AuthExchange: org.apache.hc.client.http.auth.AuthExchange$State getState()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("{} proxy auth state: {}", v, v);
label:
v = v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.impl.auth.HttpAuthenticator authenticator>;
v = <org.apache.hc.client.http.auth.ChallengeType: org.apache.hc.client.http.auth.ChallengeType PROXY>;
virtualinvoke v.<org.apache.hc.client.http.impl.auth.HttpAuthenticator: void addAuthResponse(org.apache.hc.core.http.HttpHost,org.apache.hc.client.http.auth.ChallengeType,org.apache.hc.core.http.HttpRequest,org.apache.hc.client.http.auth.AuthExchange,org.apache.hc.core.http.protocol.HttpContext)>(v, v, v, v, 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);
virtualinvoke v.<org.apache.hc.client.http.protocol.HttpClientContext: java.lang.Object setAttribute(java.lang.String,java.lang.Object)>("http.response", v);
v = v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.core.http.protocol.HttpProcessor httpProcessor>;
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpResponse: org.apache.hc.core.http.HttpEntity getEntity()>();
interfaceinvoke v.<org.apache.hc.core.http.protocol.HttpProcessor: void process(org.apache.hc.core.http.HttpResponse,org.apache.hc.core.http.EntityDetails,org.apache.hc.core.http.protocol.HttpContext)>(v, v, v);
v = <org.apache.hc.core.http.Method: org.apache.hc.core.http.Method TRACE>;
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: java.lang.String getMethod()>();
v = virtualinvoke v.<org.apache.hc.core.http.Method: boolean isSame(java.lang.String)>(v);
if v == 0 goto label;
staticinvoke <org.apache.hc.client.http.impl.classic.ResponseEntityProxy: void enhance(org.apache.hc.core.http.ClassicHttpResponse,org.apache.hc.client.http.classic.ExecRuntime)>(v, v);
label:
return v;
label:
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: org.apache.hc.core.http.HttpEntity getEntity()>();
if v == null goto label;
v = interfaceinvoke v.<org.apache.hc.core.http.HttpEntity: boolean isRepeatable()>();
if v != 0 goto label;
v = <org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("{} Cannot retry non-repeatable request", v);
label:
staticinvoke <org.apache.hc.client.http.impl.classic.ResponseEntityProxy: void enhance(org.apache.hc.core.http.ClassicHttpResponse,org.apache.hc.client.http.classic.ExecRuntime)>(v, v);
label:
return v;
label:
v = specialinvoke v.<org.apache.hc.client.http.impl.classic.ProtocolExec: boolean needAuthentication(org.apache.hc.client.http.auth.AuthExchange,org.apache.hc.client.http.auth.AuthExchange,org.apache.hc.client.http.HttpRoute,org.apache.hc.core.http.ClassicHttpRequest,org.apache.hc.core.http.HttpResponse,org.apache.hc.client.http.protocol.HttpClientContext)>(v, v, v, v, v, v);
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpResponse: org.apache.hc.core.http.HttpEntity getEntity()>();
v = interfaceinvoke v.<org.apache.hc.client.http.classic.ExecRuntime: boolean isConnectionReusable()>();
if v == 0 goto label;
staticinvoke <org.apache.hc.core.http.io.entity.EntityUtils: void consume(org.apache.hc.core.http.HttpEntity)>(v);
goto label;
label:
interfaceinvoke v.<org.apache.hc.client.http.classic.ExecRuntime: void disconnectEndpoint()>();
v = virtualinvoke v.<org.apache.hc.client.http.auth.AuthExchange: org.apache.hc.client.http.auth.AuthExchange$State getState()>();
v = <org.apache.hc.client.http.auth.AuthExchange$State: org.apache.hc.client.http.auth.AuthExchange$State SUCCESS>;
if v != v goto label;
v = virtualinvoke v.<org.apache.hc.client.http.auth.AuthExchange: boolean isConnectionBased()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("{} resetting proxy auth state", v);
label:
virtualinvoke v.<org.apache.hc.client.http.auth.AuthExchange: void reset()>();
label:
v = virtualinvoke v.<org.apache.hc.client.http.auth.AuthExchange: org.apache.hc.client.http.auth.AuthExchange$State getState()>();
v = <org.apache.hc.client.http.auth.AuthExchange$State: org.apache.hc.client.http.auth.AuthExchange$State SUCCESS>;
if v != v goto label;
v = virtualinvoke v.<org.apache.hc.client.http.auth.AuthExchange: boolean isConnectionBased()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("{} resetting target auth state", v);
label:
virtualinvoke v.<org.apache.hc.client.http.auth.AuthExchange: void reset()>();
label:
v = v.<org.apache.hc.client.http.classic.ExecChain$Scope: org.apache.hc.core.http.ClassicHttpRequest originalRequest>;
v = newarray (org.apache.hc.core.http.Header)[0];
interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: void setHeaders(org.apache.hc.core.http.Header[])>(v);
v = interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: java.util.Iterator headerIterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
interfaceinvoke v.<org.apache.hc.core.http.ClassicHttpRequest: void addHeader(org.apache.hc.core.http.Header)>(v);
goto label;
label:
staticinvoke <org.apache.hc.client.http.impl.classic.ResponseEntityProxy: void enhance(org.apache.hc.core.http.ClassicHttpResponse,org.apache.hc.client.http.classic.ExecRuntime)>(v, v);
label:
return v;
label:
v := @caughtexception;
interfaceinvoke v.<org.apache.hc.client.http.classic.ExecRuntime: void discardEndpoint()>();
throw v;
label:
v := @caughtexception;
interfaceinvoke v.<org.apache.hc.client.http.classic.ExecRuntime: void discardEndpoint()>();
v = virtualinvoke v.<org.apache.hc.client.http.protocol.HttpClientContext: java.util.Map getAuthExchanges()>();
v = interfaceinvoke v.<java.util.Map: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.hc.client.http.auth.AuthExchange: boolean isConnectionBased()>();
if v == 0 goto label;
virtualinvoke v.<org.apache.hc.client.http.auth.AuthExchange: void reset()>();
goto label;
label:
throw v;
catch org.apache.hc.core.http.HttpException from label to label with label;
catch org.apache.hc.core.http.HttpException from label to label with label;
catch org.apache.hc.core.http.HttpException from label to label with label;
catch java.lang.RuntimeException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.lang.RuntimeException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.lang.RuntimeException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.lang.RuntimeException from label to label with label;
catch java.io.IOException from label to label with label;
}
private boolean needAuthentication(org.apache.hc.client.http.auth.AuthExchange, org.apache.hc.client.http.auth.AuthExchange, org.apache.hc.client.http.HttpRoute, org.apache.hc.core.http.ClassicHttpRequest, org.apache.hc.core.http.HttpResponse, org.apache.hc.client.http.protocol.HttpClientContext)
{
org.apache.hc.client.http.protocol.HttpClientContext v;
org.apache.hc.client.http.AuthenticationStrategy v, v;
org.apache.hc.client.http.auth.AuthExchange v, v;
org.apache.hc.core.http.HttpResponse v;
org.apache.hc.client.http.config.RequestConfig v;
boolean v, v, v, v, v;
org.apache.hc.client.http.impl.auth.HttpAuthenticator v, v, v, v;
org.apache.hc.client.http.HttpRoute v;
org.apache.hc.core.http.ClassicHttpRequest v;
org.apache.hc.core.http.HttpHost v, v;
org.apache.hc.client.http.auth.ChallengeType v, v, v, v;
org.apache.hc.client.http.impl.classic.ProtocolExec v;
v := @this: org.apache.hc.client.http.impl.classic.ProtocolExec;
v := @parameter: org.apache.hc.client.http.auth.AuthExchange;
v := @parameter: org.apache.hc.client.http.auth.AuthExchange;
v := @parameter: org.apache.hc.client.http.HttpRoute;
v := @parameter: org.apache.hc.core.http.ClassicHttpRequest;
v := @parameter: org.apache.hc.core.http.HttpResponse;
v := @parameter: org.apache.hc.client.http.protocol.HttpClientContext;
v = virtualinvoke v.<org.apache.hc.client.http.protocol.HttpClientContext: org.apache.hc.client.http.config.RequestConfig getRequestConfig()>();
v = virtualinvoke v.<org.apache.hc.client.http.config.RequestConfig: boolean isAuthenticationEnabled()>();
if v == 0 goto label;
v = staticinvoke <org.apache.hc.client.http.impl.AuthSupport: org.apache.hc.core.http.HttpHost resolveAuthTarget(org.apache.hc.core.http.HttpRequest,org.apache.hc.client.http.HttpRoute)>(v, v);
v = v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.impl.auth.HttpAuthenticator authenticator>;
v = <org.apache.hc.client.http.auth.ChallengeType: org.apache.hc.client.http.auth.ChallengeType TARGET>;
v = virtualinvoke v.<org.apache.hc.client.http.impl.auth.HttpAuthenticator: boolean isChallenged(org.apache.hc.core.http.HttpHost,org.apache.hc.client.http.auth.ChallengeType,org.apache.hc.core.http.HttpResponse,org.apache.hc.client.http.auth.AuthExchange,org.apache.hc.core.http.protocol.HttpContext)>(v, v, v, v, v);
v = virtualinvoke v.<org.apache.hc.client.http.HttpRoute: org.apache.hc.core.http.HttpHost getProxyHost()>();
if v != null goto label;
v = virtualinvoke v.<org.apache.hc.client.http.HttpRoute: org.apache.hc.core.http.HttpHost getTargetHost()>();
label:
v = v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.impl.auth.HttpAuthenticator authenticator>;
v = <org.apache.hc.client.http.auth.ChallengeType: org.apache.hc.client.http.auth.ChallengeType PROXY>;
v = virtualinvoke v.<org.apache.hc.client.http.impl.auth.HttpAuthenticator: boolean isChallenged(org.apache.hc.core.http.HttpHost,org.apache.hc.client.http.auth.ChallengeType,org.apache.hc.core.http.HttpResponse,org.apache.hc.client.http.auth.AuthExchange,org.apache.hc.core.http.protocol.HttpContext)>(v, v, v, v, v);
if v == 0 goto label;
v = v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.impl.auth.HttpAuthenticator authenticator>;
v = <org.apache.hc.client.http.auth.ChallengeType: org.apache.hc.client.http.auth.ChallengeType TARGET>;
v = v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.AuthenticationStrategy targetAuthStrategy>;
v = virtualinvoke v.<org.apache.hc.client.http.impl.auth.HttpAuthenticator: boolean updateAuthState(org.apache.hc.core.http.HttpHost,org.apache.hc.client.http.auth.ChallengeType,org.apache.hc.core.http.HttpResponse,org.apache.hc.client.http.AuthenticationStrategy,org.apache.hc.client.http.auth.AuthExchange,org.apache.hc.core.http.protocol.HttpContext)>(v, v, v, v, v, v);
return v;
label:
if v == 0 goto label;
v = v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.impl.auth.HttpAuthenticator authenticator>;
v = <org.apache.hc.client.http.auth.ChallengeType: org.apache.hc.client.http.auth.ChallengeType PROXY>;
v = v.<org.apache.hc.client.http.impl.classic.ProtocolExec: org.apache.hc.client.http.AuthenticationStrategy proxyAuthStrategy>;
v = virtualinvoke v.<org.apache.hc.client.http.impl.auth.HttpAuthenticator: boolean updateAuthState(org.apache.hc.core.http.HttpHost,org.apache.hc.client.http.auth.ChallengeType,org.apache.hc.core.http.HttpResponse,org.apache.hc.client.http.AuthenticationStrategy,org.apache.hc.client.http.auth.AuthExchange,org.apache.hc.core.http.protocol.HttpContext)>(v, v, v, v, v, v);
return v;
label:
return 0;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/hc/client5/http/impl/classic/ProtocolExec;");
<org.apache.hc.client.http.impl.classic.ProtocolExec: org.slf4j.Logger LOG> = v;
return;
}
}