abstract class jdk.internal.net.http.Http1Exchange$Http1BodySubscriber implements java.util.concurrent.Flow$Subscriber<java.nio.ByteBuffer>
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: jdk.internal.net.http.Http1Exchange$Http1BodySubscriber
  super_class: java.lang.Object
{
  final jdk.internal.net.http.common.MinimalFuture<java.util.concurrent.Flow$Subscription> whenSubscribed;
    descriptor: Ljdk/internal/net/http/common/MinimalFuture;
    flags: (0x0010) ACC_FINAL
    Signature: Ljdk/internal/net/http/common/MinimalFuture<Ljava/util/concurrent/Flow$Subscription;>;

  private volatile java.util.concurrent.Flow$Subscription subscription;
    descriptor: Ljava/util/concurrent/Flow$Subscription;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  volatile boolean complete;
    descriptor: Z
    flags: (0x0040) ACC_VOLATILE

  private final jdk.internal.net.http.common.Logger debug;
    descriptor: Ljdk/internal/net/http/common/Logger;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static final java.util.List<java.nio.ByteBuffer> COMPLETED;
    descriptor: Ljava/util/List;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/List<Ljava/nio/ByteBuffer;>;

  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: .line 118
            ldc Ljdk/internal/net/http/Http1Exchange;
            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.Http1Exchange$Http1BodySubscriber.$assertionsDisabled:Z
         3: .line 129
            iconst_0
            invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
            invokestatic java.util.List.of:(Ljava/lang/Object;)Ljava/util/List;
            putstatic jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.COMPLETED:Ljava/util/List;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(jdk.internal.net.http.common.Logger);
    descriptor: (Ljdk/internal/net/http/common/Logger;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.Http1Exchange$Http1BodySubscriber this
        start local 1 // jdk.internal.net.http.common.Logger debug
         0: .line 123
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 119
            aload 0 /* this */
            new jdk.internal.net.http.common.MinimalFuture
            dup
            invokespecial jdk.internal.net.http.common.MinimalFuture.<init>:()V
            putfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.whenSubscribed:Ljdk/internal/net/http/common/MinimalFuture;
         2: .line 124
            getstatic jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.$assertionsDisabled:Z
            ifne 3
            aload 1 /* debug */
            ifnonnull 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 125
      StackMap locals: jdk.internal.net.http.Http1Exchange$Http1BodySubscriber jdk.internal.net.http.common.Logger
      StackMap stack:
            aload 0 /* this */
            aload 1 /* debug */
            putfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.debug:Ljdk/internal/net/http/common/Logger;
         4: .line 126
            return
        end local 1 // jdk.internal.net.http.common.Logger debug
        end local 0 // jdk.internal.net.http.Http1Exchange$Http1BodySubscriber this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Ljdk/internal/net/http/Http1Exchange$Http1BodySubscriber;
            0    5     1  debug  Ljdk/internal/net/http/common/Logger;
    MethodParameters:
       Name  Flags
      debug  

  final void request(long);
    descriptor: (J)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // jdk.internal.net.http.Http1Exchange$Http1BodySubscriber this
        start local 1 // long n
         0: .line 132
            aload 0 /* this */
            getfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.debug:Ljdk/internal/net/http/common/Logger;
            invokeinterface jdk.internal.net.http.common.Logger.on:()Z
            ifeq 4
         1: .line 133
            aload 0 /* this */
            getfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.debug:Ljdk/internal/net/http/common/Logger;
            ldc "Http1BodySubscriber requesting %d, from %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         2: .line 134
            lload 1 /* n */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.subscription:Ljava/util/concurrent/Flow$Subscription;
            aastore
         3: .line 133
            invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;[Ljava/lang/Object;)V
         4: .line 135
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.subscription:Ljava/util/concurrent/Flow$Subscription;
            lload 1 /* n */
            invokeinterface java.util.concurrent.Flow$Subscription.request:(J)V
         5: .line 136
            return
        end local 1 // long n
        end local 0 // jdk.internal.net.http.Http1Exchange$Http1BodySubscriber this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljdk/internal/net/http/Http1Exchange$Http1BodySubscriber;
            0    6     1     n  J
    MethodParameters:
      Name  Flags
      n     

  abstract java.lang.String currentStateMessage();
    descriptor: ()Ljava/lang/String;
    flags: (0x0400) ACC_ABSTRACT

  final boolean isSubscribed();
    descriptor: ()Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.Http1Exchange$Http1BodySubscriber this
         0: .line 142
            aload 0 /* this */
            getfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.subscription:Ljava/util/concurrent/Flow$Subscription;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.internal.net.http.Http1Exchange$Http1BodySubscriber this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/net/http/Http1Exchange$Http1BodySubscriber;

  final void setSubscription(java.util.concurrent.Flow$Subscription);
    descriptor: (Ljava/util/concurrent/Flow$Subscription;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.net.http.Http1Exchange$Http1BodySubscriber this
        start local 1 // java.util.concurrent.Flow$Subscription subscription
         0: .line 146
            aload 0 /* this */
            aload 1 /* subscription */
            putfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.subscription:Ljava/util/concurrent/Flow$Subscription;
         1: .line 147
            aload 0 /* this */
            getfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.whenSubscribed:Ljdk/internal/net/http/common/MinimalFuture;
            aload 1 /* subscription */
            invokevirtual jdk.internal.net.http.common.MinimalFuture.complete:(Ljava/lang/Object;)Z
            pop
         2: .line 148
            return
        end local 1 // java.util.concurrent.Flow$Subscription subscription
        end local 0 // jdk.internal.net.http.Http1Exchange$Http1BodySubscriber this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Ljdk/internal/net/http/Http1Exchange$Http1BodySubscriber;
            0    3     1  subscription  Ljava/util/concurrent/Flow$Subscription;
    MethodParameters:
              Name  Flags
      subscription  

  final void cancelSubscription();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // jdk.internal.net.http.Http1Exchange$Http1BodySubscriber this
         0: .line 152
            aload 0 /* this */
            getfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.subscription:Ljava/util/concurrent/Flow$Subscription;
            invokeinterface java.util.concurrent.Flow$Subscription.cancel:()V
         1: .line 153
            goto 6
      StackMap locals:
      StackMap stack: java.lang.Throwable
         2: astore 1 /* t */
        start local 1 // java.lang.Throwable t
         3: .line 154
            ldc "Ignoring exception raised when canceling BodyPublisher subscription"
            astore 2 /* msg */
        start local 2 // java.lang.String msg
         4: .line 155
            aload 0 /* this */
            getfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.debug:Ljdk/internal/net/http/common/Logger;
            invokeinterface jdk.internal.net.http.common.Logger.on:()Z
            ifeq 5
            aload 0 /* this */
            getfield jdk.internal.net.http.Http1Exchange$Http1BodySubscriber.debug:Ljdk/internal/net/http/common/Logger;
            ldc "%s: %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* msg */
            aastore
            dup
            iconst_1
            aload 1 /* t */
            aastore
            invokeinterface jdk.internal.net.http.common.Logger.log:(Ljava/lang/String;[Ljava/lang/Object;)V
         5: .line 156
      StackMap locals: java.lang.Throwable java.lang.String
      StackMap stack:
            ldc "{0}: {1}"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* msg */
            aastore
            dup
            iconst_1
            aload 1 /* t */
            aastore
            invokestatic jdk.internal.net.http.common.Log.logError:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 2 // java.lang.String msg
        end local 1 // java.lang.Throwable t
         6: .line 158
      StackMap locals:
      StackMap stack:
            return
        end local 0 // jdk.internal.net.http.Http1Exchange$Http1BodySubscriber this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljdk/internal/net/http/Http1Exchange$Http1BodySubscriber;
            3    6     1     t  Ljava/lang/Throwable;
            4    6     2   msg  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Throwable

  static jdk.internal.net.http.Http1Exchange$Http1BodySubscriber completeSubscriber(jdk.internal.net.http.common.Logger);
    descriptor: (Ljdk/internal/net/http/common/Logger;)Ljdk/internal/net/http/Http1Exchange$Http1BodySubscriber;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.internal.net.http.common.Logger debug
         0: .line 161
            new jdk.internal.net.http.Http1Exchange$Http1BodySubscriber$1
            dup
            aload 0 /* debug */
            invokespecial jdk.internal.net.http.Http1Exchange$Http1BodySubscriber$1.<init>:(Ljdk/internal/net/http/common/Logger;)V
            areturn
        end local 0 // jdk.internal.net.http.common.Logger debug
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  debug  Ljdk/internal/net/http/common/Logger;
    MethodParameters:
       Name  Flags
      debug  
}
Signature: Ljava/lang/Object;Ljava/util/concurrent/Flow$Subscriber<Ljava/nio/ByteBuffer;>;
SourceFile: "Http1Exchange.java"
NestHost: jdk.internal.net.http.Http1Exchange
InnerClasses:
  public abstract Subscriber = java.util.concurrent.Flow$Subscriber of java.util.concurrent.Flow
  public abstract Subscription = java.util.concurrent.Flow$Subscription of java.util.concurrent.Flow
  abstract Http1BodySubscriber = jdk.internal.net.http.Http1Exchange$Http1BodySubscriber of jdk.internal.net.http.Http1Exchange
  jdk.internal.net.http.Http1Exchange$Http1BodySubscriber$1