public class com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver extends com.fasterxml.jackson.databind.jsontype.impl.TypeIdResolverBase
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver
super_class: com.fasterxml.jackson.databind.jsontype.impl.TypeIdResolverBase
{
private static final java.lang.String JAVA_UTIL_PKG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "java.util."
public void <init>(com.fasterxml.jackson.databind.JavaType, com.fasterxml.jackson.databind.type.TypeFactory);
descriptor: (Lcom/fasterxml/jackson/databind/JavaType;Lcom/fasterxml/jackson/databind/type/TypeFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial com.fasterxml.jackson.databind.jsontype.impl.TypeIdResolverBase.<init>:(Lcom/fasterxml/jackson/databind/JavaType;Lcom/fasterxml/jackson/databind/type/TypeFactory;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/fasterxml/jackson/databind/jsontype/impl/ClassNameIdResolver;
0 2 1 baseType Lcom/fasterxml/jackson/databind/JavaType;
0 2 2 typeFactory Lcom/fasterxml/jackson/databind/type/TypeFactory;
MethodParameters:
Name Flags
baseType
typeFactory
public com.fasterxml.jackson.annotation.JsonTypeInfo$Id getMechanism();
descriptor: ()Lcom/fasterxml/jackson/annotation/JsonTypeInfo$Id;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic com.fasterxml.jackson.annotation.JsonTypeInfo$Id.CLASS:Lcom/fasterxml/jackson/annotation/JsonTypeInfo$Id;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/databind/jsontype/impl/ClassNameIdResolver;
public void registerSubtype(java.lang.Class<?>, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=3, args_size=3
start local 0 start local 1 start local 2 0: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/databind/jsontype/impl/ClassNameIdResolver;
0 1 1 type Ljava/lang/Class<*>;
0 1 2 name Ljava/lang/String;
Signature: (Ljava/lang/Class<*>;Ljava/lang/String;)V
MethodParameters:
Name Flags
type
name
public java.lang.String idFromValue(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 0
getfield com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver._typeFactory:Lcom/fasterxml/jackson/databind/type/TypeFactory;
invokevirtual com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver._idFrom:(Ljava/lang/Object;Ljava/lang/Class;Lcom/fasterxml/jackson/databind/type/TypeFactory;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/databind/jsontype/impl/ClassNameIdResolver;
0 1 1 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
public java.lang.String idFromValueAndType(, java.lang.Class<?>);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aload 0
getfield com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver._typeFactory:Lcom/fasterxml/jackson/databind/type/TypeFactory;
invokevirtual com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver._idFrom:(Ljava/lang/Object;Ljava/lang/Class;Lcom/fasterxml/jackson/databind/type/TypeFactory;)Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/databind/jsontype/impl/ClassNameIdResolver;
0 1 1 value Ljava/lang/Object;
0 1 2 type Ljava/lang/Class<*>;
Signature: (Ljava/lang/Object;Ljava/lang/Class<*>;)Ljava/lang/String;
MethodParameters:
Name Flags
value
type
public com.fasterxml.jackson.databind.JavaType typeFromId(com.fasterxml.jackson.databind.DatabindContext, java.lang.String);
descriptor: (Lcom/fasterxml/jackson/databind/DatabindContext;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JavaType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
aload 1
invokevirtual com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver._typeFromId:(Ljava/lang/String;Lcom/fasterxml/jackson/databind/DatabindContext;)Lcom/fasterxml/jackson/databind/JavaType;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/databind/jsontype/impl/ClassNameIdResolver;
0 1 1 context Lcom/fasterxml/jackson/databind/DatabindContext;
0 1 2 id Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
context
id
protected com.fasterxml.jackson.databind.JavaType _typeFromId(java.lang.String, com.fasterxml.jackson.databind.DatabindContext);
descriptor: (Ljava/lang/String;Lcom/fasterxml/jackson/databind/DatabindContext;)Lcom/fasterxml/jackson/databind/JavaType;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
getfield com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver._baseType:Lcom/fasterxml/jackson/databind/JavaType;
aload 1
invokevirtual com.fasterxml.jackson.databind.DatabindContext.resolveSubType:(Lcom/fasterxml/jackson/databind/JavaType;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JavaType;
astore 3
start local 3 1: aload 3
ifnonnull 4
2: aload 2
instanceof com.fasterxml.jackson.databind.DeserializationContext
ifeq 4
3: aload 2
checkcast com.fasterxml.jackson.databind.DeserializationContext
aload 0
getfield com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver._baseType:Lcom/fasterxml/jackson/databind/JavaType;
aload 1
aload 0
ldc "no such class found"
invokevirtual com.fasterxml.jackson.databind.DeserializationContext.handleUnknownTypeId:(Lcom/fasterxml/jackson/databind/JavaType;Ljava/lang/String;Lcom/fasterxml/jackson/databind/jsontype/TypeIdResolver;Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JavaType;
areturn
4: StackMap locals: com.fasterxml.jackson.databind.JavaType
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/fasterxml/jackson/databind/jsontype/impl/ClassNameIdResolver;
0 5 1 id Ljava/lang/String;
0 5 2 ctxt Lcom/fasterxml/jackson/databind/DatabindContext;
1 5 3 t Lcom/fasterxml/jackson/databind/JavaType;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
id
ctxt
protected java.lang.String _idFrom(, java.lang.Class<?>, com.fasterxml.jackson.databind.type.TypeFactory);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;Lcom/fasterxml/jackson/databind/type/TypeFactory;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: ldc Ljava/lang/Enum;
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 3
1: aload 2
invokevirtual java.lang.Class.isEnum:()Z
ifne 3
2: aload 2
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 2
3: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 4
start local 4 4: aload 4
ldc "java.util."
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 14
5: aload 1
instanceof java.util.EnumSet
ifeq 9
6: aload 1
checkcast java.util.EnumSet
invokestatic com.fasterxml.jackson.databind.util.ClassUtil.findEnumType:(Ljava/util/EnumSet;)Ljava/lang/Class;
astore 5
start local 5 7: aload 3
ldc Ljava/util/EnumSet;
aload 5
invokevirtual com.fasterxml.jackson.databind.type.TypeFactory.constructCollectionType:(Ljava/lang/Class;Ljava/lang/Class;)Lcom/fasterxml/jackson/databind/type/CollectionType;
invokevirtual com.fasterxml.jackson.databind.type.CollectionType.toCanonical:()Ljava/lang/String;
astore 4
end local 5 8: goto 21
StackMap locals: java.lang.String
StackMap stack:
9: aload 1
instanceof java.util.EnumMap
ifeq 21
10: aload 1
checkcast java.util.EnumMap
invokestatic com.fasterxml.jackson.databind.util.ClassUtil.findEnumType:(Ljava/util/EnumMap;)Ljava/lang/Class;
astore 5
start local 5 11: ldc Ljava/lang/Object;
astore 6
start local 6 12: aload 3
ldc Ljava/util/EnumMap;
aload 5
aload 6
invokevirtual com.fasterxml.jackson.databind.type.TypeFactory.constructMapType:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;)Lcom/fasterxml/jackson/databind/type/MapType;
invokevirtual com.fasterxml.jackson.databind.type.MapType.toCanonical:()Ljava/lang/String;
astore 4
end local 6 end local 5 13: goto 21
StackMap locals:
StackMap stack:
14: aload 4
bipush 36
invokevirtual java.lang.String.indexOf:(I)I
iflt 21
15: aload 2
invokestatic com.fasterxml.jackson.databind.util.ClassUtil.getOuterClass:(Ljava/lang/Class;)Ljava/lang/Class;
astore 5
start local 5 16: aload 5
ifnull 21
17: aload 0
getfield com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver._baseType:Lcom/fasterxml/jackson/databind/JavaType;
invokevirtual com.fasterxml.jackson.databind.JavaType.getRawClass:()Ljava/lang/Class;
astore 6
start local 6 18: aload 6
invokestatic com.fasterxml.jackson.databind.util.ClassUtil.getOuterClass:(Ljava/lang/Class;)Ljava/lang/Class;
ifnonnull 21
19: aload 0
getfield com.fasterxml.jackson.databind.jsontype.impl.ClassNameIdResolver._baseType:Lcom/fasterxml/jackson/databind/JavaType;
invokevirtual com.fasterxml.jackson.databind.JavaType.getRawClass:()Ljava/lang/Class;
astore 2
20: aload 2
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 4
end local 6 end local 5 21: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/fasterxml/jackson/databind/jsontype/impl/ClassNameIdResolver;
0 22 1 value Ljava/lang/Object;
0 22 2 cls Ljava/lang/Class<*>;
0 22 3 typeFactory Lcom/fasterxml/jackson/databind/type/TypeFactory;
4 22 4 str Ljava/lang/String;
7 8 5 enumClass Ljava/lang/Class<*>;
11 13 5 enumClass Ljava/lang/Class<*>;
12 13 6 valueClass Ljava/lang/Class<*>;
16 21 5 outer Ljava/lang/Class<*>;
18 21 6 staticType Ljava/lang/Class<*>;
Signature: (Ljava/lang/Object;Ljava/lang/Class<*>;Lcom/fasterxml/jackson/databind/type/TypeFactory;)Ljava/lang/String;
MethodParameters:
Name Flags
value
cls
typeFactory
public java.lang.String getDescForKnownTypeIds();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "class name used as type id"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/databind/jsontype/impl/ClassNameIdResolver;
}
SourceFile: "ClassNameIdResolver.java"
InnerClasses:
public final Id = com.fasterxml.jackson.annotation.JsonTypeInfo$Id of com.fasterxml.jackson.annotation.JsonTypeInfo