public final class okhttp3.internal.connection.RealConnection extends okhttp3.internal.http2.Http2Connection$Listener implements okhttp3.Connection
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: okhttp3.internal.connection.RealConnection
super_class: okhttp3.internal.http2.Http2Connection$Listener
{
private static final java.lang.String NPE_THROW_WITH_NULL;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "throw with null exception"
private static final int MAX_TUNNEL_ATTEMPTS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 21
private final okhttp3.ConnectionPool connectionPool;
descriptor: Lokhttp3/ConnectionPool;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final okhttp3.Route route;
descriptor: Lokhttp3/Route;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.net.Socket rawSocket;
descriptor: Ljava/net/Socket;
flags: (0x0002) ACC_PRIVATE
private java.net.Socket socket;
descriptor: Ljava/net/Socket;
flags: (0x0002) ACC_PRIVATE
private okhttp3.Handshake handshake;
descriptor: Lokhttp3/Handshake;
flags: (0x0002) ACC_PRIVATE
private okhttp3.Protocol protocol;
descriptor: Lokhttp3/Protocol;
flags: (0x0002) ACC_PRIVATE
private okhttp3.internal.http2.Http2Connection http2Connection;
descriptor: Lokhttp3/internal/http2/Http2Connection;
flags: (0x0002) ACC_PRIVATE
private okio.BufferedSource source;
descriptor: Lokio/BufferedSource;
flags: (0x0002) ACC_PRIVATE
private okio.BufferedSink sink;
descriptor: Lokio/BufferedSink;
flags: (0x0002) ACC_PRIVATE
public boolean noNewStreams;
descriptor: Z
flags: (0x0001) ACC_PUBLIC
public int successCount;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public int allocationLimit;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public final java.util.List<java.lang.ref.Reference<okhttp3.internal.connection.StreamAllocation>> allocations;
descriptor: Ljava/util/List;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/ref/Reference<Lokhttp3/internal/connection/StreamAllocation;>;>;
public long idleAtNanos;
descriptor: J
flags: (0x0001) ACC_PUBLIC
public void <init>(okhttp3.ConnectionPool, okhttp3.Route);
descriptor: (Lokhttp3/ConnectionPool;Lokhttp3/Route;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial okhttp3.internal.http2.Http2Connection$Listener.<init>:()V
1: aload 0
iconst_1
putfield okhttp3.internal.connection.RealConnection.allocationLimit:I
2: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield okhttp3.internal.connection.RealConnection.allocations:Ljava/util/List;
3: aload 0
ldc 9223372036854775807
putfield okhttp3.internal.connection.RealConnection.idleAtNanos:J
4: aload 0
aload 1
putfield okhttp3.internal.connection.RealConnection.connectionPool:Lokhttp3/ConnectionPool;
5: aload 0
aload 2
putfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lokhttp3/internal/connection/RealConnection;
0 7 1 connectionPool Lokhttp3/ConnectionPool;
0 7 2 route Lokhttp3/Route;
MethodParameters:
Name Flags
connectionPool
route
public static okhttp3.internal.connection.RealConnection testConnection(okhttp3.ConnectionPool, okhttp3.Route, java.net.Socket, long);
descriptor: (Lokhttp3/ConnectionPool;Lokhttp3/Route;Ljava/net/Socket;J)Lokhttp3/internal/connection/RealConnection;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new okhttp3.internal.connection.RealConnection
dup
aload 0
aload 1
invokespecial okhttp3.internal.connection.RealConnection.<init>:(Lokhttp3/ConnectionPool;Lokhttp3/Route;)V
astore 5
start local 5 1: aload 5
aload 2
putfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
2: aload 5
lload 3
putfield okhttp3.internal.connection.RealConnection.idleAtNanos:J
3: aload 5
areturn
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 connectionPool Lokhttp3/ConnectionPool;
0 4 1 route Lokhttp3/Route;
0 4 2 socket Ljava/net/Socket;
0 4 3 idleAtNanos J
1 4 5 result Lokhttp3/internal/connection/RealConnection;
MethodParameters:
Name Flags
connectionPool
route
socket
idleAtNanos
public void connect(int, int, int, int, boolean, okhttp3.Call, okhttp3.EventListener);
descriptor: (IIIIZLokhttp3/Call;Lokhttp3/EventListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=12, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
getfield okhttp3.internal.connection.RealConnection.protocol:Lokhttp3/Protocol;
ifnull 1
new java.lang.IllegalStateException
dup
ldc "already connected"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
1: StackMap locals:
StackMap stack:
aconst_null
astore 8
start local 8 2: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.connectionSpecs:()Ljava/util/List;
astore 9
start local 9 3: new okhttp3.internal.connection.ConnectionSpecSelector
dup
aload 9
invokespecial okhttp3.internal.connection.ConnectionSpecSelector.<init>:(Ljava/util/List;)V
astore 10
start local 10 4: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.sslSocketFactory:()Ljavax/net/ssl/SSLSocketFactory;
ifnonnull 14
5: aload 9
getstatic okhttp3.ConnectionSpec.CLEARTEXT:Lokhttp3/ConnectionSpec;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 9
6: new okhttp3.internal.connection.RouteException
dup
new java.net.UnknownServiceException
dup
7: ldc "CLEARTEXT communication not enabled for client"
invokespecial java.net.UnknownServiceException.<init>:(Ljava/lang/String;)V
8: invokespecial okhttp3.internal.connection.RouteException.<init>:(Ljava/io/IOException;)V
athrow
9: StackMap locals: okhttp3.internal.connection.RouteException java.util.List okhttp3.internal.connection.ConnectionSpecSelector
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
astore 11
start local 11 10: invokestatic okhttp3.internal.platform.Platform.get:()Lokhttp3/internal/platform/Platform;
aload 11
invokevirtual okhttp3.internal.platform.Platform.isCleartextTrafficPermitted:(Ljava/lang/String;)Z
ifne 18
11: new okhttp3.internal.connection.RouteException
dup
new java.net.UnknownServiceException
dup
12: new java.lang.StringBuilder
dup
ldc "CLEARTEXT communication to "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 11
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " not permitted by network security policy"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.net.UnknownServiceException.<init>:(Ljava/lang/String;)V
13: invokespecial okhttp3.internal.connection.RouteException.<init>:(Ljava/io/IOException;)V
athrow
end local 11 14: StackMap locals:
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.protocols:()Ljava/util/List;
getstatic okhttp3.Protocol.H2_PRIOR_KNOWLEDGE:Lokhttp3/Protocol;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 18
15: new okhttp3.internal.connection.RouteException
dup
new java.net.UnknownServiceException
dup
16: ldc "H2_PRIOR_KNOWLEDGE cannot be used with HTTPS"
invokespecial java.net.UnknownServiceException.<init>:(Ljava/lang/String;)V
17: invokespecial okhttp3.internal.connection.RouteException.<init>:(Ljava/io/IOException;)V
athrow
18: StackMap locals:
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.requiresTunnel:()Z
ifeq 22
19: aload 0
iload 1
iload 2
iload 3
aload 6
aload 7
invokevirtual okhttp3.internal.connection.RealConnection.connectTunnel:(IIILokhttp3/Call;Lokhttp3/EventListener;)V
20: aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
ifnonnull 23
21: goto 43
22: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
aload 6
aload 7
invokevirtual okhttp3.internal.connection.RealConnection.connectSocket:(IILokhttp3/Call;Lokhttp3/EventListener;)V
23: StackMap locals:
StackMap stack:
aload 0
aload 10
iload 4
aload 6
aload 7
invokevirtual okhttp3.internal.connection.RealConnection.establishProtocol:(Lokhttp3/internal/connection/ConnectionSpecSelector;ILokhttp3/Call;Lokhttp3/EventListener;)V
24: aload 7
aload 6
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.socketAddress:()Ljava/net/InetSocketAddress;
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.proxy:()Ljava/net/Proxy;
aload 0
getfield okhttp3.internal.connection.RealConnection.protocol:Lokhttp3/Protocol;
invokevirtual okhttp3.EventListener.connectEnd:(Lokhttp3/Call;Ljava/net/InetSocketAddress;Ljava/net/Proxy;Lokhttp3/Protocol;)V
25: goto 43
26: StackMap locals:
StackMap stack: java.io.IOException
astore 11
start local 11 27: aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
28: aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
29: aload 0
aconst_null
putfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
30: aload 0
aconst_null
putfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
31: aload 0
aconst_null
putfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
32: aload 0
aconst_null
putfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
33: aload 0
aconst_null
putfield okhttp3.internal.connection.RealConnection.handshake:Lokhttp3/Handshake;
34: aload 0
aconst_null
putfield okhttp3.internal.connection.RealConnection.protocol:Lokhttp3/Protocol;
35: aload 0
aconst_null
putfield okhttp3.internal.connection.RealConnection.http2Connection:Lokhttp3/internal/http2/Http2Connection;
36: aload 7
aload 6
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.socketAddress:()Ljava/net/InetSocketAddress;
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.proxy:()Ljava/net/Proxy;
aconst_null
aload 11
invokevirtual okhttp3.EventListener.connectFailed:(Lokhttp3/Call;Ljava/net/InetSocketAddress;Ljava/net/Proxy;Lokhttp3/Protocol;Ljava/io/IOException;)V
37: aload 8
ifnonnull 40
38: new okhttp3.internal.connection.RouteException
dup
aload 11
invokespecial okhttp3.internal.connection.RouteException.<init>:(Ljava/io/IOException;)V
astore 8
39: goto 41
40: StackMap locals: java.io.IOException
StackMap stack:
aload 8
aload 11
invokevirtual okhttp3.internal.connection.RouteException.addConnectException:(Ljava/io/IOException;)V
41: StackMap locals:
StackMap stack:
iload 5
ifeq 42
aload 10
aload 11
invokevirtual okhttp3.internal.connection.ConnectionSpecSelector.connectionFailed:(Ljava/io/IOException;)Z
ifne 18
42: StackMap locals:
StackMap stack:
aload 8
athrow
end local 11 43: StackMap locals:
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.requiresTunnel:()Z
ifeq 46
aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
ifnonnull 46
44: new java.net.ProtocolException
dup
ldc "Too many tunnel connections attempted: 21"
invokespecial java.net.ProtocolException.<init>:(Ljava/lang/String;)V
astore 11
start local 11 45: new okhttp3.internal.connection.RouteException
dup
aload 11
invokespecial okhttp3.internal.connection.RouteException.<init>:(Ljava/io/IOException;)V
athrow
end local 11 46: StackMap locals:
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.http2Connection:Lokhttp3/internal/http2/Http2Connection;
ifnull 53
47: aload 0
getfield okhttp3.internal.connection.RealConnection.connectionPool:Lokhttp3/ConnectionPool;
dup
astore 11
monitorenter
48: aload 0
aload 0
getfield okhttp3.internal.connection.RealConnection.http2Connection:Lokhttp3/internal/http2/Http2Connection;
invokevirtual okhttp3.internal.http2.Http2Connection.maxConcurrentStreams:()I
putfield okhttp3.internal.connection.RealConnection.allocationLimit:I
49: aload 11
monitorexit
50: goto 53
StackMap locals: okhttp3.internal.connection.RealConnection int int int int int okhttp3.Call okhttp3.EventListener okhttp3.internal.connection.RouteException java.util.List okhttp3.internal.connection.ConnectionSpecSelector okhttp3.ConnectionPool
StackMap stack: java.lang.Throwable
51: aload 11
monitorexit
52: athrow
53: StackMap locals:
StackMap stack:
return
end local 10 end local 9 end local 8 end local 7 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 54 0 this Lokhttp3/internal/connection/RealConnection;
0 54 1 connectTimeout I
0 54 2 readTimeout I
0 54 3 writeTimeout I
0 54 4 pingIntervalMillis I
0 54 5 connectionRetryEnabled Z
0 54 6 call Lokhttp3/Call;
0 54 7 eventListener Lokhttp3/EventListener;
2 54 8 routeException Lokhttp3/internal/connection/RouteException;
3 54 9 connectionSpecs Ljava/util/List<Lokhttp3/ConnectionSpec;>;
4 54 10 connectionSpecSelector Lokhttp3/internal/connection/ConnectionSpecSelector;
10 14 11 host Ljava/lang/String;
27 43 11 e Ljava/io/IOException;
45 46 11 exception Ljava/net/ProtocolException;
Exception table:
from to target type
18 21 26 Class java.io.IOException
22 25 26 Class java.io.IOException
48 50 51 any
51 52 51 any
MethodParameters:
Name Flags
connectTimeout
readTimeout
writeTimeout
pingIntervalMillis
connectionRetryEnabled
call
eventListener
private void connectTunnel(int, int, int, okhttp3.Call, okhttp3.EventListener);
descriptor: (IIILokhttp3/Call;Lokhttp3/EventListener;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual okhttp3.internal.connection.RealConnection.createTunnelRequest:()Lokhttp3/Request;
astore 6
start local 6 1: aload 6
invokevirtual okhttp3.Request.url:()Lokhttp3/HttpUrl;
astore 7
start local 7 2: iconst_0
istore 8
start local 8 3: goto 13
4: StackMap locals: okhttp3.Request okhttp3.HttpUrl int
StackMap stack:
aload 0
iload 1
iload 2
aload 4
aload 5
invokevirtual okhttp3.internal.connection.RealConnection.connectSocket:(IILokhttp3/Call;Lokhttp3/EventListener;)V
5: aload 0
iload 2
iload 3
aload 6
aload 7
invokevirtual okhttp3.internal.connection.RealConnection.createTunnel:(IILokhttp3/Request;Lokhttp3/HttpUrl;)Lokhttp3/Request;
astore 6
6: aload 6
ifnonnull 7
goto 14
7: StackMap locals:
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
8: aload 0
aconst_null
putfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
9: aload 0
aconst_null
putfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
10: aload 0
aconst_null
putfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
11: aload 5
aload 4
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.socketAddress:()Ljava/net/InetSocketAddress;
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.proxy:()Ljava/net/Proxy;
aconst_null
invokevirtual okhttp3.EventListener.connectEnd:(Lokhttp3/Call;Ljava/net/InetSocketAddress;Ljava/net/Proxy;Lokhttp3/Protocol;)V
12: iinc 8 1
StackMap locals:
StackMap stack:
13: iload 8
bipush 21
if_icmplt 4
end local 8 14: StackMap locals:
StackMap stack:
return
end local 7 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 15 0 this Lokhttp3/internal/connection/RealConnection;
0 15 1 connectTimeout I
0 15 2 readTimeout I
0 15 3 writeTimeout I
0 15 4 call Lokhttp3/Call;
0 15 5 eventListener Lokhttp3/EventListener;
1 15 6 tunnelRequest Lokhttp3/Request;
2 15 7 url Lokhttp3/HttpUrl;
3 14 8 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
connectTimeout
readTimeout
writeTimeout
call
eventListener
private void connectSocket(int, int, okhttp3.Call, okhttp3.EventListener);
descriptor: (IILokhttp3/Call;Lokhttp3/EventListener;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.proxy:()Ljava/net/Proxy;
astore 5
start local 5 1: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
astore 6
start local 6 2: aload 0
aload 5
invokevirtual java.net.Proxy.type:()Ljava/net/Proxy$Type;
getstatic java.net.Proxy$Type.DIRECT:Ljava/net/Proxy$Type;
if_acmpeq 3
aload 5
invokevirtual java.net.Proxy.type:()Ljava/net/Proxy$Type;
getstatic java.net.Proxy$Type.HTTP:Ljava/net/Proxy$Type;
if_acmpne 4
3: StackMap locals: okhttp3.internal.connection.RealConnection int int okhttp3.Call okhttp3.EventListener java.net.Proxy okhttp3.Address
StackMap stack: okhttp3.internal.connection.RealConnection
aload 6
invokevirtual okhttp3.Address.socketFactory:()Ljavax/net/SocketFactory;
invokevirtual javax.net.SocketFactory.createSocket:()Ljava/net/Socket;
goto 5
4: StackMap locals:
StackMap stack: okhttp3.internal.connection.RealConnection
new java.net.Socket
dup
aload 5
invokespecial java.net.Socket.<init>:(Ljava/net/Proxy;)V
5: StackMap locals: okhttp3.internal.connection.RealConnection int int okhttp3.Call okhttp3.EventListener java.net.Proxy okhttp3.Address
StackMap stack: okhttp3.internal.connection.RealConnection java.net.Socket
putfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
6: aload 4
aload 3
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.socketAddress:()Ljava/net/InetSocketAddress;
aload 5
invokevirtual okhttp3.EventListener.connectStart:(Lokhttp3/Call;Ljava/net/InetSocketAddress;Ljava/net/Proxy;)V
7: aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
iload 2
invokevirtual java.net.Socket.setSoTimeout:(I)V
8: invokestatic okhttp3.internal.platform.Platform.get:()Lokhttp3/internal/platform/Platform;
aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.socketAddress:()Ljava/net/InetSocketAddress;
iload 1
invokevirtual okhttp3.internal.platform.Platform.connectSocket:(Ljava/net/Socket;Ljava/net/InetSocketAddress;I)V
9: goto 14
StackMap locals:
StackMap stack: java.net.ConnectException
10: astore 7
start local 7 11: new java.net.ConnectException
dup
new java.lang.StringBuilder
dup
ldc "Failed to connect to "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.socketAddress:()Ljava/net/InetSocketAddress;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.net.ConnectException.<init>:(Ljava/lang/String;)V
astore 8
start local 8 12: aload 8
aload 7
invokevirtual java.net.ConnectException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
pop
13: aload 8
athrow
end local 8 end local 7 14: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
invokestatic okio.Okio.source:(Ljava/net/Socket;)Lokio/Source;
invokestatic okio.Okio.buffer:(Lokio/Source;)Lokio/BufferedSource;
putfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
15: aload 0
aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
invokestatic okio.Okio.sink:(Ljava/net/Socket;)Lokio/Sink;
invokestatic okio.Okio.buffer:(Lokio/Sink;)Lokio/BufferedSink;
putfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
16: goto 20
StackMap locals:
StackMap stack: java.lang.NullPointerException
17: astore 7
start local 7 18: ldc "throw with null exception"
aload 7
invokevirtual java.lang.NullPointerException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 20
19: new java.io.IOException
dup
aload 7
invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 7 20: StackMap locals:
StackMap stack:
return
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 21 0 this Lokhttp3/internal/connection/RealConnection;
0 21 1 connectTimeout I
0 21 2 readTimeout I
0 21 3 call Lokhttp3/Call;
0 21 4 eventListener Lokhttp3/EventListener;
1 21 5 proxy Ljava/net/Proxy;
2 21 6 address Lokhttp3/Address;
11 14 7 e Ljava/net/ConnectException;
12 14 8 ce Ljava/net/ConnectException;
18 20 7 npe Ljava/lang/NullPointerException;
Exception table:
from to target type
8 9 10 Class java.net.ConnectException
14 16 17 Class java.lang.NullPointerException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
connectTimeout
readTimeout
call
eventListener
private void establishProtocol(okhttp3.internal.connection.ConnectionSpecSelector, int, okhttp3.Call, okhttp3.EventListener);
descriptor: (Lokhttp3/internal/connection/ConnectionSpecSelector;ILokhttp3/Call;Lokhttp3/EventListener;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.sslSocketFactory:()Ljavax/net/ssl/SSLSocketFactory;
ifnonnull 9
1: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.protocols:()Ljava/util/List;
getstatic okhttp3.Protocol.H2_PRIOR_KNOWLEDGE:Lokhttp3/Protocol;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 6
2: aload 0
aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
putfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
3: aload 0
getstatic okhttp3.Protocol.H2_PRIOR_KNOWLEDGE:Lokhttp3/Protocol;
putfield okhttp3.internal.connection.RealConnection.protocol:Lokhttp3/Protocol;
4: aload 0
iload 2
invokevirtual okhttp3.internal.connection.RealConnection.startHttp2:(I)V
5: return
6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
putfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
7: aload 0
getstatic okhttp3.Protocol.HTTP_1_1:Lokhttp3/Protocol;
putfield okhttp3.internal.connection.RealConnection.protocol:Lokhttp3/Protocol;
8: return
9: StackMap locals:
StackMap stack:
aload 4
aload 3
invokevirtual okhttp3.EventListener.secureConnectStart:(Lokhttp3/Call;)V
10: aload 0
aload 1
invokevirtual okhttp3.internal.connection.RealConnection.connectTls:(Lokhttp3/internal/connection/ConnectionSpecSelector;)V
11: aload 4
aload 3
aload 0
getfield okhttp3.internal.connection.RealConnection.handshake:Lokhttp3/Handshake;
invokevirtual okhttp3.EventListener.secureConnectEnd:(Lokhttp3/Call;Lokhttp3/Handshake;)V
12: aload 0
getfield okhttp3.internal.connection.RealConnection.protocol:Lokhttp3/Protocol;
getstatic okhttp3.Protocol.HTTP_2:Lokhttp3/Protocol;
if_acmpne 14
13: aload 0
iload 2
invokevirtual okhttp3.internal.connection.RealConnection.startHttp2:(I)V
14: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lokhttp3/internal/connection/RealConnection;
0 15 1 connectionSpecSelector Lokhttp3/internal/connection/ConnectionSpecSelector;
0 15 2 pingIntervalMillis I
0 15 3 call Lokhttp3/Call;
0 15 4 eventListener Lokhttp3/EventListener;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
connectionSpecSelector
pingIntervalMillis
call
eventListener
private void startHttp2(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
iconst_0
invokevirtual java.net.Socket.setSoTimeout:(I)V
1: aload 0
new okhttp3.internal.http2.Http2Connection$Builder
dup
iconst_1
invokespecial okhttp3.internal.http2.Http2Connection$Builder.<init>:(Z)V
2: aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
aload 0
getfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
aload 0
getfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
invokevirtual okhttp3.internal.http2.Http2Connection$Builder.socket:(Ljava/net/Socket;Ljava/lang/String;Lokio/BufferedSource;Lokio/BufferedSink;)Lokhttp3/internal/http2/Http2Connection$Builder;
3: aload 0
invokevirtual okhttp3.internal.http2.Http2Connection$Builder.listener:(Lokhttp3/internal/http2/Http2Connection$Listener;)Lokhttp3/internal/http2/Http2Connection$Builder;
4: iload 1
invokevirtual okhttp3.internal.http2.Http2Connection$Builder.pingIntervalMillis:(I)Lokhttp3/internal/http2/Http2Connection$Builder;
5: invokevirtual okhttp3.internal.http2.Http2Connection$Builder.build:()Lokhttp3/internal/http2/Http2Connection;
6: putfield okhttp3.internal.connection.RealConnection.http2Connection:Lokhttp3/internal/http2/Http2Connection;
7: aload 0
getfield okhttp3.internal.connection.RealConnection.http2Connection:Lokhttp3/internal/http2/Http2Connection;
invokevirtual okhttp3.internal.http2.Http2Connection.start:()V
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lokhttp3/internal/connection/RealConnection;
0 9 1 pingIntervalMillis I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pingIntervalMillis
private void connectTls(okhttp3.internal.connection.ConnectionSpecSelector);
descriptor: (Lokhttp3/internal/connection/ConnectionSpecSelector;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=11, args_size=2
start local 0 start local 1 0: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
astore 2
start local 2 1: aload 2
invokevirtual okhttp3.Address.sslSocketFactory:()Ljavax/net/ssl/SSLSocketFactory;
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: aconst_null
astore 5
start local 5 4: aload 3
5: aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
aload 2
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
aload 2
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.port:()I
iconst_1
6: invokevirtual javax.net.ssl.SSLSocketFactory.createSocket:(Ljava/net/Socket;Ljava/lang/String;IZ)Ljava/net/Socket;
checkcast javax.net.ssl.SSLSocket
astore 5
7: aload 1
aload 5
invokevirtual okhttp3.internal.connection.ConnectionSpecSelector.configureSecureSocket:(Ljavax/net/ssl/SSLSocket;)Lokhttp3/ConnectionSpec;
astore 6
start local 6 8: aload 6
invokevirtual okhttp3.ConnectionSpec.supportsTlsExtensions:()Z
ifeq 12
9: invokestatic okhttp3.internal.platform.Platform.get:()Lokhttp3/internal/platform/Platform;
10: aload 5
aload 2
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
aload 2
invokevirtual okhttp3.Address.protocols:()Ljava/util/List;
11: invokevirtual okhttp3.internal.platform.Platform.configureTlsExtensions:(Ljavax/net/ssl/SSLSocket;Ljava/lang/String;Ljava/util/List;)V
12: StackMap locals: okhttp3.internal.connection.RealConnection okhttp3.internal.connection.ConnectionSpecSelector okhttp3.Address javax.net.ssl.SSLSocketFactory int javax.net.ssl.SSLSocket okhttp3.ConnectionSpec
StackMap stack:
aload 5
invokevirtual javax.net.ssl.SSLSocket.startHandshake:()V
13: aload 5
invokevirtual javax.net.ssl.SSLSocket.getSession:()Ljavax/net/ssl/SSLSession;
astore 7
start local 7 14: aload 7
invokestatic okhttp3.Handshake.get:(Ljavax/net/ssl/SSLSession;)Lokhttp3/Handshake;
astore 8
start local 8 15: aload 2
invokevirtual okhttp3.Address.hostnameVerifier:()Ljavax/net/ssl/HostnameVerifier;
aload 2
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
aload 7
invokeinterface javax.net.ssl.HostnameVerifier.verify:(Ljava/lang/String;Ljavax/net/ssl/SSLSession;)Z
ifne 22
16: aload 8
invokevirtual okhttp3.Handshake.peerCertificates:()Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.security.cert.X509Certificate
astore 9
start local 9 17: new javax.net.ssl.SSLPeerUnverifiedException
dup
new java.lang.StringBuilder
dup
ldc "Hostname "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " not verified:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
18: ldc "\n certificate: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
invokestatic okhttp3.CertificatePinner.pin:(Ljava/security/cert/Certificate;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
19: ldc "\n DN: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
invokevirtual java.security.cert.X509Certificate.getSubjectDN:()Ljava/security/Principal;
invokeinterface java.security.Principal.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
20: ldc "\n subjectAltNames: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
invokestatic okhttp3.internal.tls.OkHostnameVerifier.allSubjectAltNames:(Ljava/security/cert/X509Certificate;)Ljava/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
21: invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
athrow
end local 9 22: StackMap locals: javax.net.ssl.SSLSession okhttp3.Handshake
StackMap stack:
aload 2
invokevirtual okhttp3.Address.certificatePinner:()Lokhttp3/CertificatePinner;
aload 2
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
23: aload 8
invokevirtual okhttp3.Handshake.peerCertificates:()Ljava/util/List;
24: invokevirtual okhttp3.CertificatePinner.check:(Ljava/lang/String;Ljava/util/List;)V
25: aload 6
invokevirtual okhttp3.ConnectionSpec.supportsTlsExtensions:()Z
ifeq 27
26: invokestatic okhttp3.internal.platform.Platform.get:()Lokhttp3/internal/platform/Platform;
aload 5
invokevirtual okhttp3.internal.platform.Platform.getSelectedProtocol:(Ljavax/net/ssl/SSLSocket;)Ljava/lang/String;
goto 28
27: StackMap locals:
StackMap stack:
aconst_null
28: StackMap locals:
StackMap stack: java.lang.String
astore 9
start local 9 29: aload 0
aload 5
putfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
30: aload 0
aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
invokestatic okio.Okio.source:(Ljava/net/Socket;)Lokio/Source;
invokestatic okio.Okio.buffer:(Lokio/Source;)Lokio/BufferedSource;
putfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
31: aload 0
aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
invokestatic okio.Okio.sink:(Ljava/net/Socket;)Lokio/Sink;
invokestatic okio.Okio.buffer:(Lokio/Sink;)Lokio/BufferedSink;
putfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
32: aload 0
aload 8
putfield okhttp3.internal.connection.RealConnection.handshake:Lokhttp3/Handshake;
33: aload 0
aload 9
ifnull 35
34: aload 9
invokestatic okhttp3.Protocol.get:(Ljava/lang/String;)Lokhttp3/Protocol;
goto 36
35: StackMap locals: okhttp3.internal.connection.RealConnection okhttp3.internal.connection.ConnectionSpecSelector okhttp3.Address javax.net.ssl.SSLSocketFactory int javax.net.ssl.SSLSocket okhttp3.ConnectionSpec javax.net.ssl.SSLSession okhttp3.Handshake java.lang.String
StackMap stack: okhttp3.internal.connection.RealConnection
getstatic okhttp3.Protocol.HTTP_1_1:Lokhttp3/Protocol;
36: StackMap locals: okhttp3.internal.connection.RealConnection okhttp3.internal.connection.ConnectionSpecSelector okhttp3.Address javax.net.ssl.SSLSocketFactory int javax.net.ssl.SSLSocket okhttp3.ConnectionSpec javax.net.ssl.SSLSession okhttp3.Handshake java.lang.String
StackMap stack: okhttp3.internal.connection.RealConnection okhttp3.Protocol
putfield okhttp3.internal.connection.RealConnection.protocol:Lokhttp3/Protocol;
37: iconst_1
istore 4
end local 9 end local 8 end local 7 end local 6 38: goto 48
StackMap locals: okhttp3.internal.connection.RealConnection okhttp3.internal.connection.ConnectionSpecSelector okhttp3.Address javax.net.ssl.SSLSocketFactory int javax.net.ssl.SSLSocket
StackMap stack: java.lang.AssertionError
39: astore 6
start local 6 40: aload 6
invokestatic okhttp3.internal.Util.isAndroidGetsocknameError:(Ljava/lang/AssertionError;)Z
ifeq 41
new java.io.IOException
dup
aload 6
invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
athrow
41: StackMap locals: java.lang.AssertionError
StackMap stack:
aload 6
athrow
end local 6 42: StackMap locals: okhttp3.internal.connection.RealConnection okhttp3.internal.connection.ConnectionSpecSelector okhttp3.Address javax.net.ssl.SSLSocketFactory int javax.net.ssl.SSLSocket
StackMap stack: java.lang.Throwable
astore 10
43: aload 5
ifnull 45
44: invokestatic okhttp3.internal.platform.Platform.get:()Lokhttp3/internal/platform/Platform;
aload 5
invokevirtual okhttp3.internal.platform.Platform.afterHandshake:(Ljavax/net/ssl/SSLSocket;)V
45: StackMap locals: okhttp3.internal.connection.RealConnection okhttp3.internal.connection.ConnectionSpecSelector okhttp3.Address javax.net.ssl.SSLSocketFactory int javax.net.ssl.SSLSocket top top top top java.lang.Throwable
StackMap stack:
iload 4
ifne 47
46: aload 5
invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
47: StackMap locals:
StackMap stack:
aload 10
athrow
48: StackMap locals: okhttp3.internal.connection.RealConnection okhttp3.internal.connection.ConnectionSpecSelector okhttp3.Address javax.net.ssl.SSLSocketFactory int javax.net.ssl.SSLSocket
StackMap stack:
aload 5
ifnull 50
49: invokestatic okhttp3.internal.platform.Platform.get:()Lokhttp3/internal/platform/Platform;
aload 5
invokevirtual okhttp3.internal.platform.Platform.afterHandshake:(Ljavax/net/ssl/SSLSocket;)V
50: StackMap locals:
StackMap stack:
iload 4
ifne 52
51: aload 5
invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
52: StackMap locals:
StackMap stack:
return
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 53 0 this Lokhttp3/internal/connection/RealConnection;
0 53 1 connectionSpecSelector Lokhttp3/internal/connection/ConnectionSpecSelector;
1 53 2 address Lokhttp3/Address;
2 53 3 sslSocketFactory Ljavax/net/ssl/SSLSocketFactory;
3 53 4 success Z
4 53 5 sslSocket Ljavax/net/ssl/SSLSocket;
8 38 6 connectionSpec Lokhttp3/ConnectionSpec;
14 38 7 sslSocketSession Ljavax/net/ssl/SSLSession;
15 38 8 unverifiedHandshake Lokhttp3/Handshake;
17 22 9 cert Ljava/security/cert/X509Certificate;
29 38 9 maybeProtocol Ljava/lang/String;
40 42 6 e Ljava/lang/AssertionError;
Exception table:
from to target type
4 38 39 Class java.lang.AssertionError
4 42 42 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
connectionSpecSelector
private okhttp3.Request createTunnel(int, int, okhttp3.Request, okhttp3.HttpUrl);
descriptor: (IILokhttp3/Request;Lokhttp3/HttpUrl;)Lokhttp3/Request;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new java.lang.StringBuilder
dup
ldc "CONNECT "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
iconst_1
invokestatic okhttp3.internal.Util.hostHeader:(Lokhttp3/HttpUrl;Z)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " HTTP/1.1"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 1: StackMap locals: java.lang.String
StackMap stack:
new okhttp3.internal.http1.Http1Codec
dup
aconst_null
aconst_null
aload 0
getfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
aload 0
getfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
invokespecial okhttp3.internal.http1.Http1Codec.<init>:(Lokhttp3/OkHttpClient;Lokhttp3/internal/connection/StreamAllocation;Lokio/BufferedSource;Lokio/BufferedSink;)V
astore 6
start local 6 2: aload 0
getfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
invokeinterface okio.BufferedSource.timeout:()Lokio/Timeout;
iload 1
i2l
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual okio.Timeout.timeout:(JLjava/util/concurrent/TimeUnit;)Lokio/Timeout;
pop
3: aload 0
getfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
invokeinterface okio.BufferedSink.timeout:()Lokio/Timeout;
iload 2
i2l
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual okio.Timeout.timeout:(JLjava/util/concurrent/TimeUnit;)Lokio/Timeout;
pop
4: aload 6
aload 3
invokevirtual okhttp3.Request.headers:()Lokhttp3/Headers;
aload 5
invokevirtual okhttp3.internal.http1.Http1Codec.writeRequest:(Lokhttp3/Headers;Ljava/lang/String;)V
5: aload 6
invokevirtual okhttp3.internal.http1.Http1Codec.finishRequest:()V
6: aload 6
iconst_0
invokevirtual okhttp3.internal.http1.Http1Codec.readResponseHeaders:(Z)Lokhttp3/Response$Builder;
7: aload 3
invokevirtual okhttp3.Response$Builder.request:(Lokhttp3/Request;)Lokhttp3/Response$Builder;
8: invokevirtual okhttp3.Response$Builder.build:()Lokhttp3/Response;
9: astore 7
start local 7 10: aload 7
invokestatic okhttp3.internal.http.HttpHeaders.contentLength:(Lokhttp3/Response;)J
lstore 8
start local 8 11: lload 8
ldc -1
lcmp
ifne 13
12: lconst_0
lstore 8
13: StackMap locals: okhttp3.internal.http1.Http1Codec okhttp3.Response long
StackMap stack:
aload 6
lload 8
invokevirtual okhttp3.internal.http1.Http1Codec.newFixedLengthSource:(J)Lokio/Source;
astore 10
start local 10 14: aload 10
ldc 2147483647
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokestatic okhttp3.internal.Util.skipAll:(Lokio/Source;ILjava/util/concurrent/TimeUnit;)Z
pop
15: aload 10
invokeinterface okio.Source.close:()V
16: aload 7
invokevirtual okhttp3.Response.code:()I
lookupswitch { // 2
200: 17
407: 20
default: 24
}
17: StackMap locals: okio.Source
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
invokeinterface okio.BufferedSource.buffer:()Lokio/Buffer;
invokevirtual okio.Buffer.exhausted:()Z
ifeq 18
aload 0
getfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
invokeinterface okio.BufferedSink.buffer:()Lokio/Buffer;
invokevirtual okio.Buffer.exhausted:()Z
ifne 19
18: StackMap locals:
StackMap stack:
new java.io.IOException
dup
ldc "TLS tunnel buffered too many bytes!"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
19: StackMap locals:
StackMap stack:
aconst_null
areturn
20: StackMap locals:
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.proxyAuthenticator:()Lokhttp3/Authenticator;
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
aload 7
invokeinterface okhttp3.Authenticator.authenticate:(Lokhttp3/Route;Lokhttp3/Response;)Lokhttp3/Request;
astore 3
21: aload 3
ifnonnull 22
new java.io.IOException
dup
ldc "Failed to authenticate with proxy"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
22: StackMap locals:
StackMap stack:
ldc "close"
aload 7
ldc "Connection"
invokevirtual okhttp3.Response.header:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 1
23: aload 3
areturn
24: StackMap locals:
StackMap stack:
new java.io.IOException
dup
25: new java.lang.StringBuilder
dup
ldc "Unexpected response code for CONNECT: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual okhttp3.Response.code:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 10 end local 8 end local 7 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 27 0 this Lokhttp3/internal/connection/RealConnection;
0 27 1 readTimeout I
0 27 2 writeTimeout I
0 27 3 tunnelRequest Lokhttp3/Request;
0 27 4 url Lokhttp3/HttpUrl;
1 27 5 requestLine Ljava/lang/String;
2 27 6 tunnelConnection Lokhttp3/internal/http1/Http1Codec;
10 27 7 response Lokhttp3/Response;
11 27 8 contentLength J
14 27 10 body Lokio/Source;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
readTimeout
writeTimeout
tunnelRequest
url
private okhttp3.Request createTunnelRequest();
descriptor: ()Lokhttp3/Request;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=1
start local 0 0: new okhttp3.Request$Builder
dup
invokespecial okhttp3.Request$Builder.<init>:()V
1: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.Request$Builder.url:(Lokhttp3/HttpUrl;)Lokhttp3/Request$Builder;
2: ldc "CONNECT"
aconst_null
invokevirtual okhttp3.Request$Builder.method:(Ljava/lang/String;Lokhttp3/RequestBody;)Lokhttp3/Request$Builder;
3: ldc "Host"
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
iconst_1
invokestatic okhttp3.internal.Util.hostHeader:(Lokhttp3/HttpUrl;Z)Ljava/lang/String;
invokevirtual okhttp3.Request$Builder.header:(Ljava/lang/String;Ljava/lang/String;)Lokhttp3/Request$Builder;
4: ldc "Proxy-Connection"
ldc "Keep-Alive"
invokevirtual okhttp3.Request$Builder.header:(Ljava/lang/String;Ljava/lang/String;)Lokhttp3/Request$Builder;
5: ldc "User-Agent"
invokestatic okhttp3.internal.Version.userAgent:()Ljava/lang/String;
invokevirtual okhttp3.Request$Builder.header:(Ljava/lang/String;Ljava/lang/String;)Lokhttp3/Request$Builder;
6: invokevirtual okhttp3.Request$Builder.build:()Lokhttp3/Request;
7: astore 1
start local 1 8: new okhttp3.Response$Builder
dup
invokespecial okhttp3.Response$Builder.<init>:()V
9: aload 1
invokevirtual okhttp3.Response$Builder.request:(Lokhttp3/Request;)Lokhttp3/Response$Builder;
10: getstatic okhttp3.Protocol.HTTP_1_1:Lokhttp3/Protocol;
invokevirtual okhttp3.Response$Builder.protocol:(Lokhttp3/Protocol;)Lokhttp3/Response$Builder;
11: sipush 407
invokevirtual okhttp3.Response$Builder.code:(I)Lokhttp3/Response$Builder;
12: ldc "Preemptive Authenticate"
invokevirtual okhttp3.Response$Builder.message:(Ljava/lang/String;)Lokhttp3/Response$Builder;
13: getstatic okhttp3.internal.Util.EMPTY_RESPONSE:Lokhttp3/ResponseBody;
invokevirtual okhttp3.Response$Builder.body:(Lokhttp3/ResponseBody;)Lokhttp3/Response$Builder;
14: ldc -1
invokevirtual okhttp3.Response$Builder.sentRequestAtMillis:(J)Lokhttp3/Response$Builder;
15: ldc -1
invokevirtual okhttp3.Response$Builder.receivedResponseAtMillis:(J)Lokhttp3/Response$Builder;
16: ldc "Proxy-Authenticate"
ldc "OkHttp-Preemptive"
invokevirtual okhttp3.Response$Builder.header:(Ljava/lang/String;Ljava/lang/String;)Lokhttp3/Response$Builder;
17: invokevirtual okhttp3.Response$Builder.build:()Lokhttp3/Response;
18: astore 2
start local 2 19: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.proxyAuthenticator:()Lokhttp3/Authenticator;
20: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
aload 2
invokeinterface okhttp3.Authenticator.authenticate:(Lokhttp3/Route;Lokhttp3/Response;)Lokhttp3/Request;
21: astore 3
start local 3 22: aload 3
ifnull 24
23: aload 3
goto 25
24: StackMap locals: okhttp3.Request okhttp3.Response okhttp3.Request
StackMap stack:
aload 1
25: StackMap locals:
StackMap stack: okhttp3.Request
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lokhttp3/internal/connection/RealConnection;
8 26 1 proxyConnectRequest Lokhttp3/Request;
19 26 2 fakeAuthChallengeResponse Lokhttp3/Response;
22 26 3 authenticatedRequest Lokhttp3/Request;
Exceptions:
throws java.io.IOException
public boolean isEligible(okhttp3.Address, okhttp3.Route);
descriptor: (Lokhttp3/Address;Lokhttp3/Route;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tNullable cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lokhttp3/internal/connection/RealConnection;
RuntimeInvisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
Nullable()
RuntimeInvisibleParameterAnnotations:
0:
1:
Nullable()
MethodParameters:
Name Flags
address
route
public boolean supportsUrl(okhttp3.HttpUrl);
descriptor: (Lokhttp3/HttpUrl;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual okhttp3.HttpUrl.port:()I
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.port:()I
if_icmpeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 9
3: aload 0
getfield okhttp3.internal.connection.RealConnection.handshake:Lokhttp3/Handshake;
ifnull 8
getstatic okhttp3.internal.tls.OkHostnameVerifier.INSTANCE:Lokhttp3/internal/tls/OkHostnameVerifier;
4: aload 1
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
aload 0
getfield okhttp3.internal.connection.RealConnection.handshake:Lokhttp3/Handshake;
invokevirtual okhttp3.Handshake.peerCertificates:()Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.security.cert.X509Certificate
5: invokevirtual okhttp3.internal.tls.OkHostnameVerifier.verify:(Ljava/lang/String;Ljava/security/cert/X509Certificate;)Z
6: ifeq 8
7: iconst_1
ireturn
StackMap locals:
StackMap stack:
8: iconst_0
ireturn
9: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lokhttp3/internal/connection/RealConnection;
0 10 1 url Lokhttp3/HttpUrl;
MethodParameters:
Name Flags
url
public okhttp3.internal.http.HttpCodec newCodec(okhttp3.OkHttpClient, okhttp3.Interceptor$Chain, okhttp3.internal.connection.StreamAllocation);
descriptor: (Lokhttp3/OkHttpClient;Lokhttp3/Interceptor$Chain;Lokhttp3/internal/connection/StreamAllocation;)Lokhttp3/internal/http/HttpCodec;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield okhttp3.internal.connection.RealConnection.http2Connection:Lokhttp3/internal/http2/Http2Connection;
ifnull 2
1: new okhttp3.internal.http2.Http2Codec
dup
aload 1
aload 2
aload 3
aload 0
getfield okhttp3.internal.connection.RealConnection.http2Connection:Lokhttp3/internal/http2/Http2Connection;
invokespecial okhttp3.internal.http2.Http2Codec.<init>:(Lokhttp3/OkHttpClient;Lokhttp3/Interceptor$Chain;Lokhttp3/internal/connection/StreamAllocation;Lokhttp3/internal/http2/Http2Connection;)V
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
aload 2
invokeinterface okhttp3.Interceptor$Chain.readTimeoutMillis:()I
invokevirtual java.net.Socket.setSoTimeout:(I)V
3: aload 0
getfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
invokeinterface okio.BufferedSource.timeout:()Lokio/Timeout;
aload 2
invokeinterface okhttp3.Interceptor$Chain.readTimeoutMillis:()I
i2l
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual okio.Timeout.timeout:(JLjava/util/concurrent/TimeUnit;)Lokio/Timeout;
pop
4: aload 0
getfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
invokeinterface okio.BufferedSink.timeout:()Lokio/Timeout;
aload 2
invokeinterface okhttp3.Interceptor$Chain.writeTimeoutMillis:()I
i2l
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual okio.Timeout.timeout:(JLjava/util/concurrent/TimeUnit;)Lokio/Timeout;
pop
5: new okhttp3.internal.http1.Http1Codec
dup
aload 1
aload 3
aload 0
getfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
aload 0
getfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
invokespecial okhttp3.internal.http1.Http1Codec.<init>:(Lokhttp3/OkHttpClient;Lokhttp3/internal/connection/StreamAllocation;Lokio/BufferedSource;Lokio/BufferedSink;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lokhttp3/internal/connection/RealConnection;
0 6 1 client Lokhttp3/OkHttpClient;
0 6 2 chain Lokhttp3/Interceptor$Chain;
0 6 3 streamAllocation Lokhttp3/internal/connection/StreamAllocation;
Exceptions:
throws java.net.SocketException
MethodParameters:
Name Flags
client
chain
streamAllocation
public okhttp3.internal.ws.RealWebSocket$Streams newWebSocketStreams(okhttp3.internal.connection.StreamAllocation);
descriptor: (Lokhttp3/internal/connection/StreamAllocation;)Lokhttp3/internal/ws/RealWebSocket$Streams;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: new okhttp3.internal.connection.RealConnection$1
dup
aload 0
iconst_1
aload 0
getfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
aload 0
getfield okhttp3.internal.connection.RealConnection.sink:Lokio/BufferedSink;
aload 1
invokespecial okhttp3.internal.connection.RealConnection$1.<init>:(Lokhttp3/internal/connection/RealConnection;ZLokio/BufferedSource;Lokio/BufferedSink;Lokhttp3/internal/connection/StreamAllocation;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lokhttp3/internal/connection/RealConnection;
0 1 1 streamAllocation Lokhttp3/internal/connection/StreamAllocation;
MethodParameters:
Name Flags
streamAllocation final
public okhttp3.Route route();
descriptor: ()Lokhttp3/Route;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lokhttp3/internal/connection/RealConnection;
public void cancel();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield okhttp3.internal.connection.RealConnection.rawSocket:Ljava/net/Socket;
invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lokhttp3/internal/connection/RealConnection;
public java.net.Socket socket();
descriptor: ()Ljava/net/Socket;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lokhttp3/internal/connection/RealConnection;
public boolean isHealthy(boolean);
descriptor: (Z)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
invokevirtual java.net.Socket.isClosed:()Z
ifne 1
aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
invokevirtual java.net.Socket.isInputShutdown:()Z
ifne 1
aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
invokevirtual java.net.Socket.isOutputShutdown:()Z
ifeq 2
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.http2Connection:Lokhttp3/internal/http2/Http2Connection;
ifnull 6
3: aload 0
getfield okhttp3.internal.connection.RealConnection.http2Connection:Lokhttp3/internal/http2/Http2Connection;
invokevirtual okhttp3.internal.http2.Http2Connection.isShutdown:()Z
ifeq 4
iconst_0
goto 5
StackMap locals:
StackMap stack:
4: iconst_1
StackMap locals:
StackMap stack: int
5: ireturn
6: StackMap locals:
StackMap stack:
iload 1
ifeq 20
7: aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
invokevirtual java.net.Socket.getSoTimeout:()I
istore 2
start local 2 8: aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
iconst_1
invokevirtual java.net.Socket.setSoTimeout:(I)V
9: aload 0
getfield okhttp3.internal.connection.RealConnection.source:Lokio/BufferedSource;
invokeinterface okio.BufferedSource.exhausted:()Z
ifeq 12
10: aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
iload 2
invokevirtual java.net.Socket.setSoTimeout:(I)V
11: iconst_0
ireturn
12: StackMap locals: int
StackMap stack:
aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
iload 2
invokevirtual java.net.Socket.setSoTimeout:(I)V
13: iconst_1
ireturn
14: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
15: aload 0
getfield okhttp3.internal.connection.RealConnection.socket:Ljava/net/Socket;
iload 2
invokevirtual java.net.Socket.setSoTimeout:(I)V
16: aload 3
athrow
end local 2 17: StackMap locals: okhttp3.internal.connection.RealConnection int
StackMap stack: java.net.SocketTimeoutException
pop
goto 20
18: StackMap locals:
StackMap stack: java.io.IOException
pop
19: iconst_0
ireturn
20: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lokhttp3/internal/connection/RealConnection;
0 21 1 doExtensiveChecks Z
8 17 2 readTimeout I
Exception table:
from to target type
8 10 14 any
7 11 17 Class java.net.SocketTimeoutException
12 13 17 Class java.net.SocketTimeoutException
14 17 17 Class java.net.SocketTimeoutException
7 11 18 Class java.io.IOException
12 13 18 Class java.io.IOException
14 17 18 Class java.io.IOException
MethodParameters:
Name Flags
doExtensiveChecks
public void onStream(okhttp3.internal.http2.Http2Stream);
descriptor: (Lokhttp3/internal/http2/Http2Stream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getstatic okhttp3.internal.http2.ErrorCode.REFUSED_STREAM:Lokhttp3/internal/http2/ErrorCode;
invokevirtual okhttp3.internal.http2.Http2Stream.close:(Lokhttp3/internal/http2/ErrorCode;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lokhttp3/internal/connection/RealConnection;
0 2 1 stream Lokhttp3/internal/http2/Http2Stream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
stream
public void onSettings(okhttp3.internal.http2.Http2Connection);
descriptor: (Lokhttp3/internal/http2/Http2Connection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield okhttp3.internal.connection.RealConnection.connectionPool:Lokhttp3/ConnectionPool;
dup
astore 2
monitorenter
1: aload 0
aload 1
invokevirtual okhttp3.internal.http2.Http2Connection.maxConcurrentStreams:()I
putfield okhttp3.internal.connection.RealConnection.allocationLimit:I
2: aload 2
monitorexit
3: goto 6
StackMap locals: okhttp3.internal.connection.RealConnection okhttp3.internal.http2.Http2Connection okhttp3.ConnectionPool
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lokhttp3/internal/connection/RealConnection;
0 7 1 connection Lokhttp3/internal/http2/Http2Connection;
Exception table:
from to target type
1 3 4 any
4 5 4 any
MethodParameters:
Name Flags
connection
public okhttp3.Handshake handshake();
descriptor: ()Lokhttp3/Handshake;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield okhttp3.internal.connection.RealConnection.handshake:Lokhttp3/Handshake;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lokhttp3/internal/connection/RealConnection;
public boolean isMultiplexed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield okhttp3.internal.connection.RealConnection.http2Connection:Lokhttp3/internal/http2/Http2Connection;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lokhttp3/internal/connection/RealConnection;
public okhttp3.Protocol protocol();
descriptor: ()Lokhttp3/Protocol;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield okhttp3.internal.connection.RealConnection.protocol:Lokhttp3/Protocol;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lokhttp3/internal/connection/RealConnection;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "Connection{"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.host:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.address:()Lokhttp3/Address;
invokevirtual okhttp3.Address.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.port:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
2: ldc ", proxy="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.proxy:()Ljava/net/Proxy;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
4: ldc " hostAddress="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: aload 0
getfield okhttp3.internal.connection.RealConnection.route:Lokhttp3/Route;
invokevirtual okhttp3.Route.socketAddress:()Ljava/net/InetSocketAddress;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
6: ldc " cipherSuite="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: aload 0
getfield okhttp3.internal.connection.RealConnection.handshake:Lokhttp3/Handshake;
ifnull 8
aload 0
getfield okhttp3.internal.connection.RealConnection.handshake:Lokhttp3/Handshake;
invokevirtual okhttp3.Handshake.cipherSuite:()Lokhttp3/CipherSuite;
goto 9
StackMap locals:
StackMap stack: java.lang.StringBuilder
8: ldc "none"
StackMap locals: okhttp3.internal.connection.RealConnection
StackMap stack: java.lang.StringBuilder java.lang.Object
9: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
10: ldc " protocol="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: aload 0
getfield okhttp3.internal.connection.RealConnection.protocol:Lokhttp3/Protocol;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
12: bipush 125
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
13: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lokhttp3/internal/connection/RealConnection;
}
SourceFile: "RealConnection.java"
NestMembers:
okhttp3.internal.connection.RealConnection$1
InnerClasses:
public final Type = java.net.Proxy$Type of java.net.Proxy
public abstract Chain = okhttp3.Interceptor$Chain of okhttp3.Interceptor
public Builder = okhttp3.Request$Builder of okhttp3.Request
public Builder = okhttp3.Response$Builder of okhttp3.Response
okhttp3.internal.connection.RealConnection$1
public Builder = okhttp3.internal.http2.Http2Connection$Builder of okhttp3.internal.http2.Http2Connection
public abstract Listener = okhttp3.internal.http2.Http2Connection$Listener of okhttp3.internal.http2.Http2Connection
public abstract Streams = okhttp3.internal.ws.RealWebSocket$Streams of okhttp3.internal.ws.RealWebSocket