Top Description Inners Constructors Methods
com.fasterxml.jackson.databind

public Class EnumNamingStrategies

extends Object
Class Inheritance

A container class for implementations of the EnumNamingStrategy interface.
Since
2.15

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
EnumNamingStrategies.CamelCaseStrategy

An implementation of EnumNamingStrategy that converts enum names in the typical upper snake case format to camel case format.

Constructor Summary

AccessConstructor and Description
private

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

EnumNamingStrategiesback to summary
private EnumNamingStrategies()
com.fasterxml.jackson.databind back to summary

public Class EnumNamingStrategies.CamelCaseStrategy

extends Object
implements EnumNamingStrategy
Class Inheritance
  • java.lang.Object
  • com.fasterxml.jackson.databind.EnumNamingStrategies.CamelCaseStrategy
All Implemented Interfaces
com.fasterxml.jackson.databind.EnumNamingStrategy

An implementation of EnumNamingStrategy that converts enum names in the typical upper snake case format to camel case format. This implementation follows three rules described below.

  1. converts any character preceded by an underscore into upper case character, regardless of its original case (upper or lower).
  2. converts any character NOT preceded by an underscore into a lower case character, regardless of its original case (upper or lower).
  3. converts contiguous sequence of underscores into a single underscore.

Warning

Naming conversion conflicts caused by underscore usage should be handled by client. e.g. Both PEANUT_BUTTER, PEANUT__BUTTER are converted into "peanutButter". And "peanutButter" will be deserialized into enum with smaller Enum.ordinal() value.

These rules result in the following example conversions from upper snakecase names to camelcase names.

Since
2.15

Field Summary

Modifier and TypeField and Description
public static final EnumNamingStrategies.CamelCaseStrategy
INSTANCE

An intance of CamelCaseStrategy for reuse.

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private static char
private static char
public String
convertEnumToExternalName(String
the name of the enum value to translate
enumName
)

Implements com.fasterxml.jackson.databind.EnumNamingStrategy.convertEnumToExternalName.

Translates the given enumName into an external property name according to the implementation of this EnumNamingStrategy.
private static int
indexIn(CharSequence sequence, int start)

private static String
private static String
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

INSTANCEback to summary
public static final EnumNamingStrategies.CamelCaseStrategy INSTANCE

An intance of CamelCaseStrategy for reuse.

Since
2.15

Constructor Detail

CamelCaseStrategyback to summary
public CamelCaseStrategy()

Method Detail

charToLowerCaseIfUpperback to summary
private static char charToLowerCaseIfUpper(char c)
charToUpperCaseIfLowerback to summary
private static char charToUpperCaseIfLower(char c)
convertEnumToExternalNameback to summary
public String convertEnumToExternalName(String enumName)

Implements com.fasterxml.jackson.databind.EnumNamingStrategy.convertEnumToExternalName.

Doc from com.fasterxml.jackson.databind.EnumNamingStrategy.convertEnumToExternalName.

Translates the given enumName into an external property name according to the implementation of this EnumNamingStrategy.

Parameters
enumName:String

the name of the enum value to translate

Returns:String

the external property name that corresponds to the given enumName according to the implementation of this EnumNamingStrategy.

Annotations
@Override
Since
2.15
indexInback to summary
private static int indexIn(CharSequence sequence, int start)
normalizeWordback to summary
private static String normalizeWord(String word)
toLowerCaseback to summary
private static String toLowerCase(String string)