public class org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager extends java.lang.Object implements org.apache.hc.client.http.nio.AsyncClientConnectionManager, org.apache.hc.core.pool.ConnPoolControl
{
private static final org.slf4j.Logger LOG;
public static final int DEFAULT_MAX_TOTAL_CONNECTIONS;
public static final int DEFAULT_MAX_CONNECTIONS_PER_ROUTE;
private final org.apache.hc.core.pool.ManagedConnPool pool;
private final org.apache.hc.client.http.nio.AsyncClientConnectionOperator connectionOperator;
private final java.util.concurrent.atomic.AtomicBoolean closed;
private volatile org.apache.hc.core.util.TimeValue validateAfterInactivity;
private static final java.util.concurrent.atomic.AtomicLong COUNT;
public void <init>()
{
org.apache.hc.core.http.nio.ssl.TlsStrategy v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.http.config.Registry v;
org.apache.hc.core.http.config.RegistryBuilder v, v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v = staticinvoke <org.apache.hc.core.http.config.RegistryBuilder: org.apache.hc.core.http.config.RegistryBuilder create()>();
v = staticinvoke <org.apache.hc.client.http.ssl.DefaultClientTlsStrategy: org.apache.hc.core.http.nio.ssl.TlsStrategy getDefault()>();
v = virtualinvoke v.<org.apache.hc.core.http.config.RegistryBuilder: org.apache.hc.core.http.config.RegistryBuilder register(java.lang.String,java.lang.Object)>("https", v);
v = virtualinvoke v.<org.apache.hc.core.http.config.RegistryBuilder: org.apache.hc.core.http.config.Registry build()>();
specialinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: void <init>(org.apache.hc.core.http.config.Lookup)>(v);
return;
}
public void <init>(org.apache.hc.core.http.config.Lookup)
{
org.apache.hc.core.util.TimeValue v;
org.apache.hc.core.http.config.Lookup v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.PoolConcurrencyPolicy v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.core.http.config.Lookup;
v = <org.apache.hc.core.pool.PoolConcurrencyPolicy: org.apache.hc.core.pool.PoolConcurrencyPolicy STRICT>;
v = <org.apache.hc.core.util.TimeValue: org.apache.hc.core.util.TimeValue NEG_ONE_MILLISECOND>;
specialinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: void <init>(org.apache.hc.core.http.config.Lookup,org.apache.hc.core.pool.PoolConcurrencyPolicy,org.apache.hc.core.util.TimeValue)>(v, v, v);
return;
}
public void <init>(org.apache.hc.core.http.config.Lookup, org.apache.hc.core.pool.PoolConcurrencyPolicy, org.apache.hc.core.util.TimeValue)
{
org.apache.hc.core.util.TimeValue v;
org.apache.hc.core.pool.PoolReusePolicy v;
org.apache.hc.core.http.config.Lookup v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.PoolConcurrencyPolicy v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.core.http.config.Lookup;
v := @parameter: org.apache.hc.core.pool.PoolConcurrencyPolicy;
v := @parameter: org.apache.hc.core.util.TimeValue;
v = <org.apache.hc.core.pool.PoolReusePolicy: org.apache.hc.core.pool.PoolReusePolicy LIFO>;
specialinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: void <init>(org.apache.hc.core.http.config.Lookup,org.apache.hc.core.pool.PoolConcurrencyPolicy,org.apache.hc.core.pool.PoolReusePolicy,org.apache.hc.core.util.TimeValue)>(v, v, v, v);
return;
}
public void <init>(org.apache.hc.core.http.config.Lookup, org.apache.hc.core.pool.PoolConcurrencyPolicy, org.apache.hc.core.pool.PoolReusePolicy, org.apache.hc.core.util.TimeValue)
{
org.apache.hc.core.util.TimeValue v;
org.apache.hc.core.pool.PoolReusePolicy v;
org.apache.hc.core.http.config.Lookup v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.PoolConcurrencyPolicy v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.core.http.config.Lookup;
v := @parameter: org.apache.hc.core.pool.PoolConcurrencyPolicy;
v := @parameter: org.apache.hc.core.pool.PoolReusePolicy;
v := @parameter: org.apache.hc.core.util.TimeValue;
specialinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: void <init>(org.apache.hc.core.http.config.Lookup,org.apache.hc.core.pool.PoolConcurrencyPolicy,org.apache.hc.core.pool.PoolReusePolicy,org.apache.hc.core.util.TimeValue,org.apache.hc.client.http.SchemePortResolver,org.apache.hc.client.http.DnsResolver)>(v, v, v, v, null, null);
return;
}
public void <init>(org.apache.hc.core.http.config.Lookup, org.apache.hc.core.pool.PoolConcurrencyPolicy, org.apache.hc.core.pool.PoolReusePolicy, org.apache.hc.core.util.TimeValue, org.apache.hc.client.http.SchemePortResolver, org.apache.hc.client.http.DnsResolver)
{
org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator v;
org.apache.hc.core.util.TimeValue v;
org.apache.hc.core.pool.PoolReusePolicy v;
org.apache.hc.core.http.config.Lookup v;
org.apache.hc.core.pool.PoolConcurrencyPolicy v;
org.apache.hc.client.http.SchemePortResolver v;
org.apache.hc.client.http.DnsResolver v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.core.http.config.Lookup;
v := @parameter: org.apache.hc.core.pool.PoolConcurrencyPolicy;
v := @parameter: org.apache.hc.core.pool.PoolReusePolicy;
v := @parameter: org.apache.hc.core.util.TimeValue;
v := @parameter: org.apache.hc.client.http.SchemePortResolver;
v := @parameter: org.apache.hc.client.http.DnsResolver;
v = new org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator;
specialinvoke v.<org.apache.hc.client.http.impl.nio.DefaultAsyncClientConnectionOperator: void <init>(org.apache.hc.core.http.config.Lookup,org.apache.hc.client.http.SchemePortResolver,org.apache.hc.client.http.DnsResolver)>(v, v, v);
specialinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: void <init>(org.apache.hc.client.http.nio.AsyncClientConnectionOperator,org.apache.hc.core.pool.PoolConcurrencyPolicy,org.apache.hc.core.pool.PoolReusePolicy,org.apache.hc.core.util.TimeValue)>(v, v, v, v);
return;
}
protected void <init>(org.apache.hc.client.http.nio.AsyncClientConnectionOperator, org.apache.hc.core.pool.PoolConcurrencyPolicy, org.apache.hc.core.pool.PoolReusePolicy, org.apache.hc.core.util.TimeValue)
{
org.apache.hc.core.util.TimeValue v;
org.apache.hc.core.pool.PoolReusePolicy v;
org.apache.hc.client.http.nio.AsyncClientConnectionOperator v;
java.util.concurrent.atomic.AtomicBoolean v;
java.lang.IllegalArgumentException v;
org.apache.hc.core.pool.StrictConnPool v;
org.apache.hc.core.pool.PoolConcurrencyPolicy v, v;
org.apache.hc.core.pool.LaxConnPool v;
int[] v;
int v, v;
java.lang.Object v;
java.lang.String v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.client.http.nio.AsyncClientConnectionOperator;
v := @parameter: org.apache.hc.core.pool.PoolConcurrencyPolicy;
v := @parameter: org.apache.hc.core.pool.PoolReusePolicy;
v := @parameter: org.apache.hc.core.util.TimeValue;
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, "Connection operator");
v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.client.http.nio.AsyncClientConnectionOperator connectionOperator> = v;
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$3: int[] $SwitchMap$org$apache$hc$core5$pool$PoolConcurrencyPolicy>;
if v == null goto label;
v = v;
goto label;
label:
v = <org.apache.hc.core.pool.PoolConcurrencyPolicy: org.apache.hc.core.pool.PoolConcurrencyPolicy STRICT>;
label:
v = virtualinvoke v.<org.apache.hc.core.pool.PoolConcurrencyPolicy: int ordinal()>();
v = v[v];
lookupswitch(v)
{
case 1: goto label;
case 2: goto label;
default: goto label;
};
label:
v = new org.apache.hc.core.pool.StrictConnPool;
specialinvoke v.<org.apache.hc.core.pool.StrictConnPool: void <init>(int,int,org.apache.hc.core.util.TimeValue,org.apache.hc.core.pool.PoolReusePolicy,org.apache.hc.core.pool.ConnPoolListener)>(5, 25, v, v, null);
v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool> = v;
goto label;
label:
v = new org.apache.hc.core.pool.LaxConnPool;
specialinvoke v.<org.apache.hc.core.pool.LaxConnPool: void <init>(int,org.apache.hc.core.util.TimeValue,org.apache.hc.core.pool.PoolReusePolicy,org.apache.hc.core.pool.ConnPoolListener)>(5, v, v, null);
v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool> = v;
goto label;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.hc.core.pool.PoolConcurrencyPolicy)>(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[])>("Unexpected PoolConcurrencyPolicy value: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: java.util.concurrent.atomic.AtomicBoolean closed> = v;
return;
}
protected void <init>(org.apache.hc.core.pool.ManagedConnPool, org.apache.hc.client.http.nio.AsyncClientConnectionOperator)
{
org.apache.hc.client.http.nio.AsyncClientConnectionOperator v;
java.util.concurrent.atomic.AtomicBoolean v;
java.lang.Object v, v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.core.pool.ManagedConnPool;
v := @parameter: org.apache.hc.client.http.nio.AsyncClientConnectionOperator;
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, "Connection operator");
v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.client.http.nio.AsyncClientConnectionOperator connectionOperator> = v;
v = staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Connection pool");
v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool> = v;
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: java.util.concurrent.atomic.AtomicBoolean closed> = v;
return;
}
public void close()
{
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.io.CloseMode v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v = <org.apache.hc.core.io.CloseMode: org.apache.hc.core.io.CloseMode GRACEFUL>;
virtualinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: void close(org.apache.hc.core.io.CloseMode)>(v);
return;
}
public void close(org.apache.hc.core.io.CloseMode)
{
org.slf4j.Logger v, v, v;
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.hc.core.pool.ManagedConnPool v;
org.apache.hc.core.io.CloseMode v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
boolean v, v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.core.io.CloseMode;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean compareAndSet(boolean,boolean)>(0, 1);
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Shutdown connection pool {}", v);
label:
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: void close(org.apache.hc.core.io.CloseMode)>(v);
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Connection pool shut down");
label:
return;
}
private org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint cast(org.apache.hc.client.http.nio.AsyncConnectionEndpoint)
{
java.lang.IllegalStateException v;
java.lang.Class v;
org.apache.hc.client.http.nio.AsyncConnectionEndpoint v;
java.lang.String v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
boolean v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.client.http.nio.AsyncConnectionEndpoint;
v = v instanceof org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint;
if v == 0 goto label;
return v;
label:
v = new java.lang.IllegalStateException;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Class)>(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[])>("Unexpected endpoint class: \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
}
public java.util.concurrent.Future lease(java.lang.String, org.apache.hc.client.http.HttpRoute, java.lang.Object, org.apache.hc.core.util.Timeout, org.apache.hc.core.concurrent.FutureCallback)
{
java.lang.Object[] v;
org.slf4j.Logger v, v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$1 v;
org.apache.hc.core.util.Timeout v;
org.apache.hc.core.pool.ManagedConnPool v;
org.apache.hc.client.http.HttpRoute v;
org.apache.hc.core.concurrent.FutureCallback v;
java.lang.Object v;
java.lang.String v, v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
boolean v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: java.lang.String;
v := @parameter: org.apache.hc.client.http.HttpRoute;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.hc.core.util.Timeout;
v := @parameter: org.apache.hc.core.concurrent.FutureCallback;
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v[0] = v;
v[1] = v;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String formatStats(org.apache.hc.client.http.HttpRoute,java.lang.Object,org.apache.hc.core.pool.ConnPoolControl)>(v, v, v);
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("{} endpoint lease request ({}) {}", v);
label:
v = new org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$1;
specialinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$1: void <init>(org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager,org.apache.hc.core.concurrent.FutureCallback,org.apache.hc.client.http.HttpRoute,java.lang.Object,org.apache.hc.core.util.Timeout,java.lang.String)>(v, v, v, v, v, v);
return v;
}
public void release(org.apache.hc.client.http.nio.AsyncConnectionEndpoint, java.lang.Object, org.apache.hc.core.util.TimeValue)
{
org.apache.hc.core.pool.ManagedConnPool v, v, v, v;
org.apache.hc.core.io.ModalCloseable v;
boolean v, v, v, v, v, v, v, v;
org.apache.hc.core.util.TimeValue v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint v;
org.apache.hc.client.http.nio.AsyncConnectionEndpoint v;
java.lang.Throwable v;
java.lang.Object[] v;
org.apache.hc.core.pool.PoolEntry v;
java.lang.String v, v, v, v, v, v, v, v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.slf4j.Logger v, v, v, v, v, v, v, v;
java.lang.RuntimeException v;
java.lang.Object v, v, v, v, v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.client.http.nio.AsyncConnectionEndpoint;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.hc.core.util.TimeValue;
staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Managed endpoint");
staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Keep-alive time");
v = specialinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint cast(org.apache.hc.client.http.nio.AsyncConnectionEndpoint)>(v);
v = virtualinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint: org.apache.hc.core.pool.PoolEntry detach()>();
if v != null goto label;
return;
label:
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String getId(java.lang.Object)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("{} releasing endpoint", v);
label:
v = virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: org.apache.hc.core.io.ModalCloseable getConnection()>();
if v == null goto label;
v = interfaceinvoke v.<org.apache.hc.client.http.nio.ManagedAsyncClientConnection: boolean isOpen()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
label:
if v == 0 goto label;
virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: void updateState(java.lang.Object)>(v);
virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: void updateExpiry(org.apache.hc.core.util.TimeValue)>(v);
interfaceinvoke v.<org.apache.hc.client.http.nio.ManagedAsyncClientConnection: void passivate()>();
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = staticinvoke <org.apache.hc.core.util.TimeValue: boolean isPositive(org.apache.hc.core.util.TimeValue)>(v);
if v == 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.hc.core.util.TimeValue)>(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[])>("for \u0001");
goto label;
label:
v = "indefinitely";
label:
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String getId(java.lang.Object)>(v);
v[0] = v;
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String getId(java.lang.Object)>(v);
v[1] = v;
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("{} connection {} can be kept alive {}", v);
label:
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: void release(org.apache.hc.core.pool.PoolEntry,boolean)>(v, v);
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String getId(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: java.lang.Object getRoute()>();
v = virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: java.lang.Object getState()>();
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String formatStats(org.apache.hc.client.http.HttpRoute,java.lang.Object,org.apache.hc.core.pool.ConnPoolControl)>(v, v, v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("{} connection released {}", v, v);
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: void release(org.apache.hc.core.pool.PoolEntry,boolean)>(v, v);
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String getId(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: java.lang.Object getRoute()>();
v = virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: java.lang.Object getState()>();
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String formatStats(org.apache.hc.client.http.HttpRoute,java.lang.Object,org.apache.hc.core.pool.ConnPoolControl)>(v, v, v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("{} connection released {}", v, v);
label:
throw v;
label:
return;
catch java.lang.RuntimeException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public java.util.concurrent.Future connect(org.apache.hc.client.http.nio.AsyncConnectionEndpoint, org.apache.hc.core.reactor.ConnectionInitiator, org.apache.hc.core.util.Timeout, java.lang.Object, org.apache.hc.core.http.protocol.HttpContext, org.apache.hc.core.concurrent.FutureCallback)
{
java.lang.Object[] v;
org.apache.hc.core.http.protocol.HttpContext v;
org.apache.hc.core.pool.PoolEntry v;
org.apache.hc.client.http.nio.AsyncClientConnectionOperator v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$2 v;
java.util.concurrent.Future v;
org.apache.hc.core.concurrent.FutureCallback v;
java.lang.String v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
boolean v, v;
org.slf4j.Logger v, 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.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint v;
org.apache.hc.core.http.HttpHost v, v;
java.lang.Object v, v;
org.apache.hc.client.http.nio.AsyncConnectionEndpoint v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.client.http.nio.AsyncConnectionEndpoint;
v := @parameter: org.apache.hc.core.reactor.ConnectionInitiator;
v := @parameter: org.apache.hc.core.util.Timeout;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.hc.core.http.protocol.HttpContext;
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, "Endpoint");
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, "Timeout");
v = specialinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint cast(org.apache.hc.client.http.nio.AsyncConnectionEndpoint)>(v);
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 = virtualinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint: boolean isConnected()>();
if v == 0 goto label;
virtualinvoke v.<org.apache.hc.core.concurrent.ComplexFuture: boolean completed(java.lang.Object)>(v);
return v;
label:
v = virtualinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint: org.apache.hc.core.pool.PoolEntry getPoolEntry()>();
v = virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: java.lang.Object getRoute()>();
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 getProxyHost()>();
goto label;
label:
v = virtualinvoke v.<org.apache.hc.client.http.HttpRoute: org.apache.hc.core.http.HttpHost getTargetHost()>();
label:
v = virtualinvoke v.<org.apache.hc.client.http.HttpRoute: java.net.InetSocketAddress getLocalSocketAddress()>();
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String getId(java.lang.Object)>(v);
v[0] = v;
v[1] = v;
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("{} connecting endpoint to {} ({})", v);
label:
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.client.http.nio.AsyncClientConnectionOperator connectionOperator>;
v = new org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$2;
specialinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$2: void <init>(org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager,org.apache.hc.client.http.nio.AsyncConnectionEndpoint,org.apache.hc.core.pool.PoolEntry,org.apache.hc.core.concurrent.ComplexFuture,org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint)>(v, v, v, v, v);
v = interfaceinvoke v.<org.apache.hc.client.http.nio.AsyncClientConnectionOperator: 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)>(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.AsyncConnectionEndpoint, java.lang.Object, org.apache.hc.core.http.protocol.HttpContext)
{
org.apache.hc.core.http.protocol.HttpContext v;
org.apache.hc.core.pool.PoolEntry v;
org.apache.hc.client.http.nio.AsyncClientConnectionOperator v;
org.apache.hc.core.io.ModalCloseable v, v;
java.lang.String v, v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
boolean v;
org.slf4j.Logger v, v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint v;
org.apache.hc.core.http.HttpHost v;
java.lang.Object v, v;
org.apache.hc.client.http.nio.AsyncConnectionEndpoint v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.client.http.nio.AsyncConnectionEndpoint;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.hc.core.http.protocol.HttpContext;
staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Managed endpoint");
v = specialinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint cast(org.apache.hc.client.http.nio.AsyncConnectionEndpoint)>(v);
v = virtualinvoke v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager$InternalConnectionEndpoint: org.apache.hc.core.pool.PoolEntry getValidatedPoolEntry()>();
v = virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: java.lang.Object getRoute()>();
v = virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: org.apache.hc.core.io.ModalCloseable getConnection()>();
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.client.http.nio.AsyncClientConnectionOperator connectionOperator>;
v = virtualinvoke v.<org.apache.hc.core.pool.PoolEntry: org.apache.hc.core.io.ModalCloseable getConnection()>();
v = virtualinvoke v.<org.apache.hc.client.http.HttpRoute: org.apache.hc.core.http.HttpHost getTargetHost()>();
interfaceinvoke v.<org.apache.hc.client.http.nio.AsyncClientConnectionOperator: void upgrade(org.apache.hc.client.http.nio.ManagedAsyncClientConnection,org.apache.hc.core.http.HttpHost,java.lang.Object)>(v, v, v);
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG>;
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String getId(java.lang.Object)>(v);
v = staticinvoke <org.apache.hc.client.http.impl.ConnPoolSupport: java.lang.String getId(java.lang.Object)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("{} upgraded {}", v, v);
label:
return;
}
public java.util.Set getRoutes()
{
java.util.Set v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
v = interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: java.util.Set getRoutes()>();
return v;
}
public void setMaxTotal(int)
{
int v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: int;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: void setMaxTotal(int)>(v);
return;
}
public int getMaxTotal()
{
int v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
v = interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: int getMaxTotal()>();
return v;
}
public void setDefaultMaxPerRoute(int)
{
int v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: int;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: void setDefaultMaxPerRoute(int)>(v);
return;
}
public int getDefaultMaxPerRoute()
{
int v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
v = interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: int getDefaultMaxPerRoute()>();
return v;
}
public void setMaxPerRoute(org.apache.hc.client.http.HttpRoute, int)
{
org.apache.hc.client.http.HttpRoute v;
int v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.client.http.HttpRoute;
v := @parameter: int;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: void setMaxPerRoute(java.lang.Object,int)>(v, v);
return;
}
public int getMaxPerRoute(org.apache.hc.client.http.HttpRoute)
{
org.apache.hc.client.http.HttpRoute v;
int v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.client.http.HttpRoute;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
v = interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: int getMaxPerRoute(java.lang.Object)>(v);
return v;
}
public void closeIdle(org.apache.hc.core.util.TimeValue)
{
org.apache.hc.core.util.TimeValue v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.core.util.TimeValue;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: void closeIdle(org.apache.hc.core.util.TimeValue)>(v);
return;
}
public void closeExpired()
{
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: void closeExpired()>();
return;
}
public org.apache.hc.core.pool.PoolStats getTotalStats()
{
org.apache.hc.core.pool.PoolStats v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
v = interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: org.apache.hc.core.pool.PoolStats getTotalStats()>();
return v;
}
public org.apache.hc.core.pool.PoolStats getStats(org.apache.hc.client.http.HttpRoute)
{
org.apache.hc.client.http.HttpRoute v;
org.apache.hc.core.pool.PoolStats v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
org.apache.hc.core.pool.ManagedConnPool v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.client.http.HttpRoute;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.pool.ManagedConnPool pool>;
v = interfaceinvoke v.<org.apache.hc.core.pool.ManagedConnPool: org.apache.hc.core.pool.PoolStats getStats(java.lang.Object)>(v);
return v;
}
public org.apache.hc.core.util.TimeValue getValidateAfterInactivity()
{
org.apache.hc.core.util.TimeValue v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v = v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.util.TimeValue validateAfterInactivity>;
return v;
}
public void setValidateAfterInactivity(org.apache.hc.core.util.TimeValue)
{
org.apache.hc.core.util.TimeValue v;
org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager v;
v := @this: org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager;
v := @parameter: org.apache.hc.core.util.TimeValue;
v.<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.apache.hc.core.util.TimeValue validateAfterInactivity> = v;
return;
}
static void <clinit>()
{
java.util.concurrent.atomic.AtomicLong v;
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/hc/client5/http/impl/nio/PoolingAsyncClientConnectionManager;");
<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: org.slf4j.Logger LOG> = v;
v = new java.util.concurrent.atomic.AtomicLong;
specialinvoke v.<java.util.concurrent.atomic.AtomicLong: void <init>(long)>(0L);
<org.apache.hc.client.http.impl.nio.PoolingAsyncClientConnectionManager: java.util.concurrent.atomic.AtomicLong COUNT> = v;
return;
}
}