com.fasterxml.jackson.databind.ser.std

## Class StdKeySerializers.EnumKeySerializer

- java.lang.Object
- - com.fasterxml.jackson.databind.JsonSerializer<T>
  - - com.fasterxml.jackson.databind.ser.std.StdSerializer<Object>
    - - com.fasterxml.jackson.databind.ser.std.StdKeySerializers.EnumKeySerializer

All Implemented Interfaces:
  JsonFormatVisitable, SchemaAware, Serializable

Enclosing class:
  StdKeySerializers

    public static class StdKeySerializers.EnumKeySerializer
    extends StdSerializer<Object>

Specialized instance to use for Enum keys, as per [databind#1322]

Since:
  2.8
See Also:
  Serialized Form

### Nested Class Summary

### Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonSerializer

`JsonSerializer.None`

### Field Summary

Fields
`protected EnumValues` `_values`
`protected EnumValues` `_valuesByEnumNaming` Map with key as converted property class defined implementation of `EnumNamingStrategy` and with value as Enum names collected using `Enum.name()`.

### Fields inherited from class com.fasterxml.jackson.databind.ser.std.StdSerializer

`_handledType`

### Constructor Summary

Constructors
`protected` `EnumKeySerializer(Class<?> enumType, EnumValues values)`
`protected` `EnumKeySerializer(Class<?> enumType, EnumValues values, EnumValues valuesByEnumNaming)`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static StdKeySerializers.EnumKeySerializer` `construct(Class<?> enumType, EnumValues enumValues)`
`static StdKeySerializers.EnumKeySerializer` `construct(Class<?> enumType, EnumValues enumValues, EnumValues valuesByEnumNaming)`
`void` `serialize(Object value, com.fasterxml.jackson.core.JsonGenerator g, SerializerProvider serializers)` Method that can be called to ask implementation to serialize values of type this serializer handles.

### Methods inherited from class com.fasterxml.jackson.databind.ser.std.StdSerializer

`_neitherNull, _nonEmpty, acceptJsonFormatVisitor, createSchemaNode, createSchemaNode, findAnnotatedContentSerializer, findContextualConvertingSerializer, findConvertingContentSerializer, findFormatFeature, findFormatOverrides, findIncludeOverrides, findPropertyFilter, getSchema, getSchema, handledType, isDefaultSerializer, visitArrayFormat, visitArrayFormat, visitFloatFormat, visitIntFormat, visitIntFormat, visitStringFormat, visitStringFormat, wrapAndThrow, wrapAndThrow`

### Methods inherited from class com.fasterxml.jackson.databind.JsonSerializer

`getDelegatee, isEmpty, isEmpty, isUnwrappingSerializer, properties, replaceDelegatee, serializeWithType, unwrappingSerializer, usesObjectId, withFilterId, withIgnoredProperties`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### _values

    protected final EnumValues _values

#### _valuesByEnumNaming

    protected final EnumValues _valuesByEnumNaming

Map with key as converted property class defined implementation of `EnumNamingStrategy` and with value as Enum names collected using `Enum.name()`.

Since:
  2.15

### Constructor Detail

#### EnumKeySerializer

    protected EnumKeySerializer(Class<?> enumType,
                                EnumValues values)

#### EnumKeySerializer

    protected EnumKeySerializer(Class<?> enumType,
                                EnumValues values,
                                EnumValues valuesByEnumNaming)

Since:
  2.15

### Method Detail

#### construct

    public static StdKeySerializers.EnumKeySerializer construct(Class<?> enumType,
                                                                EnumValues enumValues)

#### construct

    public static StdKeySerializers.EnumKeySerializer construct(Class<?> enumType,
                                                                EnumValues enumValues,
                                                                EnumValues valuesByEnumNaming)

#### serialize

    public void serialize(Object value,
                          com.fasterxml.jackson.core.JsonGenerator g,
                          SerializerProvider serializers)
                   throws IOException

Description copied from class: `JsonSerializer`
Method that can be called to ask implementation to serialize values of type this serializer handles.

Specified by:
  `serialize` in class `StdSerializer<Object>`
Parameters:
  `value` - Value to serialize; can not be null.
  `g` - Generator used to output resulting Json content
  `serializers` - Provider that can be used to get serializers for serializing Objects value contains, if any.
Throws:
  `IOException`