public class org.apache.http.impl.DefaultConnectionReuseStrategy implements org.apache.http.ConnectionReuseStrategy
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.http.impl.DefaultConnectionReuseStrategy
super_class: java.lang.Object
{
public static final org.apache.http.impl.DefaultConnectionReuseStrategy INSTANCE;
descriptor: Lorg/apache/http/impl/DefaultConnectionReuseStrategy;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new org.apache.http.impl.DefaultConnectionReuseStrategy
dup
invokespecial org.apache.http.impl.DefaultConnectionReuseStrategy.<init>:()V
putstatic org.apache.http.impl.DefaultConnectionReuseStrategy.INSTANCE:Lorg/apache/http/impl/DefaultConnectionReuseStrategy;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/http/impl/DefaultConnectionReuseStrategy;
public boolean keepAlive(org.apache.http.HttpResponse, org.apache.http.protocol.HttpContext);
descriptor: (Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "HTTP response"
invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 2
ldc "HTTP context"
invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
2: aload 1
invokeinterface org.apache.http.HttpResponse.getStatusLine:()Lorg/apache/http/StatusLine;
invokeinterface org.apache.http.StatusLine.getStatusCode:()I
sipush 204
if_icmpne 12
3: aload 1
ldc "Content-Length"
invokeinterface org.apache.http.HttpResponse.getFirstHeader:(Ljava/lang/String;)Lorg/apache/http/Header;
astore 3
start local 3 4: aload 3
ifnull 9
5: aload 3
invokeinterface org.apache.http.Header.getValue:()Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 4
start local 4 6: iload 4
ifle 9
7: iconst_0
ireturn
end local 4 8: StackMap locals: org.apache.http.impl.DefaultConnectionReuseStrategy org.apache.http.HttpResponse org.apache.http.protocol.HttpContext org.apache.http.Header
StackMap stack: java.lang.NumberFormatException
pop
9: StackMap locals:
StackMap stack:
aload 1
ldc "Transfer-Encoding"
invokeinterface org.apache.http.HttpResponse.getFirstHeader:(Ljava/lang/String;)Lorg/apache/http/Header;
astore 4
start local 4 10: aload 4
ifnull 12
11: iconst_0
ireturn
end local 4 end local 3 12: StackMap locals:
StackMap stack:
aload 2
ldc "http.request"
invokeinterface org.apache.http.protocol.HttpContext.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
checkcast org.apache.http.HttpRequest
astore 3
start local 3 13: aload 3
ifnull 23
14: new org.apache.http.message.BasicTokenIterator
dup
aload 3
ldc "Connection"
invokeinterface org.apache.http.HttpRequest.headerIterator:(Ljava/lang/String;)Lorg/apache/http/HeaderIterator;
invokespecial org.apache.http.message.BasicTokenIterator.<init>:(Lorg/apache/http/HeaderIterator;)V
astore 4
start local 4 15: goto 19
16: StackMap locals: org.apache.http.HttpRequest org.apache.http.TokenIterator
StackMap stack:
aload 4
invokeinterface org.apache.http.TokenIterator.nextToken:()Ljava/lang/String;
astore 5
start local 5 17: ldc "Close"
aload 5
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 19
18: iconst_0
ireturn
end local 5 19: StackMap locals:
StackMap stack:
aload 4
invokeinterface org.apache.http.TokenIterator.hasNext:()Z
ifne 16
end local 4 20: goto 23
StackMap locals: org.apache.http.impl.DefaultConnectionReuseStrategy org.apache.http.HttpResponse org.apache.http.protocol.HttpContext org.apache.http.HttpRequest
StackMap stack: org.apache.http.ParseException
21: pop
22: iconst_0
ireturn
23: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.apache.http.HttpResponse.getStatusLine:()Lorg/apache/http/StatusLine;
invokeinterface org.apache.http.StatusLine.getProtocolVersion:()Lorg/apache/http/ProtocolVersion;
astore 4
start local 4 24: aload 1
ldc "Transfer-Encoding"
invokeinterface org.apache.http.HttpResponse.getFirstHeader:(Ljava/lang/String;)Lorg/apache/http/Header;
astore 5
start local 5 25: aload 5
ifnull 28
26: ldc "chunked"
aload 5
invokeinterface org.apache.http.Header.getValue:()Ljava/lang/String;
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 38
27: iconst_0
ireturn
28: StackMap locals: org.apache.http.ProtocolVersion org.apache.http.Header
StackMap stack:
aload 0
aload 3
aload 1
invokevirtual org.apache.http.impl.DefaultConnectionReuseStrategy.canResponseHaveBody:(Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpResponse;)Z
ifeq 38
29: aload 1
ldc "Content-Length"
invokeinterface org.apache.http.HttpResponse.getHeaders:(Ljava/lang/String;)[Lorg/apache/http/Header;
astore 6
start local 6 30: aload 6
arraylength
iconst_1
if_icmpne 37
31: aload 6
iconst_0
aaload
astore 7
start local 7 32: aload 7
invokeinterface org.apache.http.Header.getValue:()Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 8
start local 8 33: iload 8
ifge 38
34: iconst_0
ireturn
end local 8 35: StackMap locals: org.apache.http.impl.DefaultConnectionReuseStrategy org.apache.http.HttpResponse org.apache.http.protocol.HttpContext org.apache.http.HttpRequest org.apache.http.ProtocolVersion org.apache.http.Header org.apache.http.Header[] org.apache.http.Header
StackMap stack: java.lang.NumberFormatException
pop
36: iconst_0
ireturn
end local 7 37: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 6 38: StackMap locals:
StackMap stack:
aload 1
ldc "Connection"
invokeinterface org.apache.http.HttpResponse.headerIterator:(Ljava/lang/String;)Lorg/apache/http/HeaderIterator;
astore 6
start local 6 39: aload 6
invokeinterface org.apache.http.HeaderIterator.hasNext:()Z
ifne 41
40: aload 1
ldc "Proxy-Connection"
invokeinterface org.apache.http.HttpResponse.headerIterator:(Ljava/lang/String;)Lorg/apache/http/HeaderIterator;
astore 6
41: StackMap locals: org.apache.http.HeaderIterator
StackMap stack:
aload 6
invokeinterface org.apache.http.HeaderIterator.hasNext:()Z
ifeq 55
42: new org.apache.http.message.BasicTokenIterator
dup
aload 6
invokespecial org.apache.http.message.BasicTokenIterator.<init>:(Lorg/apache/http/HeaderIterator;)V
astore 7
start local 7 43: iconst_0
istore 8
start local 8 44: goto 50
45: StackMap locals: org.apache.http.TokenIterator int
StackMap stack:
aload 7
invokeinterface org.apache.http.TokenIterator.nextToken:()Ljava/lang/String;
astore 9
start local 9 46: ldc "Close"
aload 9
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 48
47: iconst_0
ireturn
48: StackMap locals: java.lang.String
StackMap stack:
ldc "Keep-Alive"
aload 9
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 50
49: iconst_1
istore 8
end local 9 50: StackMap locals:
StackMap stack:
aload 7
invokeinterface org.apache.http.TokenIterator.hasNext:()Z
ifne 45
51: iload 8
ifeq 55
52: iconst_1
ireturn
end local 8 end local 7 53: StackMap locals: org.apache.http.impl.DefaultConnectionReuseStrategy org.apache.http.HttpResponse org.apache.http.protocol.HttpContext org.apache.http.HttpRequest org.apache.http.ProtocolVersion org.apache.http.Header org.apache.http.HeaderIterator
StackMap stack: org.apache.http.ParseException
pop
54: iconst_0
ireturn
55: StackMap locals:
StackMap stack:
aload 4
getstatic org.apache.http.HttpVersion.HTTP_1_0:Lorg/apache/http/HttpVersion;
invokevirtual org.apache.http.ProtocolVersion.lessEquals:(Lorg/apache/http/ProtocolVersion;)Z
ifeq 56
iconst_0
goto 57
StackMap locals:
StackMap stack:
56: iconst_1
StackMap locals:
StackMap stack: int
57: ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 58 0 this Lorg/apache/http/impl/DefaultConnectionReuseStrategy;
0 58 1 response Lorg/apache/http/HttpResponse;
0 58 2 context Lorg/apache/http/protocol/HttpContext;
4 12 3 clh Lorg/apache/http/Header;
6 8 4 contentLen I
10 12 4 teh Lorg/apache/http/Header;
13 58 3 request Lorg/apache/http/HttpRequest;
15 20 4 ti Lorg/apache/http/TokenIterator;
17 19 5 token Ljava/lang/String;
24 58 4 ver Lorg/apache/http/ProtocolVersion;
25 58 5 teh Lorg/apache/http/Header;
30 38 6 clhs [Lorg/apache/http/Header;
32 37 7 clh Lorg/apache/http/Header;
33 35 8 contentLen I
39 58 6 headerIterator Lorg/apache/http/HeaderIterator;
43 53 7 ti Lorg/apache/http/TokenIterator;
44 53 8 keepalive Z
46 50 9 token Ljava/lang/String;
Exception table:
from to target type
5 7 8 Class java.lang.NumberFormatException
14 18 21 Class org.apache.http.ParseException
19 20 21 Class org.apache.http.ParseException
32 34 35 Class java.lang.NumberFormatException
42 47 53 Class org.apache.http.ParseException
48 52 53 Class org.apache.http.ParseException
MethodParameters:
Name Flags
response final
context final
protected org.apache.http.TokenIterator (org.apache.http.HeaderIterator);
descriptor: (Lorg/apache/http/HeaderIterator;)Lorg/apache/http/TokenIterator;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new org.apache.http.message.BasicTokenIterator
dup
aload 1
invokespecial org.apache.http.message.BasicTokenIterator.<init>:(Lorg/apache/http/HeaderIterator;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/impl/DefaultConnectionReuseStrategy;
0 1 1 hit Lorg/apache/http/HeaderIterator;
MethodParameters:
Name Flags
hit final
private boolean canResponseHaveBody(org.apache.http.HttpRequest, org.apache.http.HttpResponse);
descriptor: (Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpResponse;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 2
aload 1
invokeinterface org.apache.http.HttpRequest.getRequestLine:()Lorg/apache/http/RequestLine;
invokeinterface org.apache.http.RequestLine.getMethod:()Ljava/lang/String;
ldc "HEAD"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 2
invokeinterface org.apache.http.HttpResponse.getStatusLine:()Lorg/apache/http/StatusLine;
invokeinterface org.apache.http.StatusLine.getStatusCode:()I
istore 3
start local 3 3: iload 3
sipush 200
if_icmplt 8
4: iload 3
sipush 204
if_icmpeq 8
5: iload 3
sipush 304
if_icmpeq 8
6: iload 3
sipush 205
if_icmpeq 8
7: iconst_1
ireturn
StackMap locals: int
StackMap stack:
8: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/http/impl/DefaultConnectionReuseStrategy;
0 9 1 request Lorg/apache/http/HttpRequest;
0 9 2 response Lorg/apache/http/HttpResponse;
3 9 3 status I
MethodParameters:
Name Flags
request final
response final
}
SourceFile: "DefaultConnectionReuseStrategy.java"
RuntimeInvisibleAnnotations:
org.apache.http.annotation.Contract(threading = org.apache.http.annotation.ThreadingBehavior.IMMUTABLE:Lorg/apache/http/annotation/ThreadingBehavior;)