public interface io.micronaut.http.client.HttpClient extends java.io.Closeable, io.micronaut.context.LifeCycle<io.micronaut.http.client.HttpClient>
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: io.micronaut.http.client.HttpClient
  super_class: java.lang.Object
{
  public static final io.micronaut.core.type.Argument<io.micronaut.http.hateoas.JsonError> DEFAULT_ERROR_TYPE;
    descriptor: Lio/micronaut/core/type/Argument;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lio/micronaut/core/type/Argument<Lio/micronaut/http/hateoas/JsonError;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 45
            ldc Lio/micronaut/http/hateoas/JsonError;
            invokestatic io.micronaut.core.type.Argument.of:(Ljava/lang/Class;)Lio/micronaut/core/type/Argument;
            putstatic io.micronaut.http.client.HttpClient.DEFAULT_ERROR_TYPE:Lio/micronaut/core/type/Argument;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public abstract io.micronaut.http.client.BlockingHttpClient toBlocking();
    descriptor: ()Lio/micronaut/http/client/BlockingHttpClient;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract <I, O, E> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<O>> exchange(io.micronaut.http.HttpRequest<I>, io.micronaut.core.type.Argument<O>, io.micronaut.core.type.Argument<E>);
    descriptor: (Lio/micronaut/http/HttpRequest;Lio/micronaut/core/type/Argument;Lio/micronaut/core/type/Argument;)Lorg/reactivestreams/Publisher;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: <I:Ljava/lang/Object;O:Ljava/lang/Object;E:Ljava/lang/Object;>(Lio/micronaut/http/HttpRequest<TI;>;Lio/micronaut/core/type/Argument<TO;>;Lio/micronaut/core/type/Argument<TE;>;)Lorg/reactivestreams/Publisher<Lio/micronaut/http/HttpResponse<TO;>;>;
    MethodParameters:
           Name  Flags
      request    
      bodyType   
      errorType  

  public <I, O> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<O>> exchange(io.micronaut.http.HttpRequest<I>, io.micronaut.core.type.Argument<O>);
    descriptor: (Lio/micronaut/http/HttpRequest;Lio/micronaut/core/type/Argument;)Lorg/reactivestreams/Publisher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.micronaut.http.client.HttpClient this
        start local 1 // io.micronaut.http.HttpRequest request
        start local 2 // io.micronaut.core.type.Argument bodyType
         0: .line 89
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* bodyType */
            getstatic io.micronaut.http.client.HttpClient.DEFAULT_ERROR_TYPE:Lio/micronaut/core/type/Argument;
            invokeinterface io.micronaut.http.client.HttpClient.exchange:(Lio/micronaut/http/HttpRequest;Lio/micronaut/core/type/Argument;Lio/micronaut/core/type/Argument;)Lorg/reactivestreams/Publisher;
            areturn
        end local 2 // io.micronaut.core.type.Argument bodyType
        end local 1 // io.micronaut.http.HttpRequest request
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lio/micronaut/http/client/HttpClient;
            0    1     1   request  Lio/micronaut/http/HttpRequest<TI;>;
            0    1     2  bodyType  Lio/micronaut/core/type/Argument<TO;>;
    Signature: <I:Ljava/lang/Object;O:Ljava/lang/Object;>(Lio/micronaut/http/HttpRequest<TI;>;Lio/micronaut/core/type/Argument<TO;>;)Lorg/reactivestreams/Publisher<Lio/micronaut/http/HttpResponse<TO;>;>;
    MethodParameters:
          Name  Flags
      request   
      bodyType  

  public <I> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer>> exchange(io.micronaut.http.HttpRequest<I>);
    descriptor: (Lio/micronaut/http/HttpRequest;)Lorg/reactivestreams/Publisher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.micronaut.http.client.HttpClient this
        start local 1 // io.micronaut.http.HttpRequest request
         0: .line 101
            aload 0 /* this */
            aload 1 /* request */
            ldc Lio/micronaut/core/io/buffer/ByteBuffer;
            invokeinterface io.micronaut.http.client.HttpClient.exchange:(Lio/micronaut/http/HttpRequest;Ljava/lang/Class;)Lorg/reactivestreams/Publisher;
            areturn
        end local 1 // io.micronaut.http.HttpRequest request
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lio/micronaut/http/client/HttpClient;
            0    1     1  request  Lio/micronaut/http/HttpRequest<TI;>;
    Signature: <I:Ljava/lang/Object;>(Lio/micronaut/http/HttpRequest<TI;>;)Lorg/reactivestreams/Publisher<Lio/micronaut/http/HttpResponse<Lio/micronaut/core/io/buffer/ByteBuffer;>;>;
    MethodParameters:
         Name  Flags
      request  

  public org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer>> exchange(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/reactivestreams/Publisher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.micronaut.http.client.HttpClient this
        start local 1 // java.lang.String uri
         0: .line 112
            aload 0 /* this */
            aload 1 /* uri */
            invokestatic io.micronaut.http.HttpRequest.GET:(Ljava/lang/String;)Lio/micronaut/http/MutableHttpRequest;
            ldc Lio/micronaut/core/io/buffer/ByteBuffer;
            invokeinterface io.micronaut.http.client.HttpClient.exchange:(Lio/micronaut/http/HttpRequest;Ljava/lang/Class;)Lorg/reactivestreams/Publisher;
            areturn
        end local 1 // java.lang.String uri
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/micronaut/http/client/HttpClient;
            0    1     1   uri  Ljava/lang/String;
    Signature: (Ljava/lang/String;)Lorg/reactivestreams/Publisher<Lio/micronaut/http/HttpResponse<Lio/micronaut/core/io/buffer/ByteBuffer;>;>;
    MethodParameters:
      Name  Flags
      uri   

  public <O> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<O>> exchange(java.lang.String, java.lang.Class<O>);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;)Lorg/reactivestreams/Publisher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.micronaut.http.client.HttpClient this
        start local 1 // java.lang.String uri
        start local 2 // java.lang.Class bodyType
         0: .line 125
            aload 0 /* this */
            aload 1 /* uri */
            invokestatic io.micronaut.http.HttpRequest.GET:(Ljava/lang/String;)Lio/micronaut/http/MutableHttpRequest;
            aload 2 /* bodyType */
            invokestatic io.micronaut.core.type.Argument.of:(Ljava/lang/Class;)Lio/micronaut/core/type/Argument;
            invokeinterface io.micronaut.http.client.HttpClient.exchange:(Lio/micronaut/http/HttpRequest;Lio/micronaut/core/type/Argument;)Lorg/reactivestreams/Publisher;
            areturn
        end local 2 // java.lang.Class bodyType
        end local 1 // java.lang.String uri
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lio/micronaut/http/client/HttpClient;
            0    1     1       uri  Ljava/lang/String;
            0    1     2  bodyType  Ljava/lang/Class<TO;>;
    Signature: <O:Ljava/lang/Object;>(Ljava/lang/String;Ljava/lang/Class<TO;>;)Lorg/reactivestreams/Publisher<Lio/micronaut/http/HttpResponse<TO;>;>;
    MethodParameters:
          Name  Flags
      uri       
      bodyType  

  public <I, O> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<O>> exchange(io.micronaut.http.HttpRequest<I>, java.lang.Class<O>);
    descriptor: (Lio/micronaut/http/HttpRequest;Ljava/lang/Class;)Lorg/reactivestreams/Publisher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.micronaut.http.client.HttpClient this
        start local 1 // io.micronaut.http.HttpRequest request
        start local 2 // java.lang.Class bodyType
         0: .line 139
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* bodyType */
            invokestatic io.micronaut.core.type.Argument.of:(Ljava/lang/Class;)Lio/micronaut/core/type/Argument;
            invokeinterface io.micronaut.http.client.HttpClient.exchange:(Lio/micronaut/http/HttpRequest;Lio/micronaut/core/type/Argument;)Lorg/reactivestreams/Publisher;
            areturn
        end local 2 // java.lang.Class bodyType
        end local 1 // io.micronaut.http.HttpRequest request
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lio/micronaut/http/client/HttpClient;
            0    1     1   request  Lio/micronaut/http/HttpRequest<TI;>;
            0    1     2  bodyType  Ljava/lang/Class<TO;>;
    Signature: <I:Ljava/lang/Object;O:Ljava/lang/Object;>(Lio/micronaut/http/HttpRequest<TI;>;Ljava/lang/Class<TO;>;)Lorg/reactivestreams/Publisher<Lio/micronaut/http/HttpResponse<TO;>;>;
    MethodParameters:
          Name  Flags
      request   
      bodyType  

  public <I, O, E> org.reactivestreams.Publisher<O> retrieve(io.micronaut.http.HttpRequest<I>, io.micronaut.core.type.Argument<O>, io.micronaut.core.type.Argument<E>);
    descriptor: (Lio/micronaut/http/HttpRequest;Lio/micronaut/core/type/Argument;Lio/micronaut/core/type/Argument;)Lorg/reactivestreams/Publisher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.micronaut.http.client.HttpClient this
        start local 1 // io.micronaut.http.HttpRequest request
        start local 2 // io.micronaut.core.type.Argument bodyType
        start local 3 // io.micronaut.core.type.Argument errorType
         0: .line 155
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* bodyType */
            aload 3 /* errorType */
            invokeinterface io.micronaut.http.client.HttpClient.exchange:(Lio/micronaut/http/HttpRequest;Lio/micronaut/core/type/Argument;Lio/micronaut/core/type/Argument;)Lorg/reactivestreams/Publisher;
            aload 2 /* bodyType */
            invokedynamic apply(Lio/micronaut/core/type/Argument;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  io/micronaut/http/client/HttpClient.lambda$0(Lio/micronaut/core/type/Argument;Lio/micronaut/http/HttpResponse;)Ljava/lang/Object; (6 itf)
                  (Lio/micronaut/http/HttpResponse;)Ljava/lang/Object;
            invokestatic io.micronaut.core.async.publisher.Publishers.map:(Lorg/reactivestreams/Publisher;Ljava/util/function/Function;)Lorg/reactivestreams/Publisher;
            areturn
        end local 3 // io.micronaut.core.type.Argument errorType
        end local 2 // io.micronaut.core.type.Argument bodyType
        end local 1 // io.micronaut.http.HttpRequest request
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lio/micronaut/http/client/HttpClient;
            0    1     1    request  Lio/micronaut/http/HttpRequest<TI;>;
            0    1     2   bodyType  Lio/micronaut/core/type/Argument<TO;>;
            0    1     3  errorType  Lio/micronaut/core/type/Argument<TE;>;
    Signature: <I:Ljava/lang/Object;O:Ljava/lang/Object;E:Ljava/lang/Object;>(Lio/micronaut/http/HttpRequest<TI;>;Lio/micronaut/core/type/Argument<TO;>;Lio/micronaut/core/type/Argument<TE;>;)Lorg/reactivestreams/Publisher<TO;>;
    MethodParameters:
           Name  Flags
      request    
      bodyType   
      errorType  

  public <I, O> org.reactivestreams.Publisher<O> retrieve(io.micronaut.http.HttpRequest<I>, io.micronaut.core.type.Argument<O>);
    descriptor: (Lio/micronaut/http/HttpRequest;Lio/micronaut/core/type/Argument;)Lorg/reactivestreams/Publisher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.micronaut.http.client.HttpClient this
        start local 1 // io.micronaut.http.HttpRequest request
        start local 2 // io.micronaut.core.type.Argument bodyType
         0: .line 180
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* bodyType */
            getstatic io.micronaut.http.client.HttpClient.DEFAULT_ERROR_TYPE:Lio/micronaut/core/type/Argument;
            invokeinterface io.micronaut.http.client.HttpClient.retrieve:(Lio/micronaut/http/HttpRequest;Lio/micronaut/core/type/Argument;Lio/micronaut/core/type/Argument;)Lorg/reactivestreams/Publisher;
            areturn
        end local 2 // io.micronaut.core.type.Argument bodyType
        end local 1 // io.micronaut.http.HttpRequest request
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lio/micronaut/http/client/HttpClient;
            0    1     1   request  Lio/micronaut/http/HttpRequest<TI;>;
            0    1     2  bodyType  Lio/micronaut/core/type/Argument<TO;>;
    Signature: <I:Ljava/lang/Object;O:Ljava/lang/Object;>(Lio/micronaut/http/HttpRequest<TI;>;Lio/micronaut/core/type/Argument<TO;>;)Lorg/reactivestreams/Publisher<TO;>;
    MethodParameters:
          Name  Flags
      request   
      bodyType  

  public <I, O> org.reactivestreams.Publisher<O> retrieve(io.micronaut.http.HttpRequest<I>, java.lang.Class<O>);
    descriptor: (Lio/micronaut/http/HttpRequest;Ljava/lang/Class;)Lorg/reactivestreams/Publisher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.micronaut.http.client.HttpClient this
        start local 1 // io.micronaut.http.HttpRequest request
        start local 2 // java.lang.Class bodyType
         0: .line 194
            aload 0 /* this */
            aload 1 /* request */
            aload 2 /* bodyType */
            invokestatic io.micronaut.core.type.Argument.of:(Ljava/lang/Class;)Lio/micronaut/core/type/Argument;
            invokeinterface io.micronaut.http.client.HttpClient.retrieve:(Lio/micronaut/http/HttpRequest;Lio/micronaut/core/type/Argument;)Lorg/reactivestreams/Publisher;
            areturn
        end local 2 // java.lang.Class bodyType
        end local 1 // io.micronaut.http.HttpRequest request
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lio/micronaut/http/client/HttpClient;
            0    1     1   request  Lio/micronaut/http/HttpRequest<TI;>;
            0    1     2  bodyType  Ljava/lang/Class<TO;>;
    Signature: <I:Ljava/lang/Object;O:Ljava/lang/Object;>(Lio/micronaut/http/HttpRequest<TI;>;Ljava/lang/Class<TO;>;)Lorg/reactivestreams/Publisher<TO;>;
    MethodParameters:
          Name  Flags
      request   
      bodyType  

  public <I> org.reactivestreams.Publisher<java.lang.String> retrieve(io.micronaut.http.HttpRequest<I>);
    descriptor: (Lio/micronaut/http/HttpRequest;)Lorg/reactivestreams/Publisher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.micronaut.http.client.HttpClient this
        start local 1 // io.micronaut.http.HttpRequest request
         0: .line 206
            aload 0 /* this */
            aload 1 /* request */
            ldc Ljava/lang/String;
            invokeinterface io.micronaut.http.client.HttpClient.retrieve:(Lio/micronaut/http/HttpRequest;Ljava/lang/Class;)Lorg/reactivestreams/Publisher;
            areturn
        end local 1 // io.micronaut.http.HttpRequest request
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lio/micronaut/http/client/HttpClient;
            0    1     1  request  Lio/micronaut/http/HttpRequest<TI;>;
    Signature: <I:Ljava/lang/Object;>(Lio/micronaut/http/HttpRequest<TI;>;)Lorg/reactivestreams/Publisher<Ljava/lang/String;>;
    MethodParameters:
         Name  Flags
      request  

  public org.reactivestreams.Publisher<java.lang.String> retrieve(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/reactivestreams/Publisher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.micronaut.http.client.HttpClient this
        start local 1 // java.lang.String uri
         0: .line 217
            aload 0 /* this */
            aload 1 /* uri */
            invokestatic io.micronaut.http.HttpRequest.GET:(Ljava/lang/String;)Lio/micronaut/http/MutableHttpRequest;
            ldc Ljava/lang/String;
            invokeinterface io.micronaut.http.client.HttpClient.retrieve:(Lio/micronaut/http/HttpRequest;Ljava/lang/Class;)Lorg/reactivestreams/Publisher;
            areturn
        end local 1 // java.lang.String uri
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/micronaut/http/client/HttpClient;
            0    1     1   uri  Ljava/lang/String;
    Signature: (Ljava/lang/String;)Lorg/reactivestreams/Publisher<Ljava/lang/String;>;
    MethodParameters:
      Name  Flags
      uri   

  public io.micronaut.http.client.HttpClient refresh();
    descriptor: ()Lio/micronaut/http/client/HttpClient;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.micronaut.http.client.HttpClient this
         0: .line 222
            aload 0 /* this */
            invokeinterface io.micronaut.http.client.HttpClient.stop:()Lio/micronaut/context/LifeCycle;
            pop
         1: .line 223
            aload 0 /* this */
            invokeinterface io.micronaut.http.client.HttpClient.start:()Lio/micronaut/context/LifeCycle;
            checkcast io.micronaut.http.client.HttpClient
            areturn
        end local 0 // io.micronaut.http.client.HttpClient this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/micronaut/http/client/HttpClient;

  public static io.micronaut.http.client.HttpClient create(java.net.URL);
    descriptor: (Ljava/net/URL;)Lio/micronaut/http/client/HttpClient;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.net.URL url
         0: .line 234
            aload 0 /* url */
            invokestatic io.micronaut.http.client.HttpClientConfiguration.createClient:(Ljava/net/URL;)Lio/micronaut/http/client/RxHttpClient;
            areturn
        end local 0 // java.net.URL url
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   url  Ljava/net/URL;
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.Nullable()
    MethodParameters:
      Name  Flags
      url   

  public static io.micronaut.http.client.HttpClient create(java.net.URL, io.micronaut.http.client.HttpClientConfiguration);
    descriptor: (Ljava/net/URL;Lio/micronaut/http/client/HttpClientConfiguration;)Lio/micronaut/http/client/HttpClient;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.net.URL url
        start local 1 // io.micronaut.http.client.HttpClientConfiguration configuration
         0: .line 247
            aload 0 /* url */
            aload 1 /* configuration */
            invokestatic io.micronaut.http.client.HttpClientConfiguration.createClient:(Ljava/net/URL;Lio/micronaut/http/client/HttpClientConfiguration;)Lio/micronaut/http/client/RxHttpClient;
            areturn
        end local 1 // io.micronaut.http.client.HttpClientConfiguration configuration
        end local 0 // java.net.URL url
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0            url  Ljava/net/URL;
            0    1     1  configuration  Lio/micronaut/http/client/HttpClientConfiguration;
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.Nullable()
      1:
    MethodParameters:
               Name  Flags
      url            
      configuration  

  public io.micronaut.context.LifeCycle refresh();
    descriptor: ()Lio/micronaut/context/LifeCycle;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokeinterface io.micronaut.http.client.HttpClient.refresh:()Lio/micronaut/http/client/HttpClient;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static java.lang.Object lambda$0(io.micronaut.core.type.Argument, io.micronaut.http.HttpResponse);
    descriptor: (Lio/micronaut/core/type/Argument;Lio/micronaut/http/HttpResponse;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=2
        start local 1 // io.micronaut.http.HttpResponse response
         0: .line 156
            aload 0
            invokeinterface io.micronaut.core.type.Argument.getType:()Ljava/lang/Class;
            ldc Lio/micronaut/http/HttpStatus;
            if_acmpne 2
         1: .line 157
            aload 1 /* response */
            invokeinterface io.micronaut.http.HttpResponse.getStatus:()Lio/micronaut/http/HttpStatus;
            areturn
         2: .line 159
      StackMap locals:
      StackMap stack:
            aload 1 /* response */
            invokeinterface io.micronaut.http.HttpResponse.getBody:()Ljava/util/Optional;
            astore 2 /* body */
        start local 2 // java.util.Optional body
         3: .line 160
            aload 2 /* body */
         4: .line 161
            aload 1 /* response */
            invokedynamic get(Lio/micronaut/http/HttpResponse;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  io/micronaut/http/client/HttpClient.lambda$1(Lio/micronaut/http/HttpResponse;)Lio/micronaut/http/client/exceptions/HttpClientResponseException; (6 itf)
                  ()Lio/micronaut/http/client/exceptions/HttpClientResponseException;
            invokevirtual java.util.Optional.orElseThrow:(Ljava/util/function/Supplier;)Ljava/lang/Object;
         5: .line 160
            areturn
        end local 2 // java.util.Optional body
        end local 1 // io.micronaut.http.HttpResponse response
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     1  response  Lio/micronaut/http/HttpResponse<TO;>;
            3    6     2      body  Ljava/util/Optional<TO;>;

  private static io.micronaut.http.client.exceptions.HttpClientResponseException lambda$1(io.micronaut.http.HttpResponse);
    descriptor: (Lio/micronaut/http/HttpResponse;)Lio/micronaut/http/client/exceptions/HttpClientResponseException;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
         0: .line 161
            new io.micronaut.http.client.exceptions.HttpClientResponseException
            dup
         1: .line 162
            ldc "Empty body"
         2: .line 163
            aload 0
         3: .line 161
            invokespecial io.micronaut.http.client.exceptions.HttpClientResponseException.<init>:(Ljava/lang/String;Lio/micronaut/http/HttpResponse;)V
         4: .line 164
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Ljava/io/Closeable;Lio/micronaut/context/LifeCycle<Lio/micronaut/http/client/HttpClient;>;
SourceFile: "HttpClient.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles