Class EnumResolver
- java.lang.Object
-
- com.fasterxml.jackson.databind.util.EnumResolver
-
- All Implemented Interfaces:
java.io.Serializable
public class EnumResolver extends java.lang.Object implements java.io.Serializable
Helper class used to resolve String values (either JSON Object field names or regular String values) into Java Enum instances.- See Also:
- Serialized Form
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static EnumResolver
constructFor(DeserializationConfig config, java.lang.Class<?> enumCls)
Factory method for constructing resolver that maps from Enum.name() into Enum value.CompactStringObjectMap
constructLookup()
static EnumResolver
constructUsingEnumNamingStrategy(DeserializationConfig config, java.lang.Class<?> enumCls, EnumNamingStrategy enumNamingStrategy)
Factory method for constructing resolver that maps the name of enums converted to external property names into Enum value using an implementation ofEnumNamingStrategy
.static EnumResolver
constructUsingIndex(DeserializationConfig config, java.lang.Class<java.lang.Enum<?>> enumCls)
Factory method for constructing resolver that maps from index of Enum.values() into Enum valuestatic EnumResolver
constructUsingMethod(DeserializationConfig config, java.lang.Class<?> enumCls, AnnotatedMember accessor)
Method used when actual String serialization is indicated using @JsonValue on a method in Enum class.static EnumResolver
constructUsingToString(DeserializationConfig config, java.lang.Class<?> enumCls)
Factory method for constructing resolver that maps from Enum.toString() into Enum valuejava.lang.Enum<?>
findEnum(java.lang.String key)
java.lang.Enum<?>
getDefaultValue()
java.lang.Enum<?>
getEnum(int index)
java.lang.Class<java.lang.Enum<?>>
getEnumClass()
java.util.Collection<java.lang.String>
getEnumIds()
java.util.List<java.lang.Enum<?>>
getEnums()
java.lang.Enum<?>[]
getRawEnums()
boolean
isFromIntValue()
Accessor for checking if we have a special case in which value to map is from@JsonValue
annotated accessor with integral type: this matters for cases where incoming content value is of integral type and should be mapped to specific value and NOT toEnum.index()
.int
lastValidIndex()
-
-
-
Method Detail
-
constructFor
public static EnumResolver constructFor(DeserializationConfig config, java.lang.Class<?> enumCls)
Factory method for constructing resolver that maps from Enum.name() into Enum value.- Since:
- 2.12
-
constructUsingToString
public static EnumResolver constructUsingToString(DeserializationConfig config, java.lang.Class<?> enumCls)
Factory method for constructing resolver that maps from Enum.toString() into Enum value- Since:
- 2.12
-
constructUsingIndex
public static EnumResolver constructUsingIndex(DeserializationConfig config, java.lang.Class<java.lang.Enum<?>> enumCls)
Factory method for constructing resolver that maps from index of Enum.values() into Enum value- Since:
- 2.15
-
constructUsingEnumNamingStrategy
public static EnumResolver constructUsingEnumNamingStrategy(DeserializationConfig config, java.lang.Class<?> enumCls, EnumNamingStrategy enumNamingStrategy)
Factory method for constructing resolver that maps the name of enums converted to external property names into Enum value using an implementation ofEnumNamingStrategy
. The outputEnumResolver
should contain values that are symmetric toEnumValues.constructUsingEnumNamingStrategy(MapperConfig, Class, EnumNamingStrategy)
.- Since:
- 2.15
-
constructUsingMethod
public static EnumResolver constructUsingMethod(DeserializationConfig config, java.lang.Class<?> enumCls, AnnotatedMember accessor)
Method used when actual String serialization is indicated using @JsonValue on a method in Enum class.- Since:
- 2.12
-
constructLookup
public CompactStringObjectMap constructLookup()
-
findEnum
public java.lang.Enum<?> findEnum(java.lang.String key)
-
getEnum
public java.lang.Enum<?> getEnum(int index)
-
getDefaultValue
public java.lang.Enum<?> getDefaultValue()
-
getRawEnums
public java.lang.Enum<?>[] getRawEnums()
-
getEnums
public java.util.List<java.lang.Enum<?>> getEnums()
-
getEnumIds
public java.util.Collection<java.lang.String> getEnumIds()
- Since:
- 2.7.3
-
getEnumClass
public java.lang.Class<java.lang.Enum<?>> getEnumClass()
-
lastValidIndex
public int lastValidIndex()
-
isFromIntValue
public boolean isFromIntValue()
Accessor for checking if we have a special case in which value to map is from@JsonValue
annotated accessor with integral type: this matters for cases where incoming content value is of integral type and should be mapped to specific value and NOT toEnum.index()
.- Since:
- 2.13
-
-