public abstract class org.springframework.http.codec.json.AbstractJackson2Decoder extends org.springframework.http.codec.json.Jackson2CodecSupport implements org.springframework.http.codec.HttpMessageDecoder<java.lang.Object>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.springframework.http.codec.json.AbstractJackson2Decoder
  super_class: org.springframework.http.codec.json.Jackson2CodecSupport
{
  private final com.fasterxml.jackson.core.JsonFactory jsonFactory;
    descriptor: Lcom/fasterxml/jackson/core/JsonFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(com.fasterxml.jackson.databind.ObjectMapper, org.springframework.util.MimeType[]);
    descriptor: (Lcom/fasterxml/jackson/databind/ObjectMapper;[Lorg/springframework/util/MimeType;)V
    flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
        start local 1 // com.fasterxml.jackson.databind.ObjectMapper mapper
        start local 2 // org.springframework.util.MimeType[] mimeTypes
         0: .line 71
            aload 0 /* this */
            aload 1 /* mapper */
            aload 2 /* mimeTypes */
            invokespecial org.springframework.http.codec.json.Jackson2CodecSupport.<init>:(Lcom/fasterxml/jackson/databind/ObjectMapper;[Lorg/springframework/util/MimeType;)V
         1: .line 72
            aload 0 /* this */
            aload 1 /* mapper */
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.getFactory:()Lcom/fasterxml/jackson/core/JsonFactory;
            invokevirtual com.fasterxml.jackson.core.JsonFactory.copy:()Lcom/fasterxml/jackson/core/JsonFactory;
         2: .line 73
            getstatic com.fasterxml.jackson.core.JsonFactory$Feature.USE_THREAD_LOCAL_FOR_BUFFER_RECYCLING:Lcom/fasterxml/jackson/core/JsonFactory$Feature;
            invokevirtual com.fasterxml.jackson.core.JsonFactory.disable:(Lcom/fasterxml/jackson/core/JsonFactory$Feature;)Lcom/fasterxml/jackson/core/JsonFactory;
         3: .line 72
            putfield org.springframework.http.codec.json.AbstractJackson2Decoder.jsonFactory:Lcom/fasterxml/jackson/core/JsonFactory;
         4: .line 74
            return
        end local 2 // org.springframework.util.MimeType[] mimeTypes
        end local 1 // com.fasterxml.jackson.databind.ObjectMapper mapper
        end local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/springframework/http/codec/json/AbstractJackson2Decoder;
            0    5     1     mapper  Lcom/fasterxml/jackson/databind/ObjectMapper;
            0    5     2  mimeTypes  [Lorg/springframework/util/MimeType;
    MethodParameters:
           Name  Flags
      mapper     
      mimeTypes  

  public boolean canDecode(org.springframework.core.ResolvableType, org.springframework.util.MimeType);
    descriptor: (Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
        start local 1 // org.springframework.core.ResolvableType elementType
        start local 2 // org.springframework.util.MimeType mimeType
         0: .line 79
            aload 0 /* this */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.getObjectMapper:()Lcom/fasterxml/jackson/databind/ObjectMapper;
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.getTypeFactory:()Lcom/fasterxml/jackson/databind/type/TypeFactory;
            aload 1 /* elementType */
            invokevirtual org.springframework.core.ResolvableType.getType:()Ljava/lang/reflect/Type;
            invokevirtual com.fasterxml.jackson.databind.type.TypeFactory.constructType:(Ljava/lang/reflect/Type;)Lcom/fasterxml/jackson/databind/JavaType;
            astore 3 /* javaType */
        start local 3 // com.fasterxml.jackson.databind.JavaType javaType
         1: .line 81
            ldc Ljava/lang/CharSequence;
            aload 1 /* elementType */
            invokevirtual org.springframework.core.ResolvableType.toClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifne 4
         2: .line 82
            aload 0 /* this */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.getObjectMapper:()Lcom/fasterxml/jackson/databind/ObjectMapper;
            aload 3 /* javaType */
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.canDeserialize:(Lcom/fasterxml/jackson/databind/JavaType;)Z
            ifeq 4
            aload 0 /* this */
            aload 2 /* mimeType */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.supportsMimeType:(Lorg/springframework/util/MimeType;)Z
            ifeq 4
         3: .line 81
            iconst_1
            ireturn
      StackMap locals: com.fasterxml.jackson.databind.JavaType
      StackMap stack:
         4: iconst_0
            ireturn
        end local 3 // com.fasterxml.jackson.databind.JavaType javaType
        end local 2 // org.springframework.util.MimeType mimeType
        end local 1 // org.springframework.core.ResolvableType elementType
        end local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/springframework/http/codec/json/AbstractJackson2Decoder;
            0    5     1  elementType  Lorg/springframework/core/ResolvableType;
            0    5     2     mimeType  Lorg/springframework/util/MimeType;
            1    5     3     javaType  Lcom/fasterxml/jackson/databind/JavaType;
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      elementType  
      mimeType     

  public reactor.core.publisher.Flux<java.lang.Object> decode(org.reactivestreams.Publisher<org.springframework.core.io.buffer.DataBuffer>, org.springframework.core.ResolvableType, org.springframework.util.MimeType, java.util.Map<java.lang.String, java.lang.Object>);
    descriptor: (Lorg/reactivestreams/Publisher;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map;)Lreactor/core/publisher/Flux;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
        start local 1 // org.reactivestreams.Publisher input
        start local 2 // org.springframework.core.ResolvableType elementType
        start local 3 // org.springframework.util.MimeType mimeType
        start local 4 // java.util.Map hints
         0: .line 89
            aload 1 /* input */
            invokestatic reactor.core.publisher.Flux.from:(Lorg/reactivestreams/Publisher;)Lreactor/core/publisher/Flux;
            aload 0 /* this */
            getfield org.springframework.http.codec.json.AbstractJackson2Decoder.jsonFactory:Lcom/fasterxml/jackson/core/JsonFactory;
            iconst_1
            invokestatic org.springframework.http.codec.json.Jackson2Tokenizer.tokenize:(Lreactor/core/publisher/Flux;Lcom/fasterxml/jackson/core/JsonFactory;Z)Lreactor/core/publisher/Flux;
            astore 5 /* tokens */
        start local 5 // reactor.core.publisher.Flux tokens
         1: .line 90
            aload 0 /* this */
            aload 5 /* tokens */
            aload 2 /* elementType */
            aload 3 /* mimeType */
            aload 4 /* hints */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.decodeInternal:(Lreactor/core/publisher/Flux;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map;)Lreactor/core/publisher/Flux;
            areturn
        end local 5 // reactor.core.publisher.Flux tokens
        end local 4 // java.util.Map hints
        end local 3 // org.springframework.util.MimeType mimeType
        end local 2 // org.springframework.core.ResolvableType elementType
        end local 1 // org.reactivestreams.Publisher input
        end local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/springframework/http/codec/json/AbstractJackson2Decoder;
            0    2     1        input  Lorg/reactivestreams/Publisher<Lorg/springframework/core/io/buffer/DataBuffer;>;
            0    2     2  elementType  Lorg/springframework/core/ResolvableType;
            0    2     3     mimeType  Lorg/springframework/util/MimeType;
            0    2     4        hints  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
            1    2     5       tokens  Lreactor/core/publisher/Flux<Lcom/fasterxml/jackson/databind/util/TokenBuffer;>;
    Signature: (Lorg/reactivestreams/Publisher<Lorg/springframework/core/io/buffer/DataBuffer;>;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Lreactor/core/publisher/Flux<Ljava/lang/Object;>;
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
      3:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      input        
      elementType  
      mimeType     
      hints        

  public reactor.core.publisher.Mono<java.lang.Object> decodeToMono(org.reactivestreams.Publisher<org.springframework.core.io.buffer.DataBuffer>, org.springframework.core.ResolvableType, org.springframework.util.MimeType, java.util.Map<java.lang.String, java.lang.Object>);
    descriptor: (Lorg/reactivestreams/Publisher;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map;)Lreactor/core/publisher/Mono;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
        start local 1 // org.reactivestreams.Publisher input
        start local 2 // org.springframework.core.ResolvableType elementType
        start local 3 // org.springframework.util.MimeType mimeType
        start local 4 // java.util.Map hints
         0: .line 97
            aload 1 /* input */
            invokestatic reactor.core.publisher.Flux.from:(Lorg/reactivestreams/Publisher;)Lreactor/core/publisher/Flux;
            aload 0 /* this */
            getfield org.springframework.http.codec.json.AbstractJackson2Decoder.jsonFactory:Lcom/fasterxml/jackson/core/JsonFactory;
            iconst_0
            invokestatic org.springframework.http.codec.json.Jackson2Tokenizer.tokenize:(Lreactor/core/publisher/Flux;Lcom/fasterxml/jackson/core/JsonFactory;Z)Lreactor/core/publisher/Flux;
            astore 5 /* tokens */
        start local 5 // reactor.core.publisher.Flux tokens
         1: .line 98
            aload 0 /* this */
            aload 5 /* tokens */
            aload 2 /* elementType */
            aload 3 /* mimeType */
            aload 4 /* hints */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.decodeInternal:(Lreactor/core/publisher/Flux;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map;)Lreactor/core/publisher/Flux;
            invokevirtual reactor.core.publisher.Flux.singleOrEmpty:()Lreactor/core/publisher/Mono;
            areturn
        end local 5 // reactor.core.publisher.Flux tokens
        end local 4 // java.util.Map hints
        end local 3 // org.springframework.util.MimeType mimeType
        end local 2 // org.springframework.core.ResolvableType elementType
        end local 1 // org.reactivestreams.Publisher input
        end local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/springframework/http/codec/json/AbstractJackson2Decoder;
            0    2     1        input  Lorg/reactivestreams/Publisher<Lorg/springframework/core/io/buffer/DataBuffer;>;
            0    2     2  elementType  Lorg/springframework/core/ResolvableType;
            0    2     3     mimeType  Lorg/springframework/util/MimeType;
            0    2     4        hints  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
            1    2     5       tokens  Lreactor/core/publisher/Flux<Lcom/fasterxml/jackson/databind/util/TokenBuffer;>;
    Signature: (Lorg/reactivestreams/Publisher<Lorg/springframework/core/io/buffer/DataBuffer;>;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Lreactor/core/publisher/Mono<Ljava/lang/Object;>;
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
      3:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      input        
      elementType  
      mimeType     
      hints        

  private reactor.core.publisher.Flux<java.lang.Object> decodeInternal(reactor.core.publisher.Flux<com.fasterxml.jackson.databind.util.TokenBuffer>, org.springframework.core.ResolvableType, org.springframework.util.MimeType, java.util.Map<java.lang.String, java.lang.Object>);
    descriptor: (Lreactor/core/publisher/Flux;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map;)Lreactor/core/publisher/Flux;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=5
        start local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
        start local 1 // reactor.core.publisher.Flux tokens
        start local 2 // org.springframework.core.ResolvableType elementType
        start local 3 // org.springframework.util.MimeType mimeType
        start local 4 // java.util.Map hints
         0: .line 104
            aload 1 /* tokens */
            ldc "'tokens' must not be null"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         1: .line 105
            aload 2 /* elementType */
            ldc "'elementType' must not be null"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         2: .line 107
            aload 0 /* this */
            aload 2 /* elementType */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.getParameter:(Lorg/springframework/core/ResolvableType;)Lorg/springframework/core/MethodParameter;
            astore 5 /* param */
        start local 5 // org.springframework.core.MethodParameter param
         3: .line 108
            aload 5 /* param */
            ifnull 4
            aload 5 /* param */
            invokevirtual org.springframework.core.MethodParameter.getContainingClass:()Ljava/lang/Class;
            goto 5
      StackMap locals: org.springframework.core.MethodParameter
      StackMap stack:
         4: aconst_null
      StackMap locals:
      StackMap stack: java.lang.Class
         5: astore 6 /* contextClass */
        start local 6 // java.lang.Class contextClass
         6: .line 109
            aload 0 /* this */
            aload 2 /* elementType */
            invokevirtual org.springframework.core.ResolvableType.getType:()Ljava/lang/reflect/Type;
            aload 6 /* contextClass */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.getJavaType:(Ljava/lang/reflect/Type;Ljava/lang/Class;)Lcom/fasterxml/jackson/databind/JavaType;
            astore 7 /* javaType */
        start local 7 // com.fasterxml.jackson.databind.JavaType javaType
         7: .line 110
            aload 4 /* hints */
            ifnull 8
            aload 4 /* hints */
            getstatic org.springframework.http.codec.json.Jackson2CodecSupport.JSON_VIEW_HINT:Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Class
            goto 9
      StackMap locals: java.lang.Class com.fasterxml.jackson.databind.JavaType
      StackMap stack:
         8: aconst_null
      StackMap locals:
      StackMap stack: java.lang.Class
         9: astore 8 /* jsonView */
        start local 8 // java.lang.Class jsonView
        10: .line 112
            aload 8 /* jsonView */
            ifnull 12
        11: .line 113
            aload 0 /* this */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.getObjectMapper:()Lcom/fasterxml/jackson/databind/ObjectMapper;
            aload 8 /* jsonView */
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.readerWithView:(Ljava/lang/Class;)Lcom/fasterxml/jackson/databind/ObjectReader;
            aload 7 /* javaType */
            invokevirtual com.fasterxml.jackson.databind.ObjectReader.forType:(Lcom/fasterxml/jackson/databind/JavaType;)Lcom/fasterxml/jackson/databind/ObjectReader;
            goto 13
        12: .line 114
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.getObjectMapper:()Lcom/fasterxml/jackson/databind/ObjectMapper;
            aload 7 /* javaType */
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.readerFor:(Lcom/fasterxml/jackson/databind/JavaType;)Lcom/fasterxml/jackson/databind/ObjectReader;
        13: .line 112
      StackMap locals:
      StackMap stack: com.fasterxml.jackson.databind.ObjectReader
            astore 9 /* reader */
        start local 9 // com.fasterxml.jackson.databind.ObjectReader reader
        14: .line 116
            aload 1 /* tokens */
            aload 0 /* this */
            aload 9 /* reader */
            aload 4 /* hints */
            invokedynamic apply(Lorg/springframework/http/codec/json/AbstractJackson2Decoder;Lcom/fasterxml/jackson/databind/ObjectReader;Ljava/util/Map;)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;
                  org/springframework/http/codec/json/AbstractJackson2Decoder.lambda$0(Lcom/fasterxml/jackson/databind/ObjectReader;Ljava/util/Map;Lcom/fasterxml/jackson/databind/util/TokenBuffer;)Lorg/reactivestreams/Publisher; (7)
                  (Lcom/fasterxml/jackson/databind/util/TokenBuffer;)Lorg/reactivestreams/Publisher;
            invokevirtual reactor.core.publisher.Flux.flatMap:(Ljava/util/function/Function;)Lreactor/core/publisher/Flux;
            areturn
        end local 9 // com.fasterxml.jackson.databind.ObjectReader reader
        end local 8 // java.lang.Class jsonView
        end local 7 // com.fasterxml.jackson.databind.JavaType javaType
        end local 6 // java.lang.Class contextClass
        end local 5 // org.springframework.core.MethodParameter param
        end local 4 // java.util.Map hints
        end local 3 // org.springframework.util.MimeType mimeType
        end local 2 // org.springframework.core.ResolvableType elementType
        end local 1 // reactor.core.publisher.Flux tokens
        end local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Lorg/springframework/http/codec/json/AbstractJackson2Decoder;
            0   15     1        tokens  Lreactor/core/publisher/Flux<Lcom/fasterxml/jackson/databind/util/TokenBuffer;>;
            0   15     2   elementType  Lorg/springframework/core/ResolvableType;
            0   15     3      mimeType  Lorg/springframework/util/MimeType;
            0   15     4         hints  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
            3   15     5         param  Lorg/springframework/core/MethodParameter;
            6   15     6  contextClass  Ljava/lang/Class<*>;
            7   15     7      javaType  Lcom/fasterxml/jackson/databind/JavaType;
           10   15     8      jsonView  Ljava/lang/Class<*>;
           14   15     9        reader  Lcom/fasterxml/jackson/databind/ObjectReader;
    Signature: (Lreactor/core/publisher/Flux<Lcom/fasterxml/jackson/databind/util/TokenBuffer;>;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Lreactor/core/publisher/Flux<Ljava/lang/Object;>;
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
      2:
        org.springframework.lang.Nullable()
      3:
        org.springframework.lang.Nullable()
    MethodParameters:
             Name  Flags
      tokens       
      elementType  
      mimeType     
      hints        

  public java.util.Map<java.lang.String, java.lang.Object> getDecodeHints(org.springframework.core.ResolvableType, org.springframework.core.ResolvableType, org.springframework.http.server.reactive.ServerHttpRequest, org.springframework.http.server.reactive.ServerHttpResponse);
    descriptor: (Lorg/springframework/core/ResolvableType;Lorg/springframework/core/ResolvableType;Lorg/springframework/http/server/reactive/ServerHttpRequest;Lorg/springframework/http/server/reactive/ServerHttpResponse;)Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
        start local 1 // org.springframework.core.ResolvableType actualType
        start local 2 // org.springframework.core.ResolvableType elementType
        start local 3 // org.springframework.http.server.reactive.ServerHttpRequest request
        start local 4 // org.springframework.http.server.reactive.ServerHttpResponse response
         0: .line 146
            aload 0 /* this */
            aload 1 /* actualType */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.getHints:(Lorg/springframework/core/ResolvableType;)Ljava/util/Map;
            areturn
        end local 4 // org.springframework.http.server.reactive.ServerHttpResponse response
        end local 3 // org.springframework.http.server.reactive.ServerHttpRequest request
        end local 2 // org.springframework.core.ResolvableType elementType
        end local 1 // org.springframework.core.ResolvableType actualType
        end local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/http/codec/json/AbstractJackson2Decoder;
            0    1     1   actualType  Lorg/springframework/core/ResolvableType;
            0    1     2  elementType  Lorg/springframework/core/ResolvableType;
            0    1     3      request  Lorg/springframework/http/server/reactive/ServerHttpRequest;
            0    1     4     response  Lorg/springframework/http/server/reactive/ServerHttpResponse;
    Signature: (Lorg/springframework/core/ResolvableType;Lorg/springframework/core/ResolvableType;Lorg/springframework/http/server/reactive/ServerHttpRequest;Lorg/springframework/http/server/reactive/ServerHttpResponse;)Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
    MethodParameters:
             Name  Flags
      actualType   
      elementType  
      request      
      response     

  public java.util.List<org.springframework.util.MimeType> getDecodableMimeTypes();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
         0: .line 151
            aload 0 /* this */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.getMimeTypes:()Ljava/util/List;
            areturn
        end local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/http/codec/json/AbstractJackson2Decoder;
    Signature: ()Ljava/util/List<Lorg/springframework/util/MimeType;>;

  protected <A extends java.lang.annotation.Annotation> A getAnnotation(org.springframework.core.MethodParameter, java.lang.Class<A>);
    descriptor: (Lorg/springframework/core/MethodParameter;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
        start local 1 // org.springframework.core.MethodParameter parameter
        start local 2 // java.lang.Class annotType
         0: .line 158
            aload 1 /* parameter */
            aload 2 /* annotType */
            invokevirtual org.springframework.core.MethodParameter.getParameterAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            areturn
        end local 2 // java.lang.Class annotType
        end local 1 // org.springframework.core.MethodParameter parameter
        end local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/springframework/http/codec/json/AbstractJackson2Decoder;
            0    1     1  parameter  Lorg/springframework/core/MethodParameter;
            0    1     2  annotType  Ljava/lang/Class<TA;>;
    Signature: <A::Ljava/lang/annotation/Annotation;>(Lorg/springframework/core/MethodParameter;Ljava/lang/Class<TA;>;)TA;
    MethodParameters:
           Name  Flags
      parameter  
      annotType  

  private org.reactivestreams.Publisher lambda$0(com.fasterxml.jackson.databind.ObjectReader, java.util.Map, com.fasterxml.jackson.databind.util.TokenBuffer);
    descriptor: (Lcom/fasterxml/jackson/databind/ObjectReader;Ljava/util/Map;Lcom/fasterxml/jackson/databind/util/TokenBuffer;)Lorg/reactivestreams/Publisher;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
        start local 3 // com.fasterxml.jackson.databind.util.TokenBuffer tokenBuffer
         0: .line 118
            aload 1
            aload 3 /* tokenBuffer */
            aload 0 /* this */
            invokevirtual org.springframework.http.codec.json.AbstractJackson2Decoder.getObjectMapper:()Lcom/fasterxml/jackson/databind/ObjectMapper;
            invokevirtual com.fasterxml.jackson.databind.util.TokenBuffer.asParser:(Lcom/fasterxml/jackson/core/ObjectCodec;)Lcom/fasterxml/jackson/core/JsonParser;
            invokevirtual com.fasterxml.jackson.databind.ObjectReader.readValue:(Lcom/fasterxml/jackson/core/JsonParser;)Ljava/lang/Object;
            astore 4 /* value */
        start local 4 // java.lang.Object value
         1: .line 119
            aload 2
            invokestatic org.springframework.core.codec.Hints.isLoggingSuppressed:(Ljava/util/Map;)Z
            ifne 3
         2: .line 120
            aload 0 /* this */
            getfield org.springframework.http.codec.json.AbstractJackson2Decoder.logger:Lorg/apache/commons/logging/Log;
            aload 4 /* value */
            aload 2
            invokedynamic apply(Ljava/lang/Object;Ljava/util/Map;)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;
                  org/springframework/http/codec/json/AbstractJackson2Decoder.lambda$1(Ljava/lang/Object;Ljava/util/Map;Ljava/lang/Boolean;)Ljava/lang/String; (6)
                  (Ljava/lang/Boolean;)Ljava/lang/String;
            invokestatic org.springframework.core.log.LogFormatUtils.traceDebug:(Lorg/apache/commons/logging/Log;Ljava/util/function/Function;)V
         3: .line 125
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 4 /* value */
            invokestatic reactor.core.publisher.Mono.justOrEmpty:(Ljava/lang/Object;)Lreactor/core/publisher/Mono;
         4: areturn
        end local 4 // java.lang.Object value
         5: .line 127
      StackMap locals: org.springframework.http.codec.json.AbstractJackson2Decoder com.fasterxml.jackson.databind.ObjectReader java.util.Map com.fasterxml.jackson.databind.util.TokenBuffer
      StackMap stack: com.fasterxml.jackson.databind.exc.InvalidDefinitionException
            astore 4 /* ex */
        start local 4 // com.fasterxml.jackson.databind.exc.InvalidDefinitionException ex
         6: .line 128
            new org.springframework.core.codec.CodecException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Type definition error: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* ex */
            invokevirtual com.fasterxml.jackson.databind.exc.InvalidDefinitionException.getType:()Lcom/fasterxml/jackson/databind/JavaType;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* ex */
            invokespecial org.springframework.core.codec.CodecException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
            areturn
        end local 4 // com.fasterxml.jackson.databind.exc.InvalidDefinitionException ex
         7: .line 130
      StackMap locals:
      StackMap stack: com.fasterxml.jackson.core.JsonProcessingException
            astore 4 /* ex */
        start local 4 // com.fasterxml.jackson.core.JsonProcessingException ex
         8: .line 131
            new org.springframework.core.codec.DecodingException
            dup
            new java.lang.StringBuilder
            dup
            ldc "JSON decoding error: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* ex */
            invokevirtual com.fasterxml.jackson.core.JsonProcessingException.getOriginalMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* ex */
            invokespecial org.springframework.core.codec.DecodingException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
            areturn
        end local 4 // com.fasterxml.jackson.core.JsonProcessingException ex
         9: .line 133
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 4 /* ex */
        start local 4 // java.io.IOException ex
        10: .line 134
            new org.springframework.core.codec.DecodingException
            dup
            ldc "I/O error while parsing input stream"
            aload 4 /* ex */
            invokespecial org.springframework.core.codec.DecodingException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
            areturn
        end local 4 // java.io.IOException ex
        end local 3 // com.fasterxml.jackson.databind.util.TokenBuffer tokenBuffer
        end local 0 // org.springframework.http.codec.json.AbstractJackson2Decoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lorg/springframework/http/codec/json/AbstractJackson2Decoder;
            0   11     3  tokenBuffer  Lcom/fasterxml/jackson/databind/util/TokenBuffer;
            1    5     4        value  Ljava/lang/Object;
            6    7     4           ex  Lcom/fasterxml/jackson/databind/exc/InvalidDefinitionException;
            8    9     4           ex  Lcom/fasterxml/jackson/core/JsonProcessingException;
           10   11     4           ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     4       5  Class com.fasterxml.jackson.databind.exc.InvalidDefinitionException
           0     4       7  Class com.fasterxml.jackson.core.JsonProcessingException
           0     4       9  Class java.io.IOException

  private static java.lang.String lambda$1(java.lang.Object, java.util.Map, java.lang.Boolean);
    descriptor: (Ljava/lang/Object;Ljava/util/Map;Ljava/lang/Boolean;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=3
        start local 2 // java.lang.Boolean traceOn
         0: .line 121
            aload 0
            aload 2 /* traceOn */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack: java.lang.Object
         1: iconst_1
      StackMap locals: java.lang.Object java.util.Map java.lang.Boolean
      StackMap stack: java.lang.Object int
         2: invokestatic org.springframework.core.log.LogFormatUtils.formatValue:(Ljava/lang/Object;Z)Ljava/lang/String;
            astore 3 /* formatted */
        start local 3 // java.lang.String formatted
         3: .line 122
            new java.lang.StringBuilder
            dup
            aload 1
            invokestatic org.springframework.core.codec.Hints.getLogPrefix:(Ljava/util/Map;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "Decoded ["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* formatted */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.String formatted
        end local 2 // java.lang.Boolean traceOn
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     2    traceOn  Ljava/lang/Boolean;
            3    4     3  formatted  Ljava/lang/String;
}
Signature: Lorg/springframework/http/codec/json/Jackson2CodecSupport;Lorg/springframework/http/codec/HttpMessageDecoder<Ljava/lang/Object;>;
SourceFile: "AbstractJackson2Decoder.java"
InnerClasses:
  public final Feature = com.fasterxml.jackson.core.JsonFactory$Feature of com.fasterxml.jackson.core.JsonFactory
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles