public class org.apache.http.impl.conn.DefaultHttpClientConnectionOperator extends java.lang.Object implements org.apache.http.conn.HttpClientConnectionOperator
{
static final java.lang.String SOCKET_FACTORY_REGISTRY;
private final org.apache.commons.logging.Log log;
private final org.apache.http.config.Lookup socketFactoryRegistry;
private final org.apache.http.conn.SchemePortResolver schemePortResolver;
private final org.apache.http.conn.DnsResolver dnsResolver;
public void <init>(org.apache.http.config.Lookup, org.apache.http.conn.SchemePortResolver, org.apache.http.conn.DnsResolver)
{
org.apache.http.impl.conn.DefaultHttpClientConnectionOperator v;
org.apache.http.conn.SchemePortResolver v, v;
org.apache.http.conn.DnsResolver v, v;
org.apache.http.config.Lookup v;
java.lang.Class v;
org.apache.commons.logging.Log v;
v := @this: org.apache.http.impl.conn.DefaultHttpClientConnectionOperator;
v := @parameter: org.apache.http.config.Lookup;
v := @parameter: org.apache.http.conn.SchemePortResolver;
v := @parameter: org.apache.http.conn.DnsResolver;
specialinvoke v.<java.lang.Object: void <init>()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.commons.logging.LogFactory: org.apache.commons.logging.Log getLog(java.lang.Class)>(v);
v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.commons.logging.Log log> = v;
staticinvoke <org.apache.http.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Socket factory registry");
v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.http.config.Lookup socketFactoryRegistry> = v;
if v == null goto label;
v = v;
goto label;
label:
v = <org.apache.http.impl.conn.DefaultSchemePortResolver: org.apache.http.impl.conn.DefaultSchemePortResolver INSTANCE>;
label:
v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.http.conn.SchemePortResolver schemePortResolver> = v;
if v == null goto label;
v = v;
goto label;
label:
v = <org.apache.http.impl.conn.SystemDefaultDnsResolver: org.apache.http.impl.conn.SystemDefaultDnsResolver INSTANCE>;
label:
v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.http.conn.DnsResolver dnsResolver> = v;
return;
}
private org.apache.http.config.Lookup getSocketFactoryRegistry(org.apache.http.protocol.HttpContext)
{
org.apache.http.impl.conn.DefaultHttpClientConnectionOperator v;
java.lang.Object v;
org.apache.http.protocol.HttpContext v;
v := @this: org.apache.http.impl.conn.DefaultHttpClientConnectionOperator;
v := @parameter: org.apache.http.protocol.HttpContext;
v = interfaceinvoke v.<org.apache.http.protocol.HttpContext: java.lang.Object getAttribute(java.lang.String)>("http.socket-factory-registry");
if v != null goto label;
v = v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.http.config.Lookup socketFactoryRegistry>;
label:
return v;
}
public void connect(org.apache.http.conn.ManagedHttpClientConnection, org.apache.http.HttpHost, java.net.InetSocketAddress, int, org.apache.http.config.SocketConfig, org.apache.http.protocol.HttpContext) throws java.io.IOException
{
java.net.InetAddress[] v, v;
org.apache.http.config.SocketConfig v;
org.apache.http.conn.HttpHostConnectException v;
java.net.InetAddress v, v, v;
org.apache.http.config.Lookup v;
boolean v, v, v, v, v, v, v, v, v;
org.apache.http.impl.conn.DefaultHttpClientConnectionOperator v;
java.net.InetSocketAddress v, v;
java.net.NoRouteToHostException v;
java.net.Socket v, v;
org.apache.http.conn.SchemePortResolver v;
org.apache.http.conn.DnsResolver v;
org.apache.http.conn.ConnectTimeoutException v, v;
java.net.SocketTimeoutException v;
int v, v, v, v, v, v, v, v, v, v, v, v;
java.net.ConnectException v;
java.lang.String v, v, v, v, v, v, v, v, v;
java.io.IOException v;
org.apache.http.protocol.HttpContext v;
java.lang.Object v;
org.apache.commons.logging.Log v, v, v, v, v, v;
org.apache.http.conn.ManagedHttpClientConnection v;
org.apache.http.HttpHost v;
org.apache.http.conn.UnsupportedSchemeException v;
v := @this: org.apache.http.impl.conn.DefaultHttpClientConnectionOperator;
v := @parameter: org.apache.http.conn.ManagedHttpClientConnection;
v := @parameter: org.apache.http.HttpHost;
v := @parameter: java.net.InetSocketAddress;
v := @parameter: int;
v := @parameter: org.apache.http.config.SocketConfig;
v := @parameter: org.apache.http.protocol.HttpContext;
v = specialinvoke v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.http.config.Lookup getSocketFactoryRegistry(org.apache.http.protocol.HttpContext)>(v);
v = virtualinvoke v.<org.apache.http.HttpHost: java.lang.String getSchemeName()>();
v = interfaceinvoke v.<org.apache.http.config.Lookup: java.lang.Object lookup(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.http.conn.UnsupportedSchemeException;
v = virtualinvoke v.<org.apache.http.HttpHost: java.lang.String getSchemeName()>();
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[])>("\u protocol is not supported");
specialinvoke v.<org.apache.http.conn.UnsupportedSchemeException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.apache.http.HttpHost: java.net.InetAddress getAddress()>();
if v == null goto label;
v = newarray (java.net.InetAddress)[1];
v = virtualinvoke v.<org.apache.http.HttpHost: java.net.InetAddress getAddress()>();
v[0] = v;
goto label;
label:
v = v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.http.conn.DnsResolver dnsResolver>;
v = virtualinvoke v.<org.apache.http.HttpHost: java.lang.String getHostName()>();
v = interfaceinvoke v.<org.apache.http.conn.DnsResolver: java.net.InetAddress[] resolve(java.lang.String)>(v);
label:
v = v;
v = v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.http.conn.SchemePortResolver schemePortResolver>;
v = interfaceinvoke v.<org.apache.http.conn.SchemePortResolver: int resolve(org.apache.http.HttpHost)>(v);
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = lengthof v;
v = v - 1;
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
v = interfaceinvoke v.<org.apache.http.conn.socket.ConnectionSocketFactory: java.net.Socket createSocket(org.apache.http.protocol.HttpContext)>(v);
v = virtualinvoke v.<org.apache.http.config.SocketConfig: int getSoTimeout()>();
virtualinvoke v.<java.net.Socket: void setSoTimeout(int)>(v);
v = virtualinvoke v.<org.apache.http.config.SocketConfig: boolean isSoReuseAddress()>();
virtualinvoke v.<java.net.Socket: void setReuseAddress(boolean)>(v);
v = virtualinvoke v.<org.apache.http.config.SocketConfig: boolean isTcpNoDelay()>();
virtualinvoke v.<java.net.Socket: void setTcpNoDelay(boolean)>(v);
v = virtualinvoke v.<org.apache.http.config.SocketConfig: boolean isSoKeepAlive()>();
virtualinvoke v.<java.net.Socket: void setKeepAlive(boolean)>(v);
v = virtualinvoke v.<org.apache.http.config.SocketConfig: int getRcvBufSize()>();
if v <= 0 goto label;
v = virtualinvoke v.<org.apache.http.config.SocketConfig: int getRcvBufSize()>();
virtualinvoke v.<java.net.Socket: void setReceiveBufferSize(int)>(v);
label:
v = virtualinvoke v.<org.apache.http.config.SocketConfig: int getSndBufSize()>();
if v <= 0 goto label;
v = virtualinvoke v.<org.apache.http.config.SocketConfig: int getSndBufSize()>();
virtualinvoke v.<java.net.Socket: void setSendBufferSize(int)>(v);
label:
v = virtualinvoke v.<org.apache.http.config.SocketConfig: int getSoLinger()>();
if v < 0 goto label;
virtualinvoke v.<java.net.Socket: void setSoLinger(boolean,int)>(1, v);
label:
interfaceinvoke v.<org.apache.http.conn.ManagedHttpClientConnection: void bind(java.net.Socket)>(v);
v = new java.net.InetSocketAddress;
specialinvoke v.<java.net.InetSocketAddress: void <init>(java.net.InetAddress,int)>(v, v);
v = v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.commons.logging.Log log>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.net.InetSocketAddress)>(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[])>("Connecting to \u0001");
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>(v);
label:
v = interfaceinvoke v.<org.apache.http.conn.socket.ConnectionSocketFactory: java.net.Socket connectSocket(int,java.net.Socket,org.apache.http.HttpHost,java.net.InetSocketAddress,java.net.InetSocketAddress,org.apache.http.protocol.HttpContext)>(v, v, v, v, v, v);
interfaceinvoke v.<org.apache.http.conn.ManagedHttpClientConnection: void bind(java.net.Socket)>(v);
v = v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.commons.logging.Log log>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.http.conn.ManagedHttpClientConnection)>(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[])>("Connection established \u0001");
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>(v);
label:
return;
label:
v := @caughtexception;
if v == 0 goto label;
v = new org.apache.http.conn.ConnectTimeoutException;
specialinvoke v.<org.apache.http.conn.ConnectTimeoutException: void <init>(java.io.IOException,org.apache.http.HttpHost,java.net.InetAddress[])>(v, v, v);
throw v;
label:
v := @caughtexception;
if v == 0 goto label;
v = virtualinvoke v.<java.net.ConnectException: java.lang.String getMessage()>();
v = "Connection timed out";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = new org.apache.http.conn.ConnectTimeoutException;
v = v;
specialinvoke v.<org.apache.http.conn.ConnectTimeoutException: void <init>(java.io.IOException,org.apache.http.HttpHost,java.net.InetAddress[])>(v, v, v);
goto label;
label:
v = new org.apache.http.conn.HttpHostConnectException;
v = v;
specialinvoke v.<org.apache.http.conn.HttpHostConnectException: void <init>(java.io.IOException,org.apache.http.HttpHost,java.net.InetAddress[])>(v, v, v);
label:
throw v;
label:
v := @caughtexception;
if v == 0 goto label;
throw v;
label:
v = v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.commons.logging.Log log>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isDebugEnabled()>();
if v == 0 goto label;
v = v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.commons.logging.Log log>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.net.InetSocketAddress)>(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[])>("Connect to \u timed out. Connection will be retried using another IP address");
interfaceinvoke v.<org.apache.commons.logging.Log: void debug(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
return;
catch java.net.SocketTimeoutException from label to label with label;
catch java.net.ConnectException from label to label with label;
catch java.net.NoRouteToHostException from label to label with label;
}
public void upgrade(org.apache.http.conn.ManagedHttpClientConnection, org.apache.http.HttpHost, org.apache.http.protocol.HttpContext) throws java.io.IOException
{
java.net.Socket v, v;
org.apache.http.conn.SchemePortResolver v;
org.apache.http.client.protocol.HttpClientContext v;
int v;
org.apache.http.config.Lookup v;
java.lang.String v, v, v, v, v, v;
boolean v;
org.apache.http.impl.conn.DefaultHttpClientConnectionOperator v;
org.apache.http.protocol.HttpContext v;
org.apache.http.conn.socket.ConnectionSocketFactory v;
java.lang.Object v;
org.apache.http.conn.ManagedHttpClientConnection v;
org.apache.http.HttpHost v;
org.apache.http.conn.UnsupportedSchemeException v, v;
v := @this: org.apache.http.impl.conn.DefaultHttpClientConnectionOperator;
v := @parameter: org.apache.http.conn.ManagedHttpClientConnection;
v := @parameter: org.apache.http.HttpHost;
v := @parameter: org.apache.http.protocol.HttpContext;
v = staticinvoke <org.apache.http.client.protocol.HttpClientContext: org.apache.http.client.protocol.HttpClientContext adapt(org.apache.http.protocol.HttpContext)>(v);
v = specialinvoke v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.http.config.Lookup getSocketFactoryRegistry(org.apache.http.protocol.HttpContext)>(v);
v = virtualinvoke v.<org.apache.http.HttpHost: java.lang.String getSchemeName()>();
v = interfaceinvoke v.<org.apache.http.config.Lookup: java.lang.Object lookup(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.http.conn.UnsupportedSchemeException;
v = virtualinvoke v.<org.apache.http.HttpHost: java.lang.String getSchemeName()>();
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[])>("\u protocol is not supported");
specialinvoke v.<org.apache.http.conn.UnsupportedSchemeException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v instanceof org.apache.http.conn.socket.LayeredConnectionSocketFactory;
if v != 0 goto label;
v = new org.apache.http.conn.UnsupportedSchemeException;
v = virtualinvoke v.<org.apache.http.HttpHost: java.lang.String getSchemeName()>();
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[])>("\u protocol does not support connection upgrade");
specialinvoke v.<org.apache.http.conn.UnsupportedSchemeException: void <init>(java.lang.String)>(v);
throw v;
label:
v = interfaceinvoke v.<org.apache.http.conn.ManagedHttpClientConnection: java.net.Socket getSocket()>();
v = v.<org.apache.http.impl.conn.DefaultHttpClientConnectionOperator: org.apache.http.conn.SchemePortResolver schemePortResolver>;
v = interfaceinvoke v.<org.apache.http.conn.SchemePortResolver: int resolve(org.apache.http.HttpHost)>(v);
v = virtualinvoke v.<org.apache.http.HttpHost: java.lang.String getHostName()>();
v = interfaceinvoke v.<org.apache.http.conn.socket.LayeredConnectionSocketFactory: java.net.Socket createLayeredSocket(java.net.Socket,java.lang.String,int,org.apache.http.protocol.HttpContext)>(v, v, v, v);
interfaceinvoke v.<org.apache.http.conn.ManagedHttpClientConnection: void bind(java.net.Socket)>(v);
return;
}
}