public class jdk.internal.net.http.HttpClientBuilderImpl implements java.net.http.HttpClient$Builder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.internal.net.http.HttpClientBuilderImpl
  super_class: java.lang.Object
{
  java.net.CookieHandler cookieHandler;
    descriptor: Ljava/net/CookieHandler;
    flags: (0x0000) 

  java.time.Duration connectTimeout;
    descriptor: Ljava/time/Duration;
    flags: (0x0000) 

  java.net.http.HttpClient$Redirect followRedirects;
    descriptor: Ljava/net/http/HttpClient$Redirect;
    flags: (0x0000) 

  java.net.ProxySelector proxy;
    descriptor: Ljava/net/ProxySelector;
    flags: (0x0000) 

  java.net.Authenticator authenticator;
    descriptor: Ljava/net/Authenticator;
    flags: (0x0000) 

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

  java.util.concurrent.Executor executor;
    descriptor: Ljava/util/concurrent/Executor;
    flags: (0x0000) 

  javax.net.ssl.SSLContext sslContext;
    descriptor: Ljavax/net/ssl/SSLContext;
    flags: (0x0000) 

  javax.net.ssl.SSLParameters sslParams;
    descriptor: Ljavax/net/ssl/SSLParameters;
    flags: (0x0000) 

  int priority;
    descriptor: I
    flags: (0x0000) 

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
         0: .line 39
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 51
            aload 0 /* this */
            iconst_m1
            putfield jdk.internal.net.http.HttpClientBuilderImpl.priority:I
         2: .line 39
            return
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/net/http/HttpClientBuilderImpl;

  public jdk.internal.net.http.HttpClientBuilderImpl cookieHandler(java.net.CookieHandler);
    descriptor: (Ljava/net/CookieHandler;)Ljdk/internal/net/http/HttpClientBuilderImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
        start local 1 // java.net.CookieHandler cookieHandler
         0: .line 55
            aload 1 /* cookieHandler */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 56
            aload 0 /* this */
            aload 1 /* cookieHandler */
            putfield jdk.internal.net.http.HttpClientBuilderImpl.cookieHandler:Ljava/net/CookieHandler;
         2: .line 57
            aload 0 /* this */
            areturn
        end local 1 // java.net.CookieHandler cookieHandler
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Ljdk/internal/net/http/HttpClientBuilderImpl;
            0    3     1  cookieHandler  Ljava/net/CookieHandler;
    MethodParameters:
               Name  Flags
      cookieHandler  

  public jdk.internal.net.http.HttpClientBuilderImpl connectTimeout(java.time.Duration);
    descriptor: (Ljava/time/Duration;)Ljdk/internal/net/http/HttpClientBuilderImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
        start local 1 // java.time.Duration duration
         0: .line 62
            aload 1 /* duration */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 63
            aload 1 /* duration */
            invokevirtual java.time.Duration.isNegative:()Z
            ifne 2
            getstatic java.time.Duration.ZERO:Ljava/time/Duration;
            aload 1 /* duration */
            invokevirtual java.time.Duration.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 64
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid duration: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* duration */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 65
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* duration */
            putfield jdk.internal.net.http.HttpClientBuilderImpl.connectTimeout:Ljava/time/Duration;
         4: .line 66
            aload 0 /* this */
            areturn
        end local 1 // java.time.Duration duration
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Ljdk/internal/net/http/HttpClientBuilderImpl;
            0    5     1  duration  Ljava/time/Duration;
    MethodParameters:
          Name  Flags
      duration  

  public jdk.internal.net.http.HttpClientBuilderImpl sslContext(javax.net.ssl.SSLContext);
    descriptor: (Ljavax/net/ssl/SSLContext;)Ljdk/internal/net/http/HttpClientBuilderImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
        start local 1 // javax.net.ssl.SSLContext sslContext
         0: .line 71
            aload 1 /* sslContext */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 72
            aload 0 /* this */
            aload 1 /* sslContext */
            putfield jdk.internal.net.http.HttpClientBuilderImpl.sslContext:Ljavax/net/ssl/SSLContext;
         2: .line 73
            aload 0 /* this */
            areturn
        end local 1 // javax.net.ssl.SSLContext sslContext
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Ljdk/internal/net/http/HttpClientBuilderImpl;
            0    3     1  sslContext  Ljavax/net/ssl/SSLContext;
    MethodParameters:
            Name  Flags
      sslContext  

  public jdk.internal.net.http.HttpClientBuilderImpl sslParameters(javax.net.ssl.SSLParameters);
    descriptor: (Ljavax/net/ssl/SSLParameters;)Ljdk/internal/net/http/HttpClientBuilderImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
        start local 1 // javax.net.ssl.SSLParameters sslParameters
         0: .line 79
            aload 1 /* sslParameters */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 80
            aload 0 /* this */
            aload 1 /* sslParameters */
            invokestatic jdk.internal.net.http.common.Utils.copySSLParameters:(Ljavax/net/ssl/SSLParameters;)Ljavax/net/ssl/SSLParameters;
            putfield jdk.internal.net.http.HttpClientBuilderImpl.sslParams:Ljavax/net/ssl/SSLParameters;
         2: .line 81
            aload 0 /* this */
            areturn
        end local 1 // javax.net.ssl.SSLParameters sslParameters
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Ljdk/internal/net/http/HttpClientBuilderImpl;
            0    3     1  sslParameters  Ljavax/net/ssl/SSLParameters;
    MethodParameters:
               Name  Flags
      sslParameters  

  public jdk.internal.net.http.HttpClientBuilderImpl executor(java.util.concurrent.Executor);
    descriptor: (Ljava/util/concurrent/Executor;)Ljdk/internal/net/http/HttpClientBuilderImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
        start local 1 // java.util.concurrent.Executor s
         0: .line 87
            aload 1 /* s */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 88
            aload 0 /* this */
            aload 1 /* s */
            putfield jdk.internal.net.http.HttpClientBuilderImpl.executor:Ljava/util/concurrent/Executor;
         2: .line 89
            aload 0 /* this */
            areturn
        end local 1 // java.util.concurrent.Executor s
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/net/http/HttpClientBuilderImpl;
            0    3     1     s  Ljava/util/concurrent/Executor;
    MethodParameters:
      Name  Flags
      s     

  public jdk.internal.net.http.HttpClientBuilderImpl followRedirects(java.net.http.HttpClient$Redirect);
    descriptor: (Ljava/net/http/HttpClient$Redirect;)Ljdk/internal/net/http/HttpClientBuilderImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
        start local 1 // java.net.http.HttpClient$Redirect policy
         0: .line 95
            aload 1 /* policy */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 96
            aload 0 /* this */
            aload 1 /* policy */
            putfield jdk.internal.net.http.HttpClientBuilderImpl.followRedirects:Ljava/net/http/HttpClient$Redirect;
         2: .line 97
            aload 0 /* this */
            areturn
        end local 1 // java.net.http.HttpClient$Redirect policy
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljdk/internal/net/http/HttpClientBuilderImpl;
            0    3     1  policy  Ljava/net/http/HttpClient$Redirect;
    MethodParameters:
        Name  Flags
      policy  

  public jdk.internal.net.http.HttpClientBuilderImpl version(java.net.http.HttpClient$Version);
    descriptor: (Ljava/net/http/HttpClient$Version;)Ljdk/internal/net/http/HttpClientBuilderImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
        start local 1 // java.net.http.HttpClient$Version version
         0: .line 103
            aload 1 /* version */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 104
            aload 0 /* this */
            aload 1 /* version */
            putfield jdk.internal.net.http.HttpClientBuilderImpl.version:Ljava/net/http/HttpClient$Version;
         2: .line 105
            aload 0 /* this */
            areturn
        end local 1 // java.net.http.HttpClient$Version version
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Ljdk/internal/net/http/HttpClientBuilderImpl;
            0    3     1  version  Ljava/net/http/HttpClient$Version;
    MethodParameters:
         Name  Flags
      version  

  public jdk.internal.net.http.HttpClientBuilderImpl priority(int);
    descriptor: (I)Ljdk/internal/net/http/HttpClientBuilderImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
        start local 1 // int priority
         0: .line 111
            iload 1 /* priority */
            iconst_1
            if_icmplt 1
            iload 1 /* priority */
            sipush 256
            if_icmple 2
         1: .line 112
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "priority must be between 1 and 256"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 114
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* priority */
            putfield jdk.internal.net.http.HttpClientBuilderImpl.priority:I
         3: .line 115
            aload 0 /* this */
            areturn
        end local 1 // int priority
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljdk/internal/net/http/HttpClientBuilderImpl;
            0    4     1  priority  I
    MethodParameters:
          Name  Flags
      priority  

  public jdk.internal.net.http.HttpClientBuilderImpl proxy(java.net.ProxySelector);
    descriptor: (Ljava/net/ProxySelector;)Ljdk/internal/net/http/HttpClientBuilderImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
        start local 1 // java.net.ProxySelector proxy
         0: .line 120
            aload 1 /* proxy */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 121
            aload 0 /* this */
            aload 1 /* proxy */
            putfield jdk.internal.net.http.HttpClientBuilderImpl.proxy:Ljava/net/ProxySelector;
         2: .line 122
            aload 0 /* this */
            areturn
        end local 1 // java.net.ProxySelector proxy
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/internal/net/http/HttpClientBuilderImpl;
            0    3     1  proxy  Ljava/net/ProxySelector;
    MethodParameters:
       Name  Flags
      proxy  

  public jdk.internal.net.http.HttpClientBuilderImpl authenticator(java.net.Authenticator);
    descriptor: (Ljava/net/Authenticator;)Ljdk/internal/net/http/HttpClientBuilderImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
        start local 1 // java.net.Authenticator a
         0: .line 128
            aload 1 /* a */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 129
            aload 0 /* this */
            aload 1 /* a */
            putfield jdk.internal.net.http.HttpClientBuilderImpl.authenticator:Ljava/net/Authenticator;
         2: .line 130
            aload 0 /* this */
            areturn
        end local 1 // java.net.Authenticator a
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/net/http/HttpClientBuilderImpl;
            0    3     1     a  Ljava/net/Authenticator;
    MethodParameters:
      Name  Flags
      a     

  public java.net.http.HttpClient build();
    descriptor: ()Ljava/net/http/HttpClient;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
         0: .line 135
            aload 0 /* this */
            invokestatic jdk.internal.net.http.HttpClientImpl.create:(Ljdk/internal/net/http/HttpClientBuilderImpl;)Ljdk/internal/net/http/HttpClientFacade;
            areturn
        end local 0 // jdk.internal.net.http.HttpClientBuilderImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/net/http/HttpClientBuilderImpl;

  public java.net.http.HttpClient$Builder cookieHandler(java.net.CookieHandler);
    descriptor: (Ljava/net/CookieHandler;)Ljava/net/http/HttpClient$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual jdk.internal.net.http.HttpClientBuilderImpl.cookieHandler:(Ljava/net/CookieHandler;)Ljdk/internal/net/http/HttpClientBuilderImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.net.http.HttpClient$Builder executor(java.util.concurrent.Executor);
    descriptor: (Ljava/util/concurrent/Executor;)Ljava/net/http/HttpClient$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual jdk.internal.net.http.HttpClientBuilderImpl.executor:(Ljava/util/concurrent/Executor;)Ljdk/internal/net/http/HttpClientBuilderImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.net.http.HttpClient$Builder proxy(java.net.ProxySelector);
    descriptor: (Ljava/net/ProxySelector;)Ljava/net/http/HttpClient$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual jdk.internal.net.http.HttpClientBuilderImpl.proxy:(Ljava/net/ProxySelector;)Ljdk/internal/net/http/HttpClientBuilderImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.net.http.HttpClient$Builder version(java.net.http.HttpClient$Version);
    descriptor: (Ljava/net/http/HttpClient$Version;)Ljava/net/http/HttpClient$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual jdk.internal.net.http.HttpClientBuilderImpl.version:(Ljava/net/http/HttpClient$Version;)Ljdk/internal/net/http/HttpClientBuilderImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.net.http.HttpClient$Builder followRedirects(java.net.http.HttpClient$Redirect);
    descriptor: (Ljava/net/http/HttpClient$Redirect;)Ljava/net/http/HttpClient$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual jdk.internal.net.http.HttpClientBuilderImpl.followRedirects:(Ljava/net/http/HttpClient$Redirect;)Ljdk/internal/net/http/HttpClientBuilderImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.net.http.HttpClient$Builder sslParameters(javax.net.ssl.SSLParameters);
    descriptor: (Ljavax/net/ssl/SSLParameters;)Ljava/net/http/HttpClient$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual jdk.internal.net.http.HttpClientBuilderImpl.sslParameters:(Ljavax/net/ssl/SSLParameters;)Ljdk/internal/net/http/HttpClientBuilderImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.net.http.HttpClient$Builder authenticator(java.net.Authenticator);
    descriptor: (Ljava/net/Authenticator;)Ljava/net/http/HttpClient$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual jdk.internal.net.http.HttpClientBuilderImpl.authenticator:(Ljava/net/Authenticator;)Ljdk/internal/net/http/HttpClientBuilderImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.net.http.HttpClient$Builder sslContext(javax.net.ssl.SSLContext);
    descriptor: (Ljavax/net/ssl/SSLContext;)Ljava/net/http/HttpClient$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual jdk.internal.net.http.HttpClientBuilderImpl.sslContext:(Ljavax/net/ssl/SSLContext;)Ljdk/internal/net/http/HttpClientBuilderImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.net.http.HttpClient$Builder connectTimeout(java.time.Duration);
    descriptor: (Ljava/time/Duration;)Ljava/net/http/HttpClient$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual jdk.internal.net.http.HttpClientBuilderImpl.connectTimeout:(Ljava/time/Duration;)Ljdk/internal/net/http/HttpClientBuilderImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.net.http.HttpClient$Builder priority(int);
    descriptor: (I)Ljava/net/http/HttpClient$Builder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            iload 1
            invokevirtual jdk.internal.net.http.HttpClientBuilderImpl.priority:(I)Ljdk/internal/net/http/HttpClientBuilderImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "HttpClientBuilderImpl.java"
InnerClasses:
  public abstract Builder = java.net.http.HttpClient$Builder of java.net.http.HttpClient
  public final Redirect = java.net.http.HttpClient$Redirect of java.net.http.HttpClient
  public final Version = java.net.http.HttpClient$Version of java.net.http.HttpClient