class jdk.internal.net.http.Response
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: jdk.internal.net.http.Response
  super_class: java.lang.Object
{
  final java.net.http.HttpHeaders headers;
    descriptor: Ljava/net/http/HttpHeaders;
    flags: (0x0010) ACC_FINAL

  final int statusCode;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final jdk.internal.net.http.HttpRequestImpl request;
    descriptor: Ljdk/internal/net/http/HttpRequestImpl;
    flags: (0x0010) ACC_FINAL

  final jdk.internal.net.http.Exchange<?> exchange;
    descriptor: Ljdk/internal/net/http/Exchange;
    flags: (0x0010) ACC_FINAL
    Signature: Ljdk/internal/net/http/Exchange<*>;

  final java.net.http.HttpClient$Version version;
    descriptor: Ljava/net/http/HttpClient$Version;
    flags: (0x0010) ACC_FINAL

  final boolean isConnectResponse;
    descriptor: Z
    flags: (0x0010) ACC_FINAL

  final javax.net.ssl.SSLSession sslSession;
    descriptor: Ljavax/net/ssl/SSLSession;
    flags: (0x0010) ACC_FINAL

  final java.net.InetSocketAddress localAddress;
    descriptor: Ljava/net/InetSocketAddress;
    flags: (0x0010) ACC_FINAL

  void <init>(jdk.internal.net.http.HttpRequestImpl, jdk.internal.net.http.Exchange<?>, java.net.http.HttpHeaders, jdk.internal.net.http.HttpConnection, int, java.net.http.HttpClient$Version);
    descriptor: (Ljdk/internal/net/http/HttpRequestImpl;Ljdk/internal/net/http/Exchange;Ljava/net/http/HttpHeaders;Ljdk/internal/net/http/HttpConnection;ILjava/net/http/HttpClient$Version;)V
    flags: (0x0000) 
    Code:
      stack=9, locals=7, args_size=7
        start local 0 // jdk.internal.net.http.Response this
        start local 1 // jdk.internal.net.http.HttpRequestImpl req
        start local 2 // jdk.internal.net.http.Exchange exchange
        start local 3 // java.net.http.HttpHeaders headers
        start local 4 // jdk.internal.net.http.HttpConnection connection
        start local 5 // int statusCode
        start local 6 // java.net.http.HttpClient$Version version
         0: .line 56
            aload 0 /* this */
            aload 1 /* req */
            aload 2 /* exchange */
            aload 3 /* headers */
            aload 4 /* connection */
            iload 5 /* statusCode */
            aload 6 /* version */
         1: .line 57
            ldc "CONNECT"
            aload 1 /* req */
            invokevirtual jdk.internal.net.http.HttpRequestImpl.method:()Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            invokespecial jdk.internal.net.http.Response.<init>:(Ljdk/internal/net/http/HttpRequestImpl;Ljdk/internal/net/http/Exchange;Ljava/net/http/HttpHeaders;Ljdk/internal/net/http/HttpConnection;ILjava/net/http/HttpClient$Version;Z)V
         2: .line 58
            return
        end local 6 // java.net.http.HttpClient$Version version
        end local 5 // int statusCode
        end local 4 // jdk.internal.net.http.HttpConnection connection
        end local 3 // java.net.http.HttpHeaders headers
        end local 2 // jdk.internal.net.http.Exchange exchange
        end local 1 // jdk.internal.net.http.HttpRequestImpl req
        end local 0 // jdk.internal.net.http.Response this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Ljdk/internal/net/http/Response;
            0    3     1         req  Ljdk/internal/net/http/HttpRequestImpl;
            0    3     2    exchange  Ljdk/internal/net/http/Exchange<*>;
            0    3     3     headers  Ljava/net/http/HttpHeaders;
            0    3     4  connection  Ljdk/internal/net/http/HttpConnection;
            0    3     5  statusCode  I
            0    3     6     version  Ljava/net/http/HttpClient$Version;
    Signature: (Ljdk/internal/net/http/HttpRequestImpl;Ljdk/internal/net/http/Exchange<*>;Ljava/net/http/HttpHeaders;Ljdk/internal/net/http/HttpConnection;ILjava/net/http/HttpClient$Version;)V
    MethodParameters:
            Name  Flags
      req         
      exchange    
      headers     
      connection  
      statusCode  
      version     

  void <init>(jdk.internal.net.http.HttpRequestImpl, jdk.internal.net.http.Exchange<?>, java.net.http.HttpHeaders, jdk.internal.net.http.HttpConnection, int, java.net.http.HttpClient$Version, );
    descriptor: (Ljdk/internal/net/http/HttpRequestImpl;Ljdk/internal/net/http/Exchange;Ljava/net/http/HttpHeaders;Ljdk/internal/net/http/HttpConnection;ILjava/net/http/HttpClient$Version;Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=11, args_size=8
        start local 0 // jdk.internal.net.http.Response this
        start local 1 // jdk.internal.net.http.HttpRequestImpl req
        start local 2 // jdk.internal.net.http.Exchange exchange
        start local 3 // java.net.http.HttpHeaders headers
        start local 4 // jdk.internal.net.http.HttpConnection connection
        start local 5 // int statusCode
        start local 6 // java.net.http.HttpClient$Version version
        start local 7 // boolean isConnectResponse
         0: .line 60
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 67
            aload 0 /* this */
            aload 3 /* headers */
            putfield jdk.internal.net.http.Response.headers:Ljava/net/http/HttpHeaders;
         2: .line 68
            aload 0 /* this */
            aload 1 /* req */
            putfield jdk.internal.net.http.Response.request:Ljdk/internal/net/http/HttpRequestImpl;
         3: .line 69
            aload 0 /* this */
            aload 6 /* version */
            putfield jdk.internal.net.http.Response.version:Ljava/net/http/HttpClient$Version;
         4: .line 70
            aload 0 /* this */
            aload 2 /* exchange */
            putfield jdk.internal.net.http.Response.exchange:Ljdk/internal/net/http/Exchange;
         5: .line 71
            aload 0 /* this */
            iload 5 /* statusCode */
            putfield jdk.internal.net.http.Response.statusCode:I
         6: .line 72
            aload 0 /* this */
            iload 7 /* isConnectResponse */
            putfield jdk.internal.net.http.Response.isConnectResponse:Z
         7: .line 73
            aload 4 /* connection */
            ifnull 20
         8: .line 76
            aload 4 /* connection */
            invokevirtual jdk.internal.net.http.HttpConnection.channel:()Ljava/nio/channels/SocketChannel;
            invokevirtual java.nio.channels.SocketChannel.getLocalAddress:()Ljava/net/SocketAddress;
            checkcast java.net.InetSocketAddress
            astore 8 /* a */
        start local 8 // java.net.InetSocketAddress a
         9: .line 77
            goto 12
        end local 8 // java.net.InetSocketAddress a
      StackMap locals: jdk.internal.net.http.Response jdk.internal.net.http.HttpRequestImpl jdk.internal.net.http.Exchange java.net.http.HttpHeaders jdk.internal.net.http.HttpConnection int java.net.http.HttpClient$Version int
      StackMap stack: java.io.IOException
        10: pop
        11: .line 78
            aconst_null
            astore 8 /* a */
        start local 8 // java.net.InetSocketAddress a
        12: .line 80
      StackMap locals: java.net.InetSocketAddress
      StackMap stack:
            aload 0 /* this */
            aload 8 /* a */
            putfield jdk.internal.net.http.Response.localAddress:Ljava/net/InetSocketAddress;
        13: .line 81
            aload 4 /* connection */
            instanceof jdk.internal.net.http.AbstractAsyncSSLConnection
            ifeq 18
        14: .line 82
            aload 4 /* connection */
            checkcast jdk.internal.net.http.AbstractAsyncSSLConnection
            astore 9 /* cc */
        start local 9 // jdk.internal.net.http.AbstractAsyncSSLConnection cc
        15: .line 83
            aload 9 /* cc */
            invokevirtual jdk.internal.net.http.AbstractAsyncSSLConnection.getEngine:()Ljavax/net/ssl/SSLEngine;
            astore 10 /* engine */
        start local 10 // javax.net.ssl.SSLEngine engine
        16: .line 84
            aload 0 /* this */
            aload 10 /* engine */
            invokevirtual javax.net.ssl.SSLEngine.getSession:()Ljavax/net/ssl/SSLSession;
            invokestatic jdk.internal.net.http.common.Utils.immutableSession:(Ljavax/net/ssl/SSLSession;)Ljavax/net/ssl/SSLSession;
            putfield jdk.internal.net.http.Response.sslSession:Ljavax/net/ssl/SSLSession;
        end local 10 // javax.net.ssl.SSLEngine engine
        end local 9 // jdk.internal.net.http.AbstractAsyncSSLConnection cc
        17: .line 85
            goto 22
        18: .line 86
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.net.http.Response.sslSession:Ljavax/net/ssl/SSLSession;
        end local 8 // java.net.InetSocketAddress a
        19: .line 88
            goto 22
        20: .line 89
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.net.http.Response.sslSession:Ljavax/net/ssl/SSLSession;
        21: .line 90
            aload 0 /* this */
            aconst_null
            putfield jdk.internal.net.http.Response.localAddress:Ljava/net/InetSocketAddress;
        22: .line 92
      StackMap locals:
      StackMap stack:
            return
        end local 7 // boolean isConnectResponse
        end local 6 // java.net.http.HttpClient$Version version
        end local 5 // int statusCode
        end local 4 // jdk.internal.net.http.HttpConnection connection
        end local 3 // java.net.http.HttpHeaders headers
        end local 2 // jdk.internal.net.http.Exchange exchange
        end local 1 // jdk.internal.net.http.HttpRequestImpl req
        end local 0 // jdk.internal.net.http.Response this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   23     0               this  Ljdk/internal/net/http/Response;
            0   23     1                req  Ljdk/internal/net/http/HttpRequestImpl;
            0   23     2           exchange  Ljdk/internal/net/http/Exchange<*>;
            0   23     3            headers  Ljava/net/http/HttpHeaders;
            0   23     4         connection  Ljdk/internal/net/http/HttpConnection;
            0   23     5         statusCode  I
            0   23     6            version  Ljava/net/http/HttpClient$Version;
            0   23     7  isConnectResponse  Z
            9   10     8                  a  Ljava/net/InetSocketAddress;
           12   19     8                  a  Ljava/net/InetSocketAddress;
           15   17     9                 cc  Ljdk/internal/net/http/AbstractAsyncSSLConnection;
           16   17    10             engine  Ljavax/net/ssl/SSLEngine;
      Exception table:
        from    to  target  type
           8     9      10  Class java.io.IOException
    Signature: (Ljdk/internal/net/http/HttpRequestImpl;Ljdk/internal/net/http/Exchange<*>;Ljava/net/http/HttpHeaders;Ljdk/internal/net/http/HttpConnection;ILjava/net/http/HttpClient$Version;Z)V
    MethodParameters:
                   Name  Flags
      req                
      exchange           
      headers            
      connection         
      statusCode         
      version            
      isConnectResponse  

  jdk.internal.net.http.HttpRequestImpl request();
    descriptor: ()Ljdk/internal/net/http/HttpRequestImpl;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.Response this
         0: .line 95
            aload 0 /* this */
            getfield jdk.internal.net.http.Response.request:Ljdk/internal/net/http/HttpRequestImpl;
            areturn
        end local 0 // jdk.internal.net.http.Response this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/Response;

  java.net.http.HttpClient$Version version();
    descriptor: ()Ljava/net/http/HttpClient$Version;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.Response this
         0: .line 99
            aload 0 /* this */
            getfield jdk.internal.net.http.Response.version:Ljava/net/http/HttpClient$Version;
            areturn
        end local 0 // jdk.internal.net.http.Response this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/Response;

  java.net.http.HttpHeaders headers();
    descriptor: ()Ljava/net/http/HttpHeaders;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.Response this
         0: .line 103
            aload 0 /* this */
            getfield jdk.internal.net.http.Response.headers:Ljava/net/http/HttpHeaders;
            areturn
        end local 0 // jdk.internal.net.http.Response this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/Response;

  int statusCode();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.Response this
         0: .line 107
            aload 0 /* this */
            getfield jdk.internal.net.http.Response.statusCode:I
            ireturn
        end local 0 // jdk.internal.net.http.Response this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/Response;

  javax.net.ssl.SSLSession getSSLSession();
    descriptor: ()Ljavax/net/ssl/SSLSession;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.Response this
         0: .line 111
            aload 0 /* this */
            getfield jdk.internal.net.http.Response.sslSession:Ljavax/net/ssl/SSLSession;
            areturn
        end local 0 // jdk.internal.net.http.Response this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/Response;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // jdk.internal.net.http.Response this
         0: .line 116
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 117
            aload 0 /* this */
            invokevirtual jdk.internal.net.http.Response.request:()Ljdk/internal/net/http/HttpRequestImpl;
            invokevirtual jdk.internal.net.http.HttpRequestImpl.method:()Ljava/lang/String;
            astore 2 /* method */
        start local 2 // java.lang.String method
         2: .line 118
            aload 0 /* this */
            invokevirtual jdk.internal.net.http.Response.request:()Ljdk/internal/net/http/HttpRequestImpl;
            invokevirtual jdk.internal.net.http.HttpRequestImpl.uri:()Ljava/net/URI;
            astore 3 /* uri */
        start local 3 // java.net.URI uri
         3: .line 119
            aload 3 /* uri */
            ifnonnull 4
            ldc ""
            goto 5
      StackMap locals: java.lang.StringBuilder java.lang.String java.net.URI
      StackMap stack:
         4: aload 3 /* uri */
            invokevirtual java.net.URI.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         5: astore 4 /* uristring */
        start local 4 // java.lang.String uristring
         6: .line 120
            aload 1 /* sb */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         7: .line 121
            aload 2 /* method */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 122
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 123
            aload 4 /* uristring */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 124
            ldc ") "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 125
            aload 0 /* this */
            invokevirtual jdk.internal.net.http.Response.statusCode:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        12: .line 126
            aload 1 /* sb */
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield jdk.internal.net.http.Response.version:Ljava/net/http/HttpClient$Version;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
        13: .line 127
            aload 0 /* this */
            getfield jdk.internal.net.http.Response.localAddress:Ljava/net/InetSocketAddress;
            ifnull 15
        14: .line 128
            aload 1 /* sb */
            ldc " Local port:  "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield jdk.internal.net.http.Response.localAddress:Ljava/net/InetSocketAddress;
            invokevirtual java.net.InetSocketAddress.getPort:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        15: .line 129
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.lang.String uristring
        end local 3 // java.net.URI uri
        end local 2 // java.lang.String method
        end local 1 // java.lang.StringBuilder sb
        end local 0 // jdk.internal.net.http.Response this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Ljdk/internal/net/http/Response;
            1   16     1         sb  Ljava/lang/StringBuilder;
            2   16     2     method  Ljava/lang/String;
            3   16     3        uri  Ljava/net/URI;
            6   16     4  uristring  Ljava/lang/String;
}
SourceFile: "Response.java"
InnerClasses:
  public final Version = java.net.http.HttpClient$Version of java.net.http.HttpClient