public class EnumSerializer extends ScalarSerializerBase<Enum<?>>
Enum
types.
Based on ScalarSerializerBase
since the JSON value is
scalar (String).
JsonSerializer.None
Modifier and Type | Field and Description |
---|---|
protected EnumValues |
_values
This map contains pre-resolved values (since there are ways
to customize actual String constants to use) to use as
serializations.
|
_handledType
Constructor and Description |
---|
EnumSerializer(EnumValues v) |
Modifier and Type | Method and Description |
---|---|
static EnumSerializer |
construct(Class<Enum<?>> enumClass,
SerializationConfig config,
BasicBeanDescription beanDesc) |
EnumValues |
getEnumValues() |
JsonNode |
getSchema(SerializerProvider provider,
Type typeHint)
Note: since Jackson 1.9, default implementation claims type is "string"
|
void |
serialize(Enum<?> en,
JsonGenerator jgen,
SerializerProvider provider)
Method that can be called to ask implementation to serialize
values of type this serializer handles.
|
serializeWithType
createObjectNode, createSchemaNode, createSchemaNode, handledType, isDefaultSerializer, wrapAndThrow, wrapAndThrow, wrapAndThrow, wrapAndThrow
isUnwrappingSerializer, unwrappingSerializer
protected final EnumValues _values
public EnumSerializer(EnumValues v)
public static EnumSerializer construct(Class<Enum<?>> enumClass, SerializationConfig config, BasicBeanDescription beanDesc)
public final void serialize(Enum<?> en, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonGenerationException
JsonSerializer
serialize
in class SerializerBase<Enum<?>>
en
- Value to serialize; can not be null.jgen
- Generator used to output resulting Json contentprovider
- Provider that can be used to get serializers for
serializing Objects value contains, if any.IOException
JsonGenerationException
public JsonNode getSchema(SerializerProvider provider, Type typeHint)
SerializerBase
getSchema
in interface SchemaAware
getSchema
in class ScalarSerializerBase<Enum<?>>
provider
- The serializer provider.typeHint
- A hint about the type.public EnumValues getEnumValues()