public final class okhttp3.internal.http2.Http2Codec implements okhttp3.internal.http.HttpCodec
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: okhttp3.internal.http2.Http2Codec
super_class: java.lang.Object
{
private static final java.lang.String CONNECTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "connection"
private static final java.lang.String HOST;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "host"
private static final java.lang.String KEEP_ALIVE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "keep-alive"
private static final java.lang.String PROXY_CONNECTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "proxy-connection"
private static final java.lang.String TRANSFER_ENCODING;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "transfer-encoding"
private static final java.lang.String TE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "te"
private static final java.lang.String ENCODING;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "encoding"
private static final java.lang.String UPGRADE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "upgrade"
private static final java.util.List<java.lang.String> ;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private static final java.util.List<java.lang.String> ;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private final okhttp3.Interceptor$Chain chain;
descriptor: Lokhttp3/Interceptor$Chain;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final okhttp3.internal.connection.StreamAllocation streamAllocation;
descriptor: Lokhttp3/internal/connection/StreamAllocation;
flags: (0x0010) ACC_FINAL
private final okhttp3.internal.http2.Http2Connection connection;
descriptor: Lokhttp3/internal/http2/Http2Connection;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private okhttp3.internal.http2.Http2Stream stream;
descriptor: Lokhttp3/internal/http2/Http2Stream;
flags: (0x0002) ACC_PRIVATE
private final okhttp3.Protocol protocol;
descriptor: Lokhttp3/Protocol;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: bipush 12
anewarray java.lang.String
dup
iconst_0
1: ldc "connection"
aastore
dup
iconst_1
2: ldc "host"
aastore
dup
iconst_2
3: ldc "keep-alive"
aastore
dup
iconst_3
4: ldc "proxy-connection"
aastore
dup
iconst_4
5: ldc "te"
aastore
dup
iconst_5
6: ldc "transfer-encoding"
aastore
dup
bipush 6
7: ldc "encoding"
aastore
dup
bipush 7
8: ldc "upgrade"
aastore
dup
bipush 8
9: ldc ":method"
aastore
dup
bipush 9
10: ldc ":path"
aastore
dup
bipush 10
11: ldc ":scheme"
aastore
dup
bipush 11
12: ldc ":authority"
aastore
13: invokestatic okhttp3.internal.Util.immutableList:([Ljava/lang/Object;)Ljava/util/List;
putstatic okhttp3.internal.http2.Http2Codec.HTTP_2_SKIPPED_REQUEST_HEADERS:Ljava/util/List;
14: bipush 8
anewarray java.lang.String
dup
iconst_0
15: ldc "connection"
aastore
dup
iconst_1
16: ldc "host"
aastore
dup
iconst_2
17: ldc "keep-alive"
aastore
dup
iconst_3
18: ldc "proxy-connection"
aastore
dup
iconst_4
19: ldc "te"
aastore
dup
iconst_5
20: ldc "transfer-encoding"
aastore
dup
bipush 6
21: ldc "encoding"
aastore
dup
bipush 7
22: ldc "upgrade"
aastore
23: invokestatic okhttp3.internal.Util.immutableList:([Ljava/lang/Object;)Ljava/util/List;
putstatic okhttp3.internal.http2.Http2Codec.HTTP_2_SKIPPED_RESPONSE_HEADERS:Ljava/util/List;
24: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(okhttp3.OkHttpClient, okhttp3.Interceptor$Chain, okhttp3.internal.connection.StreamAllocation, okhttp3.internal.http2.Http2Connection);
descriptor: (Lokhttp3/OkHttpClient;Lokhttp3/Interceptor$Chain;Lokhttp3/internal/connection/StreamAllocation;Lokhttp3/internal/http2/Http2Connection;)V
flags: (0x0001) ACC_PUBLIC
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
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 2
putfield okhttp3.internal.http2.Http2Codec.chain:Lokhttp3/Interceptor$Chain;
2: aload 0
aload 3
putfield okhttp3.internal.http2.Http2Codec.streamAllocation:Lokhttp3/internal/connection/StreamAllocation;
3: aload 0
aload 4
putfield okhttp3.internal.http2.Http2Codec.connection:Lokhttp3/internal/http2/Http2Connection;
4: aload 0
aload 1
invokevirtual okhttp3.OkHttpClient.protocols:()Ljava/util/List;
getstatic okhttp3.Protocol.H2_PRIOR_KNOWLEDGE:Lokhttp3/Protocol;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 6
5: getstatic okhttp3.Protocol.H2_PRIOR_KNOWLEDGE:Lokhttp3/Protocol;
goto 7
6: StackMap locals: okhttp3.internal.http2.Http2Codec okhttp3.OkHttpClient okhttp3.Interceptor$Chain okhttp3.internal.connection.StreamAllocation okhttp3.internal.http2.Http2Connection
StackMap stack: okhttp3.internal.http2.Http2Codec
getstatic okhttp3.Protocol.HTTP_2:Lokhttp3/Protocol;
7: StackMap locals: okhttp3.internal.http2.Http2Codec okhttp3.OkHttpClient okhttp3.Interceptor$Chain okhttp3.internal.connection.StreamAllocation okhttp3.internal.http2.Http2Connection
StackMap stack: okhttp3.internal.http2.Http2Codec okhttp3.Protocol
putfield okhttp3.internal.http2.Http2Codec.protocol:Lokhttp3/Protocol;
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lokhttp3/internal/http2/Http2Codec;
0 9 1 client Lokhttp3/OkHttpClient;
0 9 2 chain Lokhttp3/Interceptor$Chain;
0 9 3 streamAllocation Lokhttp3/internal/connection/StreamAllocation;
0 9 4 connection Lokhttp3/internal/http2/Http2Connection;
MethodParameters:
Name Flags
client
chain
streamAllocation
connection
public okio.Sink createRequestBody(okhttp3.Request, long);
descriptor: (Lokhttp3/Request;J)Lokio/Sink;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield okhttp3.internal.http2.Http2Codec.stream:Lokhttp3/internal/http2/Http2Stream;
invokevirtual okhttp3.internal.http2.Http2Stream.getSink:()Lokio/Sink;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lokhttp3/internal/http2/Http2Codec;
0 1 1 request Lokhttp3/Request;
0 1 2 contentLength J
MethodParameters:
Name Flags
request
contentLength
public void (okhttp3.Request);
descriptor: (Lokhttp3/Request;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield okhttp3.internal.http2.Http2Codec.stream:Lokhttp3/internal/http2/Http2Stream;
ifnull 1
return
1: StackMap locals:
StackMap stack:
aload 1
invokevirtual okhttp3.Request.body:()Lokhttp3/RequestBody;
ifnull 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 2
start local 2 4: aload 1
invokestatic okhttp3.internal.http2.Http2Codec.http2HeadersList:(Lokhttp3/Request;)Ljava/util/List;
astore 3
start local 3 5: aload 0
aload 0
getfield okhttp3.internal.http2.Http2Codec.connection:Lokhttp3/internal/http2/Http2Connection;
aload 3
iload 2
invokevirtual okhttp3.internal.http2.Http2Connection.newStream:(Ljava/util/List;Z)Lokhttp3/internal/http2/Http2Stream;
putfield okhttp3.internal.http2.Http2Codec.stream:Lokhttp3/internal/http2/Http2Stream;
6: aload 0
getfield okhttp3.internal.http2.Http2Codec.stream:Lokhttp3/internal/http2/Http2Stream;
invokevirtual okhttp3.internal.http2.Http2Stream.readTimeout:()Lokio/Timeout;
aload 0
getfield okhttp3.internal.http2.Http2Codec.chain:Lokhttp3/Interceptor$Chain;
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
7: aload 0
getfield okhttp3.internal.http2.Http2Codec.stream:Lokhttp3/internal/http2/Http2Stream;
invokevirtual okhttp3.internal.http2.Http2Stream.writeTimeout:()Lokio/Timeout;
aload 0
getfield okhttp3.internal.http2.Http2Codec.chain:Lokhttp3/Interceptor$Chain;
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
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lokhttp3/internal/http2/Http2Codec;
0 9 1 request Lokhttp3/Request;
4 9 2 hasRequestBody Z
5 9 3 requestHeaders Ljava/util/List<Lokhttp3/internal/http2/Header;>;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
request
public void flushRequest();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield okhttp3.internal.http2.Http2Codec.connection:Lokhttp3/internal/http2/Http2Connection;
invokevirtual okhttp3.internal.http2.Http2Connection.flush:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lokhttp3/internal/http2/Http2Codec;
Exceptions:
throws java.io.IOException
public void finishRequest();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield okhttp3.internal.http2.Http2Codec.stream:Lokhttp3/internal/http2/Http2Stream;
invokevirtual okhttp3.internal.http2.Http2Stream.getSink:()Lokio/Sink;
invokeinterface okio.Sink.close:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lokhttp3/internal/http2/Http2Codec;
Exceptions:
throws java.io.IOException
public okhttp3.Response$Builder (boolean);
descriptor: (Z)Lokhttp3/Response$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield okhttp3.internal.http2.Http2Codec.stream:Lokhttp3/internal/http2/Http2Stream;
invokevirtual okhttp3.internal.http2.Http2Stream.takeHeaders:()Lokhttp3/Headers;
astore 2
start local 2 1: aload 2
aload 0
getfield okhttp3.internal.http2.Http2Codec.protocol:Lokhttp3/Protocol;
invokestatic okhttp3.internal.http2.Http2Codec.readHttp2HeadersList:(Lokhttp3/Headers;Lokhttp3/Protocol;)Lokhttp3/Response$Builder;
astore 3
start local 3 2: iload 1
ifeq 4
getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
aload 3
invokevirtual okhttp3.internal.Internal.code:(Lokhttp3/Response$Builder;)I
bipush 100
if_icmpne 4
3: aconst_null
areturn
4: StackMap locals: okhttp3.Headers okhttp3.Response$Builder
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lokhttp3/internal/http2/Http2Codec;
0 5 1 expectContinue Z
1 5 2 headers Lokhttp3/Headers;
2 5 3 responseBuilder Lokhttp3/Response$Builder;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
expectContinue
public static java.util.List<okhttp3.internal.http2.Header> http2HeadersList(okhttp3.Request);
descriptor: (Lokhttp3/Request;)Ljava/util/List;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=7, args_size=1
start local 0 0: aload 0
invokevirtual okhttp3.Request.headers:()Lokhttp3/Headers;
astore 1
start local 1 1: new java.util.ArrayList
dup
aload 1
invokevirtual okhttp3.Headers.size:()I
iconst_4
iadd
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
start local 2 2: aload 2
new okhttp3.internal.http2.Header
dup
getstatic okhttp3.internal.http2.Header.TARGET_METHOD:Lokio/ByteString;
aload 0
invokevirtual okhttp3.Request.method:()Ljava/lang/String;
invokespecial okhttp3.internal.http2.Header.<init>:(Lokio/ByteString;Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: aload 2
new okhttp3.internal.http2.Header
dup
getstatic okhttp3.internal.http2.Header.TARGET_PATH:Lokio/ByteString;
aload 0
invokevirtual okhttp3.Request.url:()Lokhttp3/HttpUrl;
invokestatic okhttp3.internal.http.RequestLine.requestPath:(Lokhttp3/HttpUrl;)Ljava/lang/String;
invokespecial okhttp3.internal.http2.Header.<init>:(Lokio/ByteString;Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: aload 0
ldc "Host"
invokevirtual okhttp3.Request.header:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 5: aload 3
ifnull 7
6: aload 2
new okhttp3.internal.http2.Header
dup
getstatic okhttp3.internal.http2.Header.TARGET_AUTHORITY:Lokio/ByteString;
aload 3
invokespecial okhttp3.internal.http2.Header.<init>:(Lokio/ByteString;Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
7: StackMap locals: okhttp3.Headers java.util.List java.lang.String
StackMap stack:
aload 2
new okhttp3.internal.http2.Header
dup
getstatic okhttp3.internal.http2.Header.TARGET_SCHEME:Lokio/ByteString;
aload 0
invokevirtual okhttp3.Request.url:()Lokhttp3/HttpUrl;
invokevirtual okhttp3.HttpUrl.scheme:()Ljava/lang/String;
invokespecial okhttp3.internal.http2.Header.<init>:(Lokio/ByteString;Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
8: iconst_0
istore 4
start local 4 9: aload 1
invokevirtual okhttp3.Headers.size:()I
istore 5
start local 5 10: goto 15
11: StackMap locals: int int
StackMap stack:
aload 1
iload 4
invokevirtual okhttp3.Headers.name:(I)Ljava/lang/String;
getstatic java.util.Locale.US:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
invokestatic okio.ByteString.encodeUtf8:(Ljava/lang/String;)Lokio/ByteString;
astore 6
start local 6 12: getstatic okhttp3.internal.http2.Http2Codec.HTTP_2_SKIPPED_REQUEST_HEADERS:Ljava/util/List;
aload 6
invokevirtual okio.ByteString.utf8:()Ljava/lang/String;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 14
13: aload 2
new okhttp3.internal.http2.Header
dup
aload 6
aload 1
iload 4
invokevirtual okhttp3.Headers.value:(I)Ljava/lang/String;
invokespecial okhttp3.internal.http2.Header.<init>:(Lokio/ByteString;Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 6 14: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
15: iload 4
iload 5
if_icmplt 11
end local 5 end local 4 16: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 request Lokhttp3/Request;
1 17 1 headers Lokhttp3/Headers;
2 17 2 result Ljava/util/List<Lokhttp3/internal/http2/Header;>;
5 17 3 host Ljava/lang/String;
9 16 4 i I
10 16 5 size I
12 14 6 name Lokio/ByteString;
Signature: (Lokhttp3/Request;)Ljava/util/List<Lokhttp3/internal/http2/Header;>;
MethodParameters:
Name Flags
request
public static okhttp3.Response$Builder (okhttp3.Headers, okhttp3.Protocol);
descriptor: (Lokhttp3/Headers;Lokhttp3/Protocol;)Lokhttp3/Response$Builder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: new okhttp3.Headers$Builder
dup
invokespecial okhttp3.Headers$Builder.<init>:()V
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: aload 0
invokevirtual okhttp3.Headers.size:()I
istore 5
start local 5 4: goto 13
5: StackMap locals: okhttp3.Headers okhttp3.Protocol okhttp3.internal.http.StatusLine okhttp3.Headers$Builder int int
StackMap stack:
aload 0
iload 4
invokevirtual okhttp3.Headers.name:(I)Ljava/lang/String;
astore 6
start local 6 6: aload 0
iload 4
invokevirtual okhttp3.Headers.value:(I)Ljava/lang/String;
astore 7
start local 7 7: aload 6
ldc ":status"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
8: new java.lang.StringBuilder
dup
ldc "HTTP/1.1 "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic okhttp3.internal.http.StatusLine.parse:(Ljava/lang/String;)Lokhttp3/internal/http/StatusLine;
astore 2
9: goto 12
StackMap locals: java.lang.String java.lang.String
StackMap stack:
10: getstatic okhttp3.internal.http2.Http2Codec.HTTP_2_SKIPPED_RESPONSE_HEADERS:Ljava/util/List;
aload 6
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 12
11: getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
aload 3
aload 6
aload 7
invokevirtual okhttp3.internal.Internal.addLenient:(Lokhttp3/Headers$Builder;Ljava/lang/String;Ljava/lang/String;)V
end local 7 end local 6 12: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
13: iload 4
iload 5
if_icmplt 5
end local 5 end local 4 14: aload 2
ifnonnull 15
new java.net.ProtocolException
dup
ldc "Expected ':status' header not present"
invokespecial java.net.ProtocolException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals:
StackMap stack:
new okhttp3.Response$Builder
dup
invokespecial okhttp3.Response$Builder.<init>:()V
16: aload 1
invokevirtual okhttp3.Response$Builder.protocol:(Lokhttp3/Protocol;)Lokhttp3/Response$Builder;
17: aload 2
getfield okhttp3.internal.http.StatusLine.code:I
invokevirtual okhttp3.Response$Builder.code:(I)Lokhttp3/Response$Builder;
18: aload 2
getfield okhttp3.internal.http.StatusLine.message:Ljava/lang/String;
invokevirtual okhttp3.Response$Builder.message:(Ljava/lang/String;)Lokhttp3/Response$Builder;
19: aload 3
invokevirtual okhttp3.Headers$Builder.build:()Lokhttp3/Headers;
invokevirtual okhttp3.Response$Builder.headers:(Lokhttp3/Headers;)Lokhttp3/Response$Builder;
20: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 headerBlock Lokhttp3/Headers;
0 21 1 protocol Lokhttp3/Protocol;
1 21 2 statusLine Lokhttp3/internal/http/StatusLine;
2 21 3 headersBuilder Lokhttp3/Headers$Builder;
3 14 4 i I
4 14 5 size I
6 12 6 name Ljava/lang/String;
7 12 7 value Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
headerBlock
protocol
public okhttp3.ResponseBody openResponseBody(okhttp3.Response);
descriptor: (Lokhttp3/Response;)Lokhttp3/ResponseBody;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield okhttp3.internal.http2.Http2Codec.streamAllocation:Lokhttp3/internal/connection/StreamAllocation;
getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
aload 0
getfield okhttp3.internal.http2.Http2Codec.streamAllocation:Lokhttp3/internal/connection/StreamAllocation;
getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
invokevirtual okhttp3.EventListener.responseBodyStart:(Lokhttp3/Call;)V
1: aload 1
ldc "Content-Type"
invokevirtual okhttp3.Response.header:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 2: aload 1
invokestatic okhttp3.internal.http.HttpHeaders.contentLength:(Lokhttp3/Response;)J
lstore 3
start local 3 3: new okhttp3.internal.http2.Http2Codec$StreamFinishingSource
dup
aload 0
aload 0
getfield okhttp3.internal.http2.Http2Codec.stream:Lokhttp3/internal/http2/Http2Stream;
invokevirtual okhttp3.internal.http2.Http2Stream.getSource:()Lokio/Source;
invokespecial okhttp3.internal.http2.Http2Codec$StreamFinishingSource.<init>:(Lokhttp3/internal/http2/Http2Codec;Lokio/Source;)V
astore 5
start local 5 4: new okhttp3.internal.http.RealResponseBody
dup
aload 2
lload 3
aload 5
invokestatic okio.Okio.buffer:(Lokio/Source;)Lokio/BufferedSource;
invokespecial okhttp3.internal.http.RealResponseBody.<init>:(Ljava/lang/String;JLokio/BufferedSource;)V
areturn
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lokhttp3/internal/http2/Http2Codec;
0 5 1 response Lokhttp3/Response;
2 5 2 contentType Ljava/lang/String;
3 5 3 contentLength J
4 5 5 source Lokio/Source;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
response
public void cancel();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield okhttp3.internal.http2.Http2Codec.stream:Lokhttp3/internal/http2/Http2Stream;
ifnull 1
aload 0
getfield okhttp3.internal.http2.Http2Codec.stream:Lokhttp3/internal/http2/Http2Stream;
getstatic okhttp3.internal.http2.ErrorCode.CANCEL:Lokhttp3/internal/http2/ErrorCode;
invokevirtual okhttp3.internal.http2.Http2Stream.closeLater:(Lokhttp3/internal/http2/ErrorCode;)V
1: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lokhttp3/internal/http2/Http2Codec;
}
SourceFile: "Http2Codec.java"
NestMembers:
okhttp3.internal.http2.Http2Codec$StreamFinishingSource
InnerClasses:
public final Builder = okhttp3.Headers$Builder of okhttp3.Headers
public abstract Chain = okhttp3.Interceptor$Chain of okhttp3.Interceptor
public Builder = okhttp3.Response$Builder of okhttp3.Response
StreamFinishingSource = okhttp3.internal.http2.Http2Codec$StreamFinishingSource of okhttp3.internal.http2.Http2Codec