public interface io.micronaut.http.HttpMessage<B> extends io.micronaut.core.attr.MutableAttributeHolder
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: io.micronaut.http.HttpMessage
  super_class: java.lang.Object
{
  public abstract io.micronaut.http.HttpHeaders getHeaders();
    descriptor: ()Lio/micronaut/http/HttpHeaders;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.NonNull()

  public abstract io.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object> getAttributes();
    descriptor: ()Lio/micronaut/core/convert/value/MutableConvertibleValues;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lio/micronaut/core/convert/value/MutableConvertibleValues<Ljava/lang/Object;>;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.NonNull()

  public abstract java.util.Optional<B> getBody();
    descriptor: ()Ljava/util/Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Ljava/util/Optional<TB;>;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.NonNull()

  public java.nio.charset.Charset getCharacterEncoding();
    descriptor: ()Ljava/nio/charset/Charset;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.micronaut.http.HttpMessage this
         0: .line 67
            aload 0 /* this */
            invokestatic io.micronaut.http.util.HttpUtil.resolveCharset:(Lio/micronaut/http/HttpMessage;)Ljava/util/Optional;
            getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
            invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.nio.charset.Charset
            areturn
        end local 0 // io.micronaut.http.HttpMessage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/micronaut/http/HttpMessage<TB;>;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.NonNull()

  public io.micronaut.http.HttpMessage<B> setAttribute(java.lang.CharSequence, );
    descriptor: (Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/micronaut/http/HttpMessage;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.micronaut.http.HttpMessage this
        start local 1 // java.lang.CharSequence name
        start local 2 // java.lang.Object value
         0: .line 72
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* value */
            invokespecial io.micronaut.core.attr.MutableAttributeHolder.setAttribute:(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/micronaut/core/attr/MutableAttributeHolder;
            checkcast io.micronaut.http.HttpMessage
            areturn
        end local 2 // java.lang.Object value
        end local 1 // java.lang.CharSequence name
        end local 0 // io.micronaut.http.HttpMessage this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lio/micronaut/http/HttpMessage<TB;>;
            0    1     1   name  Ljava/lang/CharSequence;
            0    1     2  value  Ljava/lang/Object;
    Signature: (Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/micronaut/http/HttpMessage<TB;>;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.NonNull()
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.NonNull()
      1:
    MethodParameters:
       Name  Flags
      name   
      value  

  public <T> java.util.Optional<T> getBody(io.micronaut.core.type.Argument<T>);
    descriptor: (Lio/micronaut/core/type/Argument;)Ljava/util/Optional;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.micronaut.http.HttpMessage this
        start local 1 // io.micronaut.core.type.Argument type
         0: .line 83
            ldc "type"
            aload 1 /* type */
            invokestatic io.micronaut.core.util.ArgumentUtils.requireNonNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 84
            aload 0 /* this */
            invokeinterface io.micronaut.http.HttpMessage.getBody:()Ljava/util/Optional;
            aload 1 /* type */
            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/HttpMessage.lambda$0(Lio/micronaut/core/type/Argument;Ljava/lang/Object;)Ljava/util/Optional; (6 itf)
                  (Ljava/lang/Object;)Ljava/util/Optional;
            invokevirtual java.util.Optional.flatMap:(Ljava/util/function/Function;)Ljava/util/Optional;
            areturn
        end local 1 // io.micronaut.core.type.Argument type
        end local 0 // io.micronaut.http.HttpMessage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/micronaut/http/HttpMessage<TB;>;
            0    2     1  type  Lio/micronaut/core/type/Argument<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lio/micronaut/core/type/Argument<TT;>;)Ljava/util/Optional<TT;>;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.NonNull()
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.NonNull()
    MethodParameters:
      Name  Flags
      type  

  public <T> java.util.Optional<T> getBody(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/util/Optional;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.micronaut.http.HttpMessage this
        start local 1 // java.lang.Class type
         0: .line 95
            ldc "type"
            aload 1 /* type */
            invokestatic io.micronaut.core.util.ArgumentUtils.requireNonNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 96
            aload 0 /* this */
            aload 1 /* type */
            invokestatic io.micronaut.core.type.Argument.of:(Ljava/lang/Class;)Lio/micronaut/core/type/Argument;
            invokeinterface io.micronaut.http.HttpMessage.getBody:(Lio/micronaut/core/type/Argument;)Ljava/util/Optional;
            areturn
        end local 1 // java.lang.Class type
        end local 0 // io.micronaut.http.HttpMessage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/micronaut/http/HttpMessage<TB;>;
            0    2     1  type  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/util/Optional<TT;>;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.NonNull()
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.NonNull()
    MethodParameters:
      Name  Flags
      type  

  public java.util.Optional<java.util.Locale> getLocale();
    descriptor: ()Ljava/util/Optional;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.micronaut.http.HttpMessage this
         0: .line 103
            aload 0 /* this */
            invokeinterface io.micronaut.http.HttpMessage.getHeaders:()Lio/micronaut/http/HttpHeaders;
            ldc "Content-Language"
            invokeinterface io.micronaut.http.HttpHeaders.findFirst:(Ljava/lang/CharSequence;)Ljava/util/Optional;
         1: .line 104
            invokedynamic apply()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;
                  java/util/Locale.<init>(Ljava/lang/String;)V (8)
                  (Ljava/lang/String;)Ljava/util/Locale;
            invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
         2: .line 103
            areturn
        end local 0 // io.micronaut.http.HttpMessage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/micronaut/http/HttpMessage<TB;>;
    Signature: ()Ljava/util/Optional<Ljava/util/Locale;>;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.NonNull()

  public long getContentLength();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.micronaut.http.HttpMessage this
         0: .line 111
            aload 0 /* this */
            invokeinterface io.micronaut.http.HttpMessage.getHeaders:()Lio/micronaut/http/HttpHeaders;
         1: .line 112
            invokeinterface io.micronaut.http.HttpHeaders.contentLength:()Ljava/util/OptionalLong;
         2: .line 113
            ldc -1
            invokevirtual java.util.OptionalLong.orElse:(J)J
         3: .line 111
            lreturn
        end local 0 // io.micronaut.http.HttpMessage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/micronaut/http/HttpMessage<TB;>;

  public java.util.Optional<io.micronaut.http.MediaType> getContentType();
    descriptor: ()Ljava/util/Optional;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.micronaut.http.HttpMessage this
         0: .line 122
            aload 0 /* this */
            invokeinterface io.micronaut.http.HttpMessage.getHeaders:()Lio/micronaut/http/HttpHeaders;
         1: .line 123
            invokeinterface io.micronaut.http.HttpHeaders.contentType:()Ljava/util/Optional;
         2: .line 122
            areturn
        end local 0 // io.micronaut.http.HttpMessage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/micronaut/http/HttpMessage<TB;>;
    Signature: ()Ljava/util/Optional<Lio/micronaut/http/MediaType;>;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.NonNull()

  public io.micronaut.core.attr.MutableAttributeHolder setAttribute(java.lang.CharSequence, java.lang.Object);
    descriptor: (Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/micronaut/core/attr/MutableAttributeHolder;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            invokeinterface io.micronaut.http.HttpMessage.setAttribute:(Ljava/lang/CharSequence;Ljava/lang/Object;)Lio/micronaut/http/HttpMessage;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.micronaut.core.convert.value.ConvertibleValues getAttributes();
    descriptor: ()Lio/micronaut/core/convert/value/ConvertibleValues;
    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.HttpMessage.getAttributes:()Lio/micronaut/core/convert/value/MutableConvertibleValues;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static java.util.Optional lambda$0(io.micronaut.core.type.Argument, java.lang.Object);
    descriptor: (Lio/micronaut/core/type/Argument;Ljava/lang/Object;)Ljava/util/Optional;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // java.lang.Object b
         0: .line 84
            getstatic io.micronaut.core.convert.ConversionService.SHARED:Lio/micronaut/core/convert/ConversionService;
            aload 1 /* b */
            aload 0
            invokestatic io.micronaut.core.convert.ConversionContext.of:(Lio/micronaut/core/type/Argument;)Lio/micronaut/core/convert/ArgumentConversionContext;
            invokeinterface io.micronaut.core.convert.ConversionService.convert:(Ljava/lang/Object;Lio/micronaut/core/convert/ArgumentConversionContext;)Ljava/util/Optional;
            areturn
        end local 1 // java.lang.Object b
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     b  TB;
}
Signature: <B:Ljava/lang/Object;>Ljava/lang/Object;Lio/micronaut/core/attr/MutableAttributeHolder;
SourceFile: "HttpMessage.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles