class jdk.internal.net.http.HttpResponseImpl<T> implements java.net.http.HttpResponse<T>, jdk.internal.net.http.websocket.RawChannel$Provider
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.internal.net.http.HttpResponseImpl
super_class: java.lang.Object
{
final int responseCode;
descriptor: I
flags: (0x0010) ACC_FINAL
final jdk.internal.net.http.Exchange<T> exchange;
descriptor: Ljdk/internal/net/http/Exchange;
flags: (0x0010) ACC_FINAL
Signature: Ljdk/internal/net/http/Exchange<TT;>;
final java.net.http.HttpRequest initialRequest;
descriptor: Ljava/net/http/HttpRequest;
flags: (0x0010) ACC_FINAL
final java.util.Optional<java.net.http.HttpResponse<T>> previousResponse;
descriptor: Ljava/util/Optional;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Optional<Ljava/net/http/HttpResponse<TT;>;>;
final java.net.http.HttpHeaders ;
descriptor: Ljava/net/http/HttpHeaders;
flags: (0x0010) ACC_FINAL
final java.util.Optional<javax.net.ssl.SSLSession> sslSession;
descriptor: Ljava/util/Optional;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Optional<Ljavax/net/ssl/SSLSession;>;
final java.net.URI uri;
descriptor: Ljava/net/URI;
flags: (0x0010) ACC_FINAL
final java.net.http.HttpClient$Version version;
descriptor: Ljava/net/http/HttpClient$Version;
flags: (0x0010) ACC_FINAL
jdk.internal.net.http.websocket.RawChannel rawchan;
descriptor: Ljdk/internal/net/http/websocket/RawChannel;
flags: (0x0000)
final jdk.internal.net.http.HttpConnection connection;
descriptor: Ljdk/internal/net/http/HttpConnection;
flags: (0x0010) ACC_FINAL
final jdk.internal.net.http.Stream<T> stream;
descriptor: Ljdk/internal/net/http/Stream;
flags: (0x0010) ACC_FINAL
Signature: Ljdk/internal/net/http/Stream<TT;>;
final T body;
descriptor: Ljava/lang/Object;
flags: (0x0010) ACC_FINAL
Signature: TT;
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Ljdk/internal/net/http/HttpResponseImpl;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic jdk.internal.net.http.HttpResponseImpl.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.net.http.HttpRequest, jdk.internal.net.http.Response, java.net.http.HttpResponse<T>, T, jdk.internal.net.http.Exchange<T>);
descriptor: (Ljava/net/http/HttpRequest;Ljdk/internal/net/http/Response;Ljava/net/http/HttpResponse;Ljava/lang/Object;Ljdk/internal/net/http/Exchange;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 2
invokevirtual jdk.internal.net.http.Response.statusCode:()I
putfield jdk.internal.net.http.HttpResponseImpl.responseCode:I
2: aload 0
aload 5
putfield jdk.internal.net.http.HttpResponseImpl.exchange:Ljdk/internal/net/http/Exchange;
3: aload 0
aload 1
putfield jdk.internal.net.http.HttpResponseImpl.initialRequest:Ljava/net/http/HttpRequest;
4: aload 0
aload 3
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
putfield jdk.internal.net.http.HttpResponseImpl.previousResponse:Ljava/util/Optional;
5: aload 0
aload 2
invokevirtual jdk.internal.net.http.Response.headers:()Ljava/net/http/HttpHeaders;
putfield jdk.internal.net.http.HttpResponseImpl.headers:Ljava/net/http/HttpHeaders;
6: aload 0
aload 2
invokevirtual jdk.internal.net.http.Response.getSSLSession:()Ljavax/net/ssl/SSLSession;
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
putfield jdk.internal.net.http.HttpResponseImpl.sslSession:Ljava/util/Optional;
7: aload 0
aload 2
invokevirtual jdk.internal.net.http.Response.request:()Ljdk/internal/net/http/HttpRequestImpl;
invokevirtual jdk.internal.net.http.HttpRequestImpl.uri:()Ljava/net/URI;
putfield jdk.internal.net.http.HttpResponseImpl.uri:Ljava/net/URI;
8: aload 0
aload 2
invokevirtual jdk.internal.net.http.Response.version:()Ljava/net/http/HttpClient$Version;
putfield jdk.internal.net.http.HttpResponseImpl.version:Ljava/net/http/HttpClient$Version;
9: aload 0
aload 0
aload 5
invokevirtual jdk.internal.net.http.HttpResponseImpl.connection:(Ljdk/internal/net/http/Exchange;)Ljdk/internal/net/http/HttpConnection;
putfield jdk.internal.net.http.HttpResponseImpl.connection:Ljdk/internal/net/http/HttpConnection;
10: aload 0
aconst_null
putfield jdk.internal.net.http.HttpResponseImpl.stream:Ljdk/internal/net/http/Stream;
11: aload 0
aload 4
putfield jdk.internal.net.http.HttpResponseImpl.body:Ljava/lang/Object;
12: 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 13 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
0 13 1 initialRequest Ljava/net/http/HttpRequest;
0 13 2 response Ljdk/internal/net/http/Response;
0 13 3 previousResponse Ljava/net/http/HttpResponse<TT;>;
0 13 4 body TT;
0 13 5 exch Ljdk/internal/net/http/Exchange<TT;>;
Signature: (Ljava/net/http/HttpRequest;Ljdk/internal/net/http/Response;Ljava/net/http/HttpResponse<TT;>;TT;Ljdk/internal/net/http/Exchange<TT;>;)V
MethodParameters:
Name Flags
initialRequest
response
previousResponse
body
exch
private jdk.internal.net.http.HttpConnection connection(jdk.internal.net.http.Exchange<?>);
descriptor: (Ljdk/internal/net/http/Exchange;)Ljdk/internal/net/http/HttpConnection;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
getfield jdk.internal.net.http.Exchange.exchImpl:Ljdk/internal/net/http/ExchangeImpl;
ifnonnull 3
1: StackMap locals:
StackMap stack:
getstatic jdk.internal.net.http.HttpResponseImpl.$assertionsDisabled:Z
ifne 2
aload 0
getfield jdk.internal.net.http.HttpResponseImpl.responseCode:I
sipush 407
if_icmpeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aconst_null
areturn
3: StackMap locals:
StackMap stack:
aload 1
getfield jdk.internal.net.http.Exchange.exchImpl:Ljdk/internal/net/http/ExchangeImpl;
invokevirtual jdk.internal.net.http.ExchangeImpl.connection:()Ljdk/internal/net/http/HttpConnection;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
0 4 1 exch Ljdk/internal/net/http/Exchange<*>;
Signature: (Ljdk/internal/net/http/Exchange<*>;)Ljdk/internal/net/http/HttpConnection;
MethodParameters:
Name Flags
exch
private jdk.internal.net.http.ExchangeImpl<?> exchangeImpl();
descriptor: ()Ljdk/internal/net/http/ExchangeImpl;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.exchange:Ljdk/internal/net/http/Exchange;
ifnull 1
aload 0
getfield jdk.internal.net.http.HttpResponseImpl.exchange:Ljdk/internal/net/http/Exchange;
getfield jdk.internal.net.http.Exchange.exchImpl:Ljdk/internal/net/http/ExchangeImpl;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.stream:Ljdk/internal/net/http/Stream;
StackMap locals:
StackMap stack: jdk.internal.net.http.ExchangeImpl
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
Signature: ()Ljdk/internal/net/http/ExchangeImpl<*>;
public int statusCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.responseCode:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
public java.net.http.HttpRequest request();
descriptor: ()Ljava/net/http/HttpRequest;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.initialRequest:Ljava/net/http/HttpRequest;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
public java.util.Optional<java.net.http.HttpResponse<T>> previousResponse();
descriptor: ()Ljava/util/Optional;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.previousResponse:Ljava/util/Optional;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
Signature: ()Ljava/util/Optional<Ljava/net/http/HttpResponse<TT;>;>;
public java.net.http.HttpHeaders ();
descriptor: ()Ljava/net/http/HttpHeaders;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.headers:Ljava/net/http/HttpHeaders;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
public T body();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.body:Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
Signature: ()TT;
public java.util.Optional<javax.net.ssl.SSLSession> sslSession();
descriptor: ()Ljava/util/Optional;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.sslSession:Ljava/util/Optional;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
Signature: ()Ljava/util/Optional<Ljavax/net/ssl/SSLSession;>;
public java.net.URI uri();
descriptor: ()Ljava/net/URI;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.uri:Ljava/net/URI;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
public java.net.http.HttpClient$Version version();
descriptor: ()Ljava/net/http/HttpClient$Version;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.version:Ljava/net/http/HttpClient$Version;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
public synchronized jdk.internal.net.http.websocket.RawChannel rawChannel();
descriptor: ()Ljdk/internal/net/http/websocket/RawChannel;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield jdk.internal.net.http.HttpResponseImpl.rawchan:Ljdk/internal/net/http/websocket/RawChannel;
ifnonnull 6
1: aload 0
invokevirtual jdk.internal.net.http.HttpResponseImpl.exchangeImpl:()Ljdk/internal/net/http/ExchangeImpl;
astore 1
start local 1 2: aload 1
instanceof jdk.internal.net.http.Http1Exchange
ifne 4
3: new java.lang.UnsupportedOperationException
dup
ldc "RawChannel is not supported over HTTP/2"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: jdk.internal.net.http.ExchangeImpl
StackMap stack:
aload 1
checkcast jdk.internal.net.http.Http1Exchange
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljdk/internal/net/http/Http1Exchange;)Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
jdk/internal/net/http/Http1Exchange.drainLeftOverBytes()Ljava/nio/ByteBuffer; (5)
()Ljava/nio/ByteBuffer;
astore 2
start local 2 5: aload 0
new jdk.internal.net.http.RawChannelTube
dup
aload 0
getfield jdk.internal.net.http.HttpResponseImpl.connection:Ljdk/internal/net/http/HttpConnection;
aload 2
invokespecial jdk.internal.net.http.RawChannelTube.<init>:(Ljdk/internal/net/http/HttpConnection;Ljava/util/function/Supplier;)V
putfield jdk.internal.net.http.HttpResponseImpl.rawchan:Ljdk/internal/net/http/websocket/RawChannel;
end local 2 end local 1 6: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.net.http.HttpResponseImpl.rawchan:Ljdk/internal/net/http/websocket/RawChannel;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
2 6 1 exchImpl Ljdk/internal/net/http/ExchangeImpl<*>;
5 6 2 initial Ljava/util/function/Supplier<Ljava/nio/ByteBuffer;>;
Exceptions:
throws java.io.IOException
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: aload 0
invokevirtual jdk.internal.net.http.HttpResponseImpl.request:()Ljava/net/http/HttpRequest;
invokevirtual java.net.http.HttpRequest.method:()Ljava/lang/String;
astore 2
start local 2 2: aload 0
invokevirtual jdk.internal.net.http.HttpResponseImpl.request:()Ljava/net/http/HttpRequest;
invokevirtual java.net.http.HttpRequest.uri:()Ljava/net/URI;
astore 3
start local 3 3: aload 3
ifnonnull 4
ldc ""
goto 5
StackMap locals: java.lang.StringBuilder java.lang.String java.net.URI
StackMap stack:
4: aload 3
invokevirtual java.net.URI.toString:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
5: astore 4
start local 4 6: aload 1
bipush 40
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
7: aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
8: ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: ldc ") "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: aload 0
invokevirtual jdk.internal.net.http.HttpResponseImpl.statusCode:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
12: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljdk/internal/net/http/HttpResponseImpl<TT;>;
1 13 1 sb Ljava/lang/StringBuilder;
2 13 2 method Ljava/lang/String;
3 13 3 uri Ljava/net/URI;
6 13 4 uristring Ljava/lang/String;
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/net/http/HttpResponse<TT;>;Ljdk/internal/net/http/websocket/RawChannel$Provider;
SourceFile: "HttpResponseImpl.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final Version = java.net.http.HttpClient$Version of java.net.http.HttpClient
public abstract Provider = jdk.internal.net.http.websocket.RawChannel$Provider of jdk.internal.net.http.websocket.RawChannel