public final class org.apache.http.impl.client.IdleConnectionEvictor extends java.lang.Object
{
private final org.apache.http.conn.HttpClientConnectionManager connectionManager;
private final java.util.concurrent.ThreadFactory threadFactory;
private final java.lang.Thread thread;
private final long sleepTimeMs;
private final long maxIdleTimeMs;
private volatile java.lang.Exception exception;
public void <init>(org.apache.http.conn.HttpClientConnectionManager, java.util.concurrent.ThreadFactory, long, java.util.concurrent.TimeUnit, long, java.util.concurrent.TimeUnit)
{
org.apache.http.impl.client.IdleConnectionEvictor$1 v;
long v, v, v, v;
org.apache.http.conn.HttpClientConnectionManager v;
org.apache.http.impl.client.IdleConnectionEvictor v;
org.apache.http.impl.client.IdleConnectionEvictor$DefaultThreadFactory v;
java.util.concurrent.TimeUnit v, v;
java.lang.Thread v;
java.lang.Object v;
java.util.concurrent.ThreadFactory v, v, v;
v := @this: org.apache.http.impl.client.IdleConnectionEvictor;
v := @parameter: org.apache.http.conn.HttpClientConnectionManager;
v := @parameter: java.util.concurrent.ThreadFactory;
v := @parameter: long;
v := @parameter: java.util.concurrent.TimeUnit;
v := @parameter: long;
v := @parameter: java.util.concurrent.TimeUnit;
specialinvoke v.<java.lang.Object: void <init>()>();
v = staticinvoke <org.apache.http.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "Connection manager");
v.<org.apache.http.impl.client.IdleConnectionEvictor: org.apache.http.conn.HttpClientConnectionManager connectionManager> = v;
if v == null goto label;
v = v;
goto label;
label:
v = new org.apache.http.impl.client.IdleConnectionEvictor$DefaultThreadFactory;
v = v;
specialinvoke v.<org.apache.http.impl.client.IdleConnectionEvictor$DefaultThreadFactory: void <init>()>();
label:
v.<org.apache.http.impl.client.IdleConnectionEvictor: java.util.concurrent.ThreadFactory threadFactory> = v;
if v == null goto label;
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long toMillis(long)>(v);
goto label;
label:
v = v;
label:
v.<org.apache.http.impl.client.IdleConnectionEvictor: long sleepTimeMs> = v;
if v == null goto label;
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long toMillis(long)>(v);
goto label;
label:
v = v;
label:
v.<org.apache.http.impl.client.IdleConnectionEvictor: long maxIdleTimeMs> = v;
v = v.<org.apache.http.impl.client.IdleConnectionEvictor: java.util.concurrent.ThreadFactory threadFactory>;
v = new org.apache.http.impl.client.IdleConnectionEvictor$1;
specialinvoke v.<org.apache.http.impl.client.IdleConnectionEvictor$1: void <init>(org.apache.http.impl.client.IdleConnectionEvictor,org.apache.http.conn.HttpClientConnectionManager)>(v, v);
v = interfaceinvoke v.<java.util.concurrent.ThreadFactory: java.lang.Thread newThread(java.lang.Runnable)>(v);
v.<org.apache.http.impl.client.IdleConnectionEvictor: java.lang.Thread thread> = v;
return;
}
public void <init>(org.apache.http.conn.HttpClientConnectionManager, long, java.util.concurrent.TimeUnit, long, java.util.concurrent.TimeUnit)
{
java.util.concurrent.TimeUnit v, v;
long v, v;
org.apache.http.conn.HttpClientConnectionManager v;
org.apache.http.impl.client.IdleConnectionEvictor v;
v := @this: org.apache.http.impl.client.IdleConnectionEvictor;
v := @parameter: org.apache.http.conn.HttpClientConnectionManager;
v := @parameter: long;
v := @parameter: java.util.concurrent.TimeUnit;
v := @parameter: long;
v := @parameter: java.util.concurrent.TimeUnit;
specialinvoke v.<org.apache.http.impl.client.IdleConnectionEvictor: void <init>(org.apache.http.conn.HttpClientConnectionManager,java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,long,java.util.concurrent.TimeUnit)>(v, null, v, v, v, v);
return;
}
public void <init>(org.apache.http.conn.HttpClientConnectionManager, long, java.util.concurrent.TimeUnit)
{
java.util.concurrent.TimeUnit v, v;
byte v;
long v, v;
org.apache.http.conn.HttpClientConnectionManager v;
org.apache.http.impl.client.IdleConnectionEvictor v;
v := @this: org.apache.http.impl.client.IdleConnectionEvictor;
v := @parameter: org.apache.http.conn.HttpClientConnectionManager;
v := @parameter: long;
v := @parameter: java.util.concurrent.TimeUnit;
v = v cmp 0L;
if v <= 0 goto label;
v = v;
goto label;
label:
v = 5L;
label:
if v == null goto label;
v = v;
goto label;
label:
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
label:
specialinvoke v.<org.apache.http.impl.client.IdleConnectionEvictor: void <init>(org.apache.http.conn.HttpClientConnectionManager,java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,long,java.util.concurrent.TimeUnit)>(v, null, v, v, v, v);
return;
}
public void start()
{
org.apache.http.impl.client.IdleConnectionEvictor v;
java.lang.Thread v;
v := @this: org.apache.http.impl.client.IdleConnectionEvictor;
v = v.<org.apache.http.impl.client.IdleConnectionEvictor: java.lang.Thread thread>;
virtualinvoke v.<java.lang.Thread: void start()>();
return;
}
public void shutdown()
{
org.apache.http.impl.client.IdleConnectionEvictor v;
java.lang.Thread v;
v := @this: org.apache.http.impl.client.IdleConnectionEvictor;
v = v.<org.apache.http.impl.client.IdleConnectionEvictor: java.lang.Thread thread>;
virtualinvoke v.<java.lang.Thread: void interrupt()>();
return;
}
public boolean isRunning()
{
org.apache.http.impl.client.IdleConnectionEvictor v;
boolean v;
java.lang.Thread v;
v := @this: org.apache.http.impl.client.IdleConnectionEvictor;
v = v.<org.apache.http.impl.client.IdleConnectionEvictor: java.lang.Thread thread>;
v = virtualinvoke v.<java.lang.Thread: boolean isAlive()>();
return v;
}
public void awaitTermination(long, java.util.concurrent.TimeUnit) throws java.lang.InterruptedException
{
java.util.concurrent.TimeUnit v, v;
java.lang.Thread v;
long v, v;
org.apache.http.impl.client.IdleConnectionEvictor v;
v := @this: org.apache.http.impl.client.IdleConnectionEvictor;
v := @parameter: long;
v := @parameter: java.util.concurrent.TimeUnit;
v = v.<org.apache.http.impl.client.IdleConnectionEvictor: java.lang.Thread thread>;
if v == null goto label;
v = v;
goto label;
label:
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit MILLISECONDS>;
label:
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long toMillis(long)>(v);
virtualinvoke v.<java.lang.Thread: void join(long)>(v);
return;
}
}