public class org.apache.http.impl.conn.BasicClientConnectionManager implements org.apache.http.conn.ClientConnectionManager
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.http.impl.conn.BasicClientConnectionManager
super_class: java.lang.Object
{
private final org.apache.commons.logging.Log log;
descriptor: Lorg/apache/commons/logging/Log;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final java.util.concurrent.atomic.AtomicLong COUNTER;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final java.lang.String MISUSE_MESSAGE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "Invalid use of BasicClientConnManager: connection still allocated.\nMake sure to release the connection before allocating another one."
private final org.apache.http.conn.scheme.SchemeRegistry schemeRegistry;
descriptor: Lorg/apache/http/conn/scheme/SchemeRegistry;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.http.conn.ClientConnectionOperator connOperator;
descriptor: Lorg/apache/http/conn/ClientConnectionOperator;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.apache.http.impl.conn.HttpPoolEntry poolEntry;
descriptor: Lorg/apache/http/impl/conn/HttpPoolEntry;
flags: (0x0002) ACC_PRIVATE
private org.apache.http.impl.conn.ManagedClientConnectionImpl conn;
descriptor: Lorg/apache/http/impl/conn/ManagedClientConnectionImpl;
flags: (0x0002) ACC_PRIVATE
private volatile boolean shutdown;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.concurrent.atomic.AtomicLong
dup
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
putstatic org.apache.http.impl.conn.BasicClientConnectionManager.COUNTER:Ljava/util/concurrent/atomic/AtomicLong;
1: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.apache.http.conn.scheme.SchemeRegistry);
descriptor: (Lorg/apache/http/conn/scheme/SchemeRegistry;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
putfield org.apache.http.impl.conn.BasicClientConnectionManager.log:Lorg/apache/commons/logging/Log;
2: aload 1
ldc "Scheme registry"
invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
3: aload 0
aload 1
putfield org.apache.http.impl.conn.BasicClientConnectionManager.schemeRegistry:Lorg/apache/http/conn/scheme/SchemeRegistry;
4: aload 0
aload 0
aload 1
invokevirtual org.apache.http.impl.conn.BasicClientConnectionManager.createConnectionOperator:(Lorg/apache/http/conn/scheme/SchemeRegistry;)Lorg/apache/http/conn/ClientConnectionOperator;
putfield org.apache.http.impl.conn.BasicClientConnectionManager.connOperator:Lorg/apache/http/conn/ClientConnectionOperator;
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
0 6 1 schreg Lorg/apache/http/conn/scheme/SchemeRegistry;
MethodParameters:
Name Flags
schreg final
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokestatic org.apache.http.impl.conn.SchemeRegistryFactory.createDefault:()Lorg/apache/http/conn/scheme/SchemeRegistry;
invokespecial org.apache.http.impl.conn.BasicClientConnectionManager.<init>:(Lorg/apache/http/conn/scheme/SchemeRegistry;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
protected void finalize();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.http.impl.conn.BasicClientConnectionManager.shutdown:()V
1: goto 5
StackMap locals:
StackMap stack: java.lang.Throwable
2: astore 1
3: aload 0
invokespecial java.lang.Object.finalize:()V
4: aload 1
athrow
5: StackMap locals:
StackMap stack:
aload 0
invokespecial java.lang.Object.finalize:()V
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
Exception table:
from to target type
0 2 2 any
Exceptions:
throws java.lang.Throwable
public org.apache.http.conn.scheme.SchemeRegistry getSchemeRegistry();
descriptor: ()Lorg/apache/http/conn/scheme/SchemeRegistry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.schemeRegistry:Lorg/apache/http/conn/scheme/SchemeRegistry;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
protected org.apache.http.conn.ClientConnectionOperator createConnectionOperator(org.apache.http.conn.scheme.SchemeRegistry);
descriptor: (Lorg/apache/http/conn/scheme/SchemeRegistry;)Lorg/apache/http/conn/ClientConnectionOperator;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new org.apache.http.impl.conn.DefaultClientConnectionOperator
dup
aload 1
invokespecial org.apache.http.impl.conn.DefaultClientConnectionOperator.<init>:(Lorg/apache/http/conn/scheme/SchemeRegistry;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
0 1 1 schreg Lorg/apache/http/conn/scheme/SchemeRegistry;
MethodParameters:
Name Flags
schreg final
public final org.apache.http.conn.ClientConnectionRequest requestConnection(org.apache.http.conn.routing.HttpRoute, java.lang.Object);
descriptor: (Lorg/apache/http/conn/routing/HttpRoute;Ljava/lang/Object;)Lorg/apache/http/conn/ClientConnectionRequest;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new org.apache.http.impl.conn.BasicClientConnectionManager$1
dup
aload 0
aload 1
aload 2
invokespecial org.apache.http.impl.conn.BasicClientConnectionManager$1.<init>:(Lorg/apache/http/impl/conn/BasicClientConnectionManager;Lorg/apache/http/conn/routing/HttpRoute;Ljava/lang/Object;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
0 1 1 route Lorg/apache/http/conn/routing/HttpRoute;
0 1 2 state Ljava/lang/Object;
MethodParameters:
Name Flags
route final
state final
private void assertNotShutdown();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.shutdown:Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ldc "Connection manager has been shut down"
invokestatic org.apache.http.util.Asserts.check:(ZLjava/lang/String;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
org.apache.http.conn.ManagedClientConnection getConnection(org.apache.http.conn.routing.HttpRoute, java.lang.Object);
descriptor: (Lorg/apache/http/conn/routing/HttpRoute;Ljava/lang/Object;)Lorg/apache/http/conn/ManagedClientConnection;
flags: (0x0000)
Code:
stack=10, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "Route"
invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
dup
astore 3
monitorenter
2: aload 0
invokevirtual org.apache.http.impl.conn.BasicClientConnectionManager.assertNotShutdown:()V
3: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.log:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
ifeq 5
4: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.log:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Get connection for route "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
5: StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager
StackMap stack:
aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.conn:Lorg/apache/http/impl/conn/ManagedClientConnectionImpl;
ifnonnull 6
iconst_1
goto 7
StackMap locals:
StackMap stack:
6: iconst_0
StackMap locals:
StackMap stack: int
7: ldc "Invalid use of BasicClientConnManager: connection still allocated.\nMake sure to release the connection before allocating another one."
invokestatic org.apache.http.util.Asserts.check:(ZLjava/lang/String;)V
8: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
ifnull 11
aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.getPlannedRoute:()Lorg/apache/http/conn/routing/HttpRoute;
aload 1
invokevirtual org.apache.http.conn.routing.HttpRoute.equals:(Ljava/lang/Object;)Z
ifne 11
9: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.close:()V
10: aload 0
aconst_null
putfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
11: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
ifnonnull 15
12: getstatic org.apache.http.impl.conn.BasicClientConnectionManager.COUNTER:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.getAndIncrement:()J
invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
astore 4
start local 4 13: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.connOperator:Lorg/apache/http/conn/ClientConnectionOperator;
invokeinterface org.apache.http.conn.ClientConnectionOperator.createConnection:()Lorg/apache/http/conn/OperatedClientConnection;
astore 5
start local 5 14: aload 0
new org.apache.http.impl.conn.HttpPoolEntry
dup
aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.log:Lorg/apache/commons/logging/Log;
aload 4
aload 1
aload 5
lconst_0
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokespecial org.apache.http.impl.conn.HttpPoolEntry.<init>:(Lorg/apache/commons/logging/Log;Ljava/lang/String;Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/conn/OperatedClientConnection;JLjava/util/concurrent/TimeUnit;)V
putfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
end local 5 end local 4 15: StackMap locals:
StackMap stack:
invokestatic java.lang.System.currentTimeMillis:()J
lstore 4
start local 4 16: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
lload 4
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.isExpired:(J)Z
ifeq 19
17: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.close:()V
18: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.getTracker:()Lorg/apache/http/conn/routing/RouteTracker;
invokevirtual org.apache.http.conn.routing.RouteTracker.reset:()V
19: StackMap locals: long
StackMap stack:
aload 0
new org.apache.http.impl.conn.ManagedClientConnectionImpl
dup
aload 0
aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.connOperator:Lorg/apache/http/conn/ClientConnectionOperator;
aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokespecial org.apache.http.impl.conn.ManagedClientConnectionImpl.<init>:(Lorg/apache/http/conn/ClientConnectionManager;Lorg/apache/http/conn/ClientConnectionOperator;Lorg/apache/http/impl/conn/HttpPoolEntry;)V
putfield org.apache.http.impl.conn.BasicClientConnectionManager.conn:Lorg/apache/http/impl/conn/ManagedClientConnectionImpl;
20: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.conn:Lorg/apache/http/impl/conn/ManagedClientConnectionImpl;
aload 3
monitorexit
21: areturn
end local 4 22: StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager org.apache.http.conn.routing.HttpRoute java.lang.Object org.apache.http.impl.conn.BasicClientConnectionManager
StackMap stack: java.lang.Throwable
aload 3
monitorexit
23: athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
0 24 1 route Lorg/apache/http/conn/routing/HttpRoute;
0 24 2 state Ljava/lang/Object;
13 15 4 id Ljava/lang/String;
14 15 5 opconn Lorg/apache/http/conn/OperatedClientConnection;
16 22 4 now J
Exception table:
from to target type
2 21 22 any
22 23 22 any
MethodParameters:
Name Flags
route final
state final
private void shutdownConnection(org.apache.http.HttpClientConnection);
descriptor: (Lorg/apache/http/HttpClientConnection;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.apache.http.HttpClientConnection.shutdown:()V
1: goto 5
StackMap locals:
StackMap stack: java.io.IOException
2: astore 2
start local 2 3: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.log:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
ifeq 5
4: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.log:Lorg/apache/commons/logging/Log;
ldc "I/O exception shutting down connection"
aload 2
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 2 5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
0 6 1 conn Lorg/apache/http/HttpClientConnection;
3 5 2 iox Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
MethodParameters:
Name Flags
conn final
public void releaseConnection(org.apache.http.conn.ManagedClientConnection, long, java.util.concurrent.TimeUnit);
descriptor: (Lorg/apache/http/conn/ManagedClientConnection;JLjava/util/concurrent/TimeUnit;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 1
instanceof org.apache.http.impl.conn.ManagedClientConnectionImpl
ldc "Connection class mismatch, connection not obtained from this manager"
invokestatic org.apache.http.util.Args.check:(ZLjava/lang/String;)V
1: aload 1
checkcast org.apache.http.impl.conn.ManagedClientConnectionImpl
astore 5
start local 5 2: aload 5
dup
astore 6
monitorenter
3: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.log:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
ifeq 5
4: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.log:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Releasing connection "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
5: StackMap locals: org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.impl.conn.ManagedClientConnectionImpl
StackMap stack:
aload 5
invokevirtual org.apache.http.impl.conn.ManagedClientConnectionImpl.getPoolEntry:()Lorg/apache/http/impl/conn/HttpPoolEntry;
ifnonnull 8
6: aload 6
monitorexit
7: return
8: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.apache.http.impl.conn.ManagedClientConnectionImpl.getManager:()Lorg/apache/http/conn/ClientConnectionManager;
astore 7
start local 7 9: aload 7
aload 0
if_acmpne 10
iconst_1
goto 11
StackMap locals: org.apache.http.conn.ClientConnectionManager
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: ldc "Connection not obtained from this manager"
invokestatic org.apache.http.util.Asserts.check:(ZLjava/lang/String;)V
12: aload 0
dup
astore 8
monitorenter
13: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.shutdown:Z
ifeq 18
14: aload 0
aload 5
invokevirtual org.apache.http.impl.conn.BasicClientConnectionManager.shutdownConnection:(Lorg/apache/http/HttpClientConnection;)V
15: aload 8
monitorexit
16: aload 6
monitorexit
17: return
18: StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager
StackMap stack:
aload 5
invokevirtual org.apache.http.impl.conn.ManagedClientConnectionImpl.isOpen:()Z
ifeq 20
aload 5
invokevirtual org.apache.http.impl.conn.ManagedClientConnectionImpl.isMarkedReusable:()Z
ifne 20
19: aload 0
aload 5
invokevirtual org.apache.http.impl.conn.BasicClientConnectionManager.shutdownConnection:(Lorg/apache/http/HttpClientConnection;)V
20: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.apache.http.impl.conn.ManagedClientConnectionImpl.isMarkedReusable:()Z
ifeq 37
21: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
lload 2
aload 4
ifnull 22
aload 4
goto 23
StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager org.apache.http.conn.ManagedClientConnection long java.util.concurrent.TimeUnit org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.conn.ClientConnectionManager org.apache.http.impl.conn.BasicClientConnectionManager
StackMap stack: org.apache.http.impl.conn.HttpPoolEntry long
22: getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager org.apache.http.conn.ManagedClientConnection long java.util.concurrent.TimeUnit org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.conn.ClientConnectionManager org.apache.http.impl.conn.BasicClientConnectionManager
StackMap stack: org.apache.http.impl.conn.HttpPoolEntry long java.util.concurrent.TimeUnit
23: invokevirtual org.apache.http.impl.conn.HttpPoolEntry.updateExpiry:(JLjava/util/concurrent/TimeUnit;)V
24: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.log:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
ifeq 37
25: lload 2
lconst_0
lcmp
ifle 28
26: new java.lang.StringBuilder
dup
ldc "for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 2
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 9
start local 9 27: goto 29
end local 9 28: StackMap locals:
StackMap stack:
ldc "indefinitely"
astore 9
start local 9 29: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.log:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Connection can be kept alive "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
end local 9 30: goto 37
StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager org.apache.http.conn.ManagedClientConnection long java.util.concurrent.TimeUnit org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.conn.ClientConnectionManager org.apache.http.impl.conn.BasicClientConnectionManager
StackMap stack: java.lang.Throwable
31: astore 10
32: aload 5
invokevirtual org.apache.http.impl.conn.ManagedClientConnectionImpl.detach:()Lorg/apache/http/impl/conn/HttpPoolEntry;
pop
33: aload 0
aconst_null
putfield org.apache.http.impl.conn.BasicClientConnectionManager.conn:Lorg/apache/http/impl/conn/ManagedClientConnectionImpl;
34: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.isClosed:()Z
ifeq 36
35: aload 0
aconst_null
putfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
36: StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager org.apache.http.conn.ManagedClientConnection long java.util.concurrent.TimeUnit org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.conn.ClientConnectionManager org.apache.http.impl.conn.BasicClientConnectionManager top java.lang.Throwable
StackMap stack:
aload 10
athrow
37: StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager org.apache.http.conn.ManagedClientConnection long java.util.concurrent.TimeUnit org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.impl.conn.ManagedClientConnectionImpl org.apache.http.conn.ClientConnectionManager org.apache.http.impl.conn.BasicClientConnectionManager
StackMap stack:
aload 5
invokevirtual org.apache.http.impl.conn.ManagedClientConnectionImpl.detach:()Lorg/apache/http/impl/conn/HttpPoolEntry;
pop
38: aload 0
aconst_null
putfield org.apache.http.impl.conn.BasicClientConnectionManager.conn:Lorg/apache/http/impl/conn/ManagedClientConnectionImpl;
39: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.isClosed:()Z
ifeq 41
40: aload 0
aconst_null
putfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
41: StackMap locals:
StackMap stack:
aload 8
monitorexit
42: goto 45
StackMap locals:
StackMap stack: java.lang.Throwable
43: aload 8
monitorexit
44: athrow
end local 7 45: StackMap locals:
StackMap stack:
aload 6
monitorexit
46: goto 49
StackMap locals:
StackMap stack: java.lang.Throwable
47: aload 6
monitorexit
48: athrow
49: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 50 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
0 50 1 conn Lorg/apache/http/conn/ManagedClientConnection;
0 50 2 keepalive J
0 50 4 timeUnit Ljava/util/concurrent/TimeUnit;
2 50 5 managedConn Lorg/apache/http/impl/conn/ManagedClientConnectionImpl;
9 45 7 manager Lorg/apache/http/conn/ClientConnectionManager;
27 28 9 s Ljava/lang/String;
29 30 9 s Ljava/lang/String;
Exception table:
from to target type
18 31 31 any
13 16 43 any
18 42 43 any
43 44 43 any
3 7 47 any
8 17 47 any
18 46 47 any
47 48 47 any
MethodParameters:
Name Flags
conn final
keepalive final
timeUnit final
public void closeExpiredConnections();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
dup
astore 1
monitorenter
1: aload 0
invokevirtual org.apache.http.impl.conn.BasicClientConnectionManager.assertNotShutdown:()V
2: invokestatic java.lang.System.currentTimeMillis:()J
lstore 2
start local 2 3: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
ifnull 6
aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
lload 2
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.isExpired:(J)Z
ifeq 6
4: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.close:()V
5: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.getTracker:()Lorg/apache/http/conn/routing/RouteTracker;
invokevirtual org.apache.http.conn.routing.RouteTracker.reset:()V
end local 2 6: StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager
StackMap stack:
aload 1
monitorexit
7: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
8: aload 1
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
3 6 2 now J
Exception table:
from to target type
1 7 8 any
8 9 8 any
public void closeIdleConnections(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=3
start local 0 start local 1 start local 3 0: aload 3
ldc "Time unit"
invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
dup
astore 4
monitorenter
2: aload 0
invokevirtual org.apache.http.impl.conn.BasicClientConnectionManager.assertNotShutdown:()V
3: aload 3
lload 1
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
lstore 5
start local 5 4: lload 5
lconst_0
lcmp
ifge 6
5: lconst_0
lstore 5
6: StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager long
StackMap stack:
invokestatic java.lang.System.currentTimeMillis:()J
lload 5
lsub
lstore 7
start local 7 7: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
ifnull 10
aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.getUpdated:()J
lload 7
lcmp
ifgt 10
8: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.close:()V
9: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.getTracker:()Lorg/apache/http/conn/routing/RouteTracker;
invokevirtual org.apache.http.conn.routing.RouteTracker.reset:()V
end local 7 end local 5 10: StackMap locals:
StackMap stack:
aload 4
monitorexit
11: goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
12: aload 4
monitorexit
13: athrow
14: StackMap locals:
StackMap stack:
return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
0 15 1 idletime J
0 15 3 timeUnit Ljava/util/concurrent/TimeUnit;
4 10 5 time J
7 10 7 deadline J
Exception table:
from to target type
2 11 12 any
12 13 12 any
MethodParameters:
Name Flags
idletime final
timeUnit final
public void shutdown();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
dup
astore 1
monitorenter
1: aload 0
iconst_1
putfield org.apache.http.impl.conn.BasicClientConnectionManager.shutdown:Z
2: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
ifnull 9
3: aload 0
getfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
invokevirtual org.apache.http.impl.conn.HttpPoolEntry.close:()V
4: goto 9
StackMap locals: org.apache.http.impl.conn.BasicClientConnectionManager org.apache.http.impl.conn.BasicClientConnectionManager
StackMap stack: java.lang.Throwable
5: astore 2
6: aload 0
aconst_null
putfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
7: aload 0
aconst_null
putfield org.apache.http.impl.conn.BasicClientConnectionManager.conn:Lorg/apache/http/impl/conn/ManagedClientConnectionImpl;
8: aload 2
athrow
9: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.apache.http.impl.conn.BasicClientConnectionManager.poolEntry:Lorg/apache/http/impl/conn/HttpPoolEntry;
10: aload 0
aconst_null
putfield org.apache.http.impl.conn.BasicClientConnectionManager.conn:Lorg/apache/http/impl/conn/ManagedClientConnectionImpl;
11: aload 1
monitorexit
12: goto 15
StackMap locals:
StackMap stack: java.lang.Throwable
13: aload 1
monitorexit
14: athrow
15: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/apache/http/impl/conn/BasicClientConnectionManager;
Exception table:
from to target type
2 5 5 any
1 12 13 any
13 14 13 any
}
SourceFile: "BasicClientConnectionManager.java"
NestMembers:
org.apache.http.impl.conn.BasicClientConnectionManager$1
InnerClasses:
org.apache.http.impl.conn.BasicClientConnectionManager$1
RuntimeVisibleAnnotations:
java.lang.Deprecated()
RuntimeInvisibleAnnotations:
org.apache.http.annotation.Contract(threading = org.apache.http.annotation.ThreadingBehavior.SAFE:Lorg/apache/http/annotation/ThreadingBehavior;)