class io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 extends io.micronaut.core.async.subscriber.CompletionAwareSubscriber<java.lang.Object>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1
  super_class: io.micronaut.core.async.subscriber.CompletionAwareSubscriber
{
  java.util.concurrent.atomic.AtomicReference<java.lang.Object> reference;
    descriptor: Ljava/util/concurrent/atomic/AtomicReference;
    flags: (0x0000) 
    Signature: Ljava/util/concurrent/atomic/AtomicReference<Ljava/lang/Object;>;

  final io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice this$0;
    descriptor: Lio/micronaut/http/client/interceptor/HttpClientIntroductionAdvice;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final java.lang.Class val$reactiveValueType;
    descriptor: Ljava/lang/Class;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final java.util.concurrent.CompletableFuture val$future;
    descriptor: Ljava/util/concurrent/CompletableFuture;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final java.lang.Class val$declaringType;
    descriptor: Ljava/lang/Class;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice, java.lang.Class, java.util.concurrent.CompletableFuture, java.lang.Class);
    descriptor: (Lio/micronaut/http/client/interceptor/HttpClientIntroductionAdvice;Ljava/lang/Class;Ljava/util/concurrent/CompletableFuture;Ljava/lang/Class;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 this
         0: .line 355
            aload 0 /* this */
            aload 1
            putfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.this$0:Lio/micronaut/http/client/interceptor/HttpClientIntroductionAdvice;
            aload 0 /* this */
            aload 2
            putfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$reactiveValueType:Ljava/lang/Class;
            aload 0 /* this */
            aload 3
            putfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$future:Ljava/util/concurrent/CompletableFuture;
            aload 0 /* this */
            aload 4
            putfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$declaringType:Ljava/lang/Class;
            aload 0 /* this */
            invokespecial io.micronaut.core.async.subscriber.CompletionAwareSubscriber.<init>:()V
         1: .line 356
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            putfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.reference:Ljava/util/concurrent/atomic/AtomicReference;
         2: .line 355
            return
        end local 0 // io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/micronaut/http/client/interceptor/HttpClientIntroductionAdvice$1;
    MethodParameters:
                       Name  Flags
      this$0                 final
      val$reactiveValueType  final
      val$future             final
      val$declaringType      final

  protected void doOnSubscribe(org.reactivestreams.Subscription);
    descriptor: (Lorg/reactivestreams/Subscription;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 this
        start local 1 // org.reactivestreams.Subscription subscription
         0: .line 360
            aload 1 /* subscription */
            lconst_1
            invokeinterface org.reactivestreams.Subscription.request:(J)V
         1: .line 361
            return
        end local 1 // org.reactivestreams.Subscription subscription
        end local 0 // io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lio/micronaut/http/client/interceptor/HttpClientIntroductionAdvice$1;
            0    2     1  subscription  Lorg/reactivestreams/Subscription;
    MethodParameters:
              Name  Flags
      subscription  

  protected void doOnNext(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 this
        start local 1 // java.lang.Object message
         0: .line 365
            ldc Ljava/lang/Void;
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$reactiveValueType:Ljava/lang/Class;
            if_acmpeq 2
         1: .line 366
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.reference:Ljava/util/concurrent/atomic/AtomicReference;
            aload 1 /* message */
            invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
         2: .line 368
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object message
        end local 0 // io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/micronaut/http/client/interceptor/HttpClientIntroductionAdvice$1;
            0    3     1  message  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      message  

  protected void doOnError(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 this
        start local 1 // java.lang.Throwable t
         0: .line 372
            aload 1 /* t */
            instanceof io.micronaut.http.client.exceptions.HttpClientResponseException
            ifeq 11
         1: .line 373
            aload 1 /* t */
            checkcast io.micronaut.http.client.exceptions.HttpClientResponseException
            astore 2 /* e */
        start local 2 // io.micronaut.http.client.exceptions.HttpClientResponseException e
         2: .line 374
            aload 2 /* e */
            invokevirtual io.micronaut.http.client.exceptions.HttpClientResponseException.getStatus:()Lio/micronaut/http/HttpStatus;
            getstatic io.micronaut.http.HttpStatus.NOT_FOUND:Lio/micronaut/http/HttpStatus;
            if_acmpne 11
         3: .line 375
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$reactiveValueType:Ljava/lang/Class;
            ldc Ljava/util/Optional;
            if_acmpne 6
         4: .line 376
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$future:Ljava/util/concurrent/CompletableFuture;
            invokestatic java.util.Optional.empty:()Ljava/util/Optional;
            invokevirtual java.util.concurrent.CompletableFuture.complete:(Ljava/lang/Object;)Z
            pop
         5: .line 377
            goto 10
      StackMap locals: io.micronaut.http.client.exceptions.HttpClientResponseException
      StackMap stack:
         6: ldc Lio/micronaut/http/HttpResponse;
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$reactiveValueType:Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 9
         7: .line 378
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$future:Ljava/util/concurrent/CompletableFuture;
            aload 2 /* e */
            invokevirtual io.micronaut.http.client.exceptions.HttpClientResponseException.getResponse:()Lio/micronaut/http/HttpResponse;
            invokevirtual java.util.concurrent.CompletableFuture.complete:(Ljava/lang/Object;)Z
            pop
         8: .line 379
            goto 10
         9: .line 380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$future:Ljava/util/concurrent/CompletableFuture;
            aconst_null
            invokevirtual java.util.concurrent.CompletableFuture.complete:(Ljava/lang/Object;)Z
            pop
        10: .line 382
      StackMap locals:
      StackMap stack:
            return
        end local 2 // io.micronaut.http.client.exceptions.HttpClientResponseException e
        11: .line 385
      StackMap locals:
      StackMap stack:
            getstatic io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice.LOG:Lorg/slf4j/Logger;
            invokeinterface org.slf4j.Logger.isErrorEnabled:()Z
            ifeq 13
        12: .line 386
            getstatic io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice.LOG:Lorg/slf4j/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Client ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$declaringType:Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "] received HTTP error response: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* t */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* t */
            invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
        13: .line 388
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$future:Ljava/util/concurrent/CompletableFuture;
            aload 1 /* t */
            invokevirtual java.util.concurrent.CompletableFuture.completeExceptionally:(Ljava/lang/Throwable;)Z
            pop
        14: .line 389
            return
        end local 1 // java.lang.Throwable t
        end local 0 // io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lio/micronaut/http/client/interceptor/HttpClientIntroductionAdvice$1;
            0   15     1     t  Ljava/lang/Throwable;
            2   11     2     e  Lio/micronaut/http/client/exceptions/HttpClientResponseException;
    MethodParameters:
      Name  Flags
      t     

  protected void doOnComplete();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 this
         0: .line 393
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.val$future:Ljava/util/concurrent/CompletableFuture;
            aload 0 /* this */
            getfield io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1.reference:Ljava/util/concurrent/atomic/AtomicReference;
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            invokevirtual java.util.concurrent.CompletableFuture.complete:(Ljava/lang/Object;)Z
            pop
         1: .line 394
            return
        end local 0 // io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/micronaut/http/client/interceptor/HttpClientIntroductionAdvice$1;
}
Signature: Lio/micronaut/core/async/subscriber/CompletionAwareSubscriber<Ljava/lang/Object;>;
SourceFile: "HttpClientIntroductionAdvice.java"
EnclosingMethod: io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice.intercept:(Lio/micronaut/aop/MethodInvocationContext;)Ljava/lang/Object;
NestHost: io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice
InnerClasses:
  io.micronaut.http.client.interceptor.HttpClientIntroductionAdvice$1