Package com.fasterxml.jackson.databind
Class EnumNamingStrategies.SnakeCaseStrategy
java.lang.Object
com.fasterxml.jackson.databind.EnumNamingStrategies.DelegatingEnumNamingStrategy
com.fasterxml.jackson.databind.EnumNamingStrategies.SnakeCaseStrategy
- All Implemented Interfaces:
EnumNamingStrategy
- Enclosing class:
EnumNamingStrategies
public static class EnumNamingStrategies.SnakeCaseStrategy
extends EnumNamingStrategies.DelegatingEnumNamingStrategy
An implementation of EnumNamingStrategy that converts enum names in the typical upper
snake case format to upper camel case format.
This implementation first normalizes to lower camel case using (see EnumNamingStrategies.LowerCamelCaseStrategy for details)
and then uses PropertyNamingStrategies.SnakeCaseStrategy to finish converting the name.
WARNING: Naming conversion conflicts caused by underscore usage should be handled by client.
e.g. Both PEANUT_BUTTER, PEANUT__BUTTER are converted into "peanut_butter".
And "peanut_butter" will be deserialized into enum with smaller Enum.ordinal() value.
This results in the following example conversions:
- "USER_NAME" is converted into "user_name"
- "USER______NAME" is converted into "user_name"
- "USERNAME" is converted into "username"
- "User__Name" is converted into "user_name"
- "_user_name" is converted into "user_name"
- "_user_name_s" is converted into "user_name_s"
- "__Username" is converted into "username"
- "__username" is converted into "username"
- "username" is converted into "username"
- "Username" is converted into "username"
- Since:
- 2.19
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final EnumNamingStrategies.SnakeCaseStrategyAn instance ofEnumNamingStrategies.SnakeCaseStrategyfor reuse. -
Method Summary
Methods inherited from class com.fasterxml.jackson.databind.EnumNamingStrategies.DelegatingEnumNamingStrategy
convertEnumToExternalName
-
Field Details
-
INSTANCE
An instance ofEnumNamingStrategies.SnakeCaseStrategyfor reuse.- Since:
- 2.19
-