final class jdk.internal.net.http.ImmutableHttpRequest extends java.net.http.HttpRequest
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: jdk.internal.net.http.ImmutableHttpRequest
  super_class: java.net.http.HttpRequest
{
  private final java.lang.String method;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.net.URI uri;
    descriptor: Ljava/net/URI;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.net.http.HttpHeaders headers;
    descriptor: Ljava/net/http/HttpHeaders;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Optional<java.net.http.HttpRequest$BodyPublisher> requestPublisher;
    descriptor: Ljava/util/Optional;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Optional<Ljava/net/http/HttpRequest$BodyPublisher;>;

  private final boolean expectContinue;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Optional<java.time.Duration> timeout;
    descriptor: Ljava/util/Optional;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Optional<Ljava/time/Duration;>;

  private final java.util.Optional<java.net.http.HttpClient$Version> version;
    descriptor: Ljava/util/Optional;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Optional<Ljava/net/http/HttpClient$Version;>;

  void <init>(jdk.internal.net.http.HttpRequestBuilderImpl);
    descriptor: (Ljdk/internal/net/http/HttpRequestBuilderImpl;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.ImmutableHttpRequest this
        start local 1 // jdk.internal.net.http.HttpRequestBuilderImpl builder
         0: .line 48
            aload 0 /* this */
            invokespecial java.net.http.HttpRequest.<init>:()V
         1: .line 49
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual jdk.internal.net.http.HttpRequestBuilderImpl.method:()Ljava/lang/String;
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            putfield jdk.internal.net.http.ImmutableHttpRequest.method:Ljava/lang/String;
         2: .line 50
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual jdk.internal.net.http.HttpRequestBuilderImpl.uri:()Ljava/net/URI;
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.net.URI
            putfield jdk.internal.net.http.ImmutableHttpRequest.uri:Ljava/net/URI;
         3: .line 51
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual jdk.internal.net.http.HttpRequestBuilderImpl.headersBuilder:()Ljdk/internal/net/http/common/HttpHeadersBuilder;
            invokevirtual jdk.internal.net.http.common.HttpHeadersBuilder.map:()Ljava/util/Map;
            getstatic jdk.internal.net.http.common.Utils.ALLOWED_HEADERS:Ljava/util/function/BiPredicate;
            invokestatic java.net.http.HttpHeaders.of:(Ljava/util/Map;Ljava/util/function/BiPredicate;)Ljava/net/http/HttpHeaders;
            putfield jdk.internal.net.http.ImmutableHttpRequest.headers:Ljava/net/http/HttpHeaders;
         4: .line 52
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual jdk.internal.net.http.HttpRequestBuilderImpl.bodyPublisher:()Ljava/net/http/HttpRequest$BodyPublisher;
            invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
            putfield jdk.internal.net.http.ImmutableHttpRequest.requestPublisher:Ljava/util/Optional;
         5: .line 53
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual jdk.internal.net.http.HttpRequestBuilderImpl.expectContinue:()Z
            putfield jdk.internal.net.http.ImmutableHttpRequest.expectContinue:Z
         6: .line 54
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual jdk.internal.net.http.HttpRequestBuilderImpl.timeout:()Ljava/time/Duration;
            invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
            putfield jdk.internal.net.http.ImmutableHttpRequest.timeout:Ljava/util/Optional;
         7: .line 55
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual jdk.internal.net.http.HttpRequestBuilderImpl.version:()Ljava/util/Optional;
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Optional
            putfield jdk.internal.net.http.ImmutableHttpRequest.version:Ljava/util/Optional;
         8: .line 56
            return
        end local 1 // jdk.internal.net.http.HttpRequestBuilderImpl builder
        end local 0 // jdk.internal.net.http.ImmutableHttpRequest this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Ljdk/internal/net/http/ImmutableHttpRequest;
            0    9     1  builder  Ljdk/internal/net/http/HttpRequestBuilderImpl;
    MethodParameters:
         Name  Flags
      builder  

  public java.lang.String method();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.ImmutableHttpRequest this
         0: .line 59
            aload 0 /* this */
            getfield jdk.internal.net.http.ImmutableHttpRequest.method:Ljava/lang/String;
            areturn
        end local 0 // jdk.internal.net.http.ImmutableHttpRequest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/ImmutableHttpRequest;

  public java.net.URI uri();
    descriptor: ()Ljava/net/URI;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.ImmutableHttpRequest this
         0: .line 62
            aload 0 /* this */
            getfield jdk.internal.net.http.ImmutableHttpRequest.uri:Ljava/net/URI;
            areturn
        end local 0 // jdk.internal.net.http.ImmutableHttpRequest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/ImmutableHttpRequest;

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

  public java.util.Optional<java.net.http.HttpRequest$BodyPublisher> bodyPublisher();
    descriptor: ()Ljava/util/Optional;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.ImmutableHttpRequest this
         0: .line 70
            aload 0 /* this */
            getfield jdk.internal.net.http.ImmutableHttpRequest.requestPublisher:Ljava/util/Optional;
            areturn
        end local 0 // jdk.internal.net.http.ImmutableHttpRequest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/ImmutableHttpRequest;
    Signature: ()Ljava/util/Optional<Ljava/net/http/HttpRequest$BodyPublisher;>;

  public boolean expectContinue();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.ImmutableHttpRequest this
         0: .line 73
            aload 0 /* this */
            getfield jdk.internal.net.http.ImmutableHttpRequest.expectContinue:Z
            ireturn
        end local 0 // jdk.internal.net.http.ImmutableHttpRequest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/ImmutableHttpRequest;

  public java.util.Optional<java.time.Duration> timeout();
    descriptor: ()Ljava/util/Optional;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.ImmutableHttpRequest this
         0: .line 76
            aload 0 /* this */
            getfield jdk.internal.net.http.ImmutableHttpRequest.timeout:Ljava/util/Optional;
            areturn
        end local 0 // jdk.internal.net.http.ImmutableHttpRequest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/ImmutableHttpRequest;
    Signature: ()Ljava/util/Optional<Ljava/time/Duration;>;

  public java.util.Optional<java.net.http.HttpClient$Version> version();
    descriptor: ()Ljava/util/Optional;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.ImmutableHttpRequest this
         0: .line 79
            aload 0 /* this */
            getfield jdk.internal.net.http.ImmutableHttpRequest.version:Ljava/util/Optional;
            areturn
        end local 0 // jdk.internal.net.http.ImmutableHttpRequest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/ImmutableHttpRequest;
    Signature: ()Ljava/util/Optional<Ljava/net/http/HttpClient$Version;>;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.ImmutableHttpRequest this
         0: .line 83
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield jdk.internal.net.http.ImmutableHttpRequest.uri:Ljava/net/URI;
            invokevirtual java.net.URI.toString:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield jdk.internal.net.http.ImmutableHttpRequest.method:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // jdk.internal.net.http.ImmutableHttpRequest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/ImmutableHttpRequest;
}
SourceFile: "ImmutableHttpRequest.java"
InnerClasses:
  public final Version = java.net.http.HttpClient$Version of java.net.http.HttpClient
  public abstract BodyPublisher = java.net.http.HttpRequest$BodyPublisher of java.net.http.HttpRequest