final class org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator extends java.lang.Object implements org.apache.hc.client.http.nio.AsyncClientConnectionOperator
{
private final org.apache.hc.client.http.SchemePortResolver schemePortResolver;
private final org.apache.hc.client.http.impl.nio.MultihomeIOSessionRequester sessionRequester;
private final org.apache.hc.core.http.config.Lookup tlsStrategyLookup;
void <init>(org.apache.hc.core.http.config.Lookup, org.apache.hc.client.http.SchemePortResolver, org.apache.hc.client.http.DnsResolver)
{
org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator v;
org.apache.hc.client.http.impl.nio.MultihomeIOSessionRequester v;
org.apache.hc.core.http.config.Lookup v;
java.lang.Object v;
org.apache.hc.client.http.SchemePortResolver v, v;
org.apache.hc.client.http.DnsResolver v;
v := @this: org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator;
v := @parameter: org.apache.hc.core.http.config.Lookup;
v := @parameter: org.apache.hc.client.http.SchemePortResolver;
v := @parameter: org.apache.hc.client.http.DnsResolver;
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, "TLS strategy lookup");
v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator: org.apache.hc.core.http.config.Lookup tlsStrategyLookup> = v;
if v == null goto label;
v = v;
goto label;
label:
v = <org.apache.hc.client.http.impl.DefaultSchemePortResolver: org.apache.hc.client.http.impl.DefaultSchemePortResolver INSTANCE>;
label:
v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator: org.apache.hc.client.http.SchemePortResolver schemePortResolver> = v;
v = new org.apache.hc.client.http.impl.nio.MultihomeIOSessionRequester;
specialinvoke v.<org.apache.hc.client.http.impl.nio.MultihomeIOSessionRequester: void <init>(org.apache.hc.client.http.DnsResolver)>(v);
v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator: org.apache.hc.client.http.impl.nio.MultihomeIOSessionRequester sessionRequester> = v;
return;
}
public java.util.concurrent.Future connect(org.apache.hc.core.reactor.ConnectionInitiator, org.apache.hc.core.http.HttpHost, java.net.SocketAddress, org.apache.hc.core.util.Timeout, java.lang.Object, org.apache.hc.core.concurrent.FutureCallback)
{
java.net.SocketAddress v;
org.apache.hc.core.http.config.Lookup v, v;
java.net.InetAddress v;
java.util.concurrent.Future v;
org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator$1 v;
int v;
org.apache.hc.core.concurrent.FutureCallback v;
org.apache.hc.client.http.SchemePortResolver v;
java.lang.String v;
org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator v;
org.apache.hc.core.reactor.ConnectionInitiator v;
org.apache.hc.core.concurrent.ComplexFuture v;
java.net.InetSocketAddress v;
org.apache.hc.core.util.Timeout v;
org.apache.hc.core.http.HttpHost v, v;
org.apache.hc.client.http.impl.nio.MultihomeIOSessionRequester v;
java.lang.Object v, v;
org.apache.hc.core.http.nio.ssl.TlsStrategy v;
v := @this: org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator;
v := @parameter: org.apache.hc.core.reactor.ConnectionInitiator;
v := @parameter: org.apache.hc.core.http.HttpHost;
v := @parameter: java.net.SocketAddress;
v := @parameter: org.apache.hc.core.util.Timeout;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.hc.core.concurrent.FutureCallback;
staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Connection initiator");
staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Host");
v = new org.apache.hc.core.concurrent.ComplexFuture;
specialinvoke v.<org.apache.hc.core.concurrent.ComplexFuture: void <init>(org.apache.hc.core.concurrent.FutureCallback)>(v);
v = v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator: org.apache.hc.client.http.SchemePortResolver schemePortResolver>;
v = staticinvoke <org.apache.hc.client.http.routing.RoutingSupport: org.apache.hc.core.http.HttpHost normalize(org.apache.hc.core.http.HttpHost,org.apache.hc.client.http.SchemePortResolver)>(v, v);
v = virtualinvoke v.<org.apache.hc.core.http.HttpHost: java.net.InetAddress getAddress()>();
v = v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator: org.apache.hc.core.http.config.Lookup tlsStrategyLookup>;
if v == null goto label;
v = v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator: org.apache.hc.core.http.config.Lookup tlsStrategyLookup>;
v = virtualinvoke v.<org.apache.hc.core.http.HttpHost: java.lang.String getSchemeName()>();
v = interfaceinvoke v.<org.apache.hc.core.http.config.Lookup: java.lang.Object lookup(java.lang.String)>(v);
goto label;
label:
v = null;
label:
v = v;
v = v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator: org.apache.hc.client.http.impl.nio.MultihomeIOSessionRequester sessionRequester>;
if v == null goto label;
v = new java.net.InetSocketAddress;
v = virtualinvoke v.<org.apache.hc.core.http.HttpHost: int getPort()>();
specialinvoke v.<java.net.InetSocketAddress: void <init>(java.net.InetAddress,int)>(v, v);
goto label;
label:
v = null;
label:
v = new org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator$1;
specialinvoke v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator$1: void <init>(org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator,org.apache.hc.core.http.nio.ssl.TlsStrategy,org.apache.hc.core.http.HttpHost,java.lang.Object,org.apache.hc.core.util.Timeout,org.apache.hc.core.concurrent.ComplexFuture)>(v, v, v, v, v, v);
v = virtualinvoke v.<org.apache.hc.client.http.impl.nio.MultihomeIOSessionRequester: java.util.concurrent.Future connect(org.apache.hc.core.reactor.ConnectionInitiator,org.apache.hc.core.net.NamedEndpoint,java.net.SocketAddress,java.net.SocketAddress,org.apache.hc.core.util.Timeout,java.lang.Object,org.apache.hc.core.concurrent.FutureCallback)>(v, v, v, v, v, v, v);
virtualinvoke v.<org.apache.hc.core.concurrent.ComplexFuture: void setDependency(java.util.concurrent.Future)>(v);
return v;
}
public void upgrade(org.apache.hc.client.http.nio.ManagedAsyncClientConnection, org.apache.hc.core.http.HttpHost, java.lang.Object)
{
org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator v;
org.apache.hc.client.http.nio.ManagedAsyncClientConnection v;
java.net.SocketAddress v, v;
org.apache.hc.core.http.config.Lookup v, v;
org.apache.hc.core.http.HttpHost v;
java.lang.Object v, v;
java.lang.String v;
v := @this: org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator;
v := @parameter: org.apache.hc.client.http.nio.ManagedAsyncClientConnection;
v := @parameter: org.apache.hc.core.http.HttpHost;
v := @parameter: java.lang.Object;
v = v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator: org.apache.hc.core.http.config.Lookup tlsStrategyLookup>;
if v == null goto label;
v = v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator: org.apache.hc.core.http.config.Lookup tlsStrategyLookup>;
v = virtualinvoke v.<org.apache.hc.core.http.HttpHost: java.lang.String getSchemeName()>();
v = interfaceinvoke v.<org.apache.hc.core.http.config.Lookup: java.lang.Object lookup(java.lang.String)>(v);
goto label;
label:
v = null;
label:
if v == null goto label;
v = interfaceinvoke v.<org.apache.hc.client.http.nio.ManagedAsyncClientConnection: java.net.SocketAddress getLocalAddress()>();
v = interfaceinvoke v.<org.apache.hc.client.http.nio.ManagedAsyncClientConnection: java.net.SocketAddress getRemoteAddress()>();
interfaceinvoke v.<org.apache.hc.core.http.nio.ssl.TlsStrategy: boolean upgrade(org.apache.hc.core.reactor.ssl.TransportSecurityLayer,org.apache.hc.core.http.HttpHost,java.net.SocketAddress,java.net.SocketAddress,java.lang.Object,org.apache.hc.core.util.Timeout)>(v, v, v, v, v, null);
label:
return;
}
}