Top Inners Fields Constructors Methods
tools.jackson.databind.ser.jdk

public abstract Class JDKKeySerializers

extends Object
Class Inheritance
Imports
java.util.Calendar, .Date, tools.jackson.core.*, tools.jackson.databind.*, tools.jackson.databind.cfg.EnumFeature, tools.jackson.databind.introspect.AnnotatedClass, tools.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper, tools.jackson.databind.ser.impl.PropertySerializerMap, tools.jackson.databind.ser.std.StdSerializer, tools.jackson.databind.util.ClassUtil, .EnumValues

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
JDKKeySerializers.Default

This is a "chameleon" style multi-type key serializer for simple standard JDK types.

public static class
JDKKeySerializers.Dynamic

Key serializer used when key type is not known statically, and actual key serializer needs to be dynamically located.

public static class
JDKKeySerializers.EnumKeySerializer

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

public static class
JDKKeySerializers.StringKeySerializer

Simple and fast key serializer when keys are Strings.

Field Summary

Modifier and TypeField and Description
protected static final ValueSerializer<Object>

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public static ValueSerializer<Object>
getFallbackKeySerializer(SerializationConfig config, Class<?> rawKeyType, AnnotatedClass annotatedClass)

Method called if no specified key serializer was located; will return a "default" key serializer initialized by EnumKeySerializer#construct(Class, EnumValues, EnumValues)

public static ValueSerializer<Object>
getStdKeySerializer(SerializationConfig
Serialization configuration in use, may be needed in choosing serializer to use
config
,
Class<?>
Type of key values to serialize
rawKeyType
,
boolean
If no match is found, should we return fallback deserializer (true), or null (false)?
useDefault
)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

DEFAULT_STRING_SERIALIZERback to summary
protected static final ValueSerializer<Object> DEFAULT_STRING_SERIALIZER

Constructor Detail

JDKKeySerializersback to summary
public JDKKeySerializers()

Method Detail

getFallbackKeySerializerback to summary
public static ValueSerializer<Object> getFallbackKeySerializer(SerializationConfig config, Class<?> rawKeyType, AnnotatedClass annotatedClass)

Method called if no specified key serializer was located; will return a "default" key serializer initialized by EnumKeySerializer#construct(Class, EnumValues, EnumValues)

Annotations
@SuppressWarnings:unchecked
getStdKeySerializerback to summary
public static ValueSerializer<Object> getStdKeySerializer(SerializationConfig config, Class<?> rawKeyType, boolean useDefault)
Parameters
config:SerializationConfig

Serialization configuration in use, may be needed in choosing serializer to use

rawKeyType:Class<?>

Type of key values to serialize

useDefault:boolean

If no match is found, should we return fallback deserializer (true), or null (false)?

tools.jackson.databind.ser.jdk back to summary

public Class JDKKeySerializers.Default

extends StdSerializer<Object>
Class Inheritance

This is a "chameleon" style multi-type key serializer for simple standard JDK types.

Todo

Should (but does not yet) support re-configuring format used for java.util.Date and java.util.Calendar key serializers, as well as alternative configuration of Enum key serializers.

Field Summary

Modifier and TypeField and Description
protected final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
Inherited from tools.jackson.databind.ser.std.StdSerializer:
_handledType

Constructor Summary

AccessConstructor and Description
public
Default(int typeId, Class<?> type)

Method Summary

Modifier and TypeMethod and Description
public void
serialize(Object value, JsonGenerator g, SerializationContext provider)

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

Inherited from tools.jackson.databind.ser.std.StdSerializer:
_neitherNull_nonEmpty_wrapIOFailureacceptJsonFormatVisitoracceptJsonFormatVisitorForBinarycreateSchemaNodecreateSchemaNodefindAnnotatedContentSerializerfindContextualConvertingSerializerfindFormatFeaturefindFormatOverridesfindIncludeOverridesfindPropertyFilterhandledTypeisDefaultSerializervisitArrayFormatvisitArrayFormatvisitFloatFormatvisitIntFormatvisitIntFormatvisitStringFormatvisitStringFormatwrapAndThrowwrapAndThrow

Field Detail

_typeIdback to summary
protected final int _typeId
TYPE_BYTE_ARRAYback to summary
pack-priv static final int TYPE_BYTE_ARRAY
TYPE_CALENDARback to summary
pack-priv static final int TYPE_CALENDAR
TYPE_CLASSback to summary
pack-priv static final int TYPE_CLASS
TYPE_DATEback to summary
pack-priv static final int TYPE_DATE
TYPE_ENUMback to summary
pack-priv static final int TYPE_ENUM
TYPE_INTEGERback to summary
pack-priv static final int TYPE_INTEGER
TYPE_LONGback to summary
pack-priv static final int TYPE_LONG
TYPE_TO_STRINGback to summary
pack-priv static final int TYPE_TO_STRING

Constructor Detail

Defaultback to summary
public Default(int typeId, Class<?> type)

Method Detail

serializeback to summary
public void serialize(Object value, JsonGenerator g, SerializationContext provider) throws JacksonException

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Doc from tools.jackson.databind.ValueSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

Annotations
@Override
tools.jackson.databind.ser.jdk back to summary

public Class JDKKeySerializers.Dynamic

extends StdSerializer<Object>
Class Inheritance

Key serializer used when key type is not known statically, and actual key serializer needs to be dynamically located.

Field Summary

Modifier and TypeField and Description
protected transient PropertySerializerMap
Inherited from tools.jackson.databind.ser.std.StdSerializer:
_handledType

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
protected ValueSerializer<Object>
public void
pack-priv Object
public void
serialize(Object value, JsonGenerator g, SerializationContext provider)

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

Inherited from tools.jackson.databind.ser.std.StdSerializer:
_neitherNull_nonEmpty_wrapIOFailureacceptJsonFormatVisitorForBinarycreateSchemaNodecreateSchemaNodefindAnnotatedContentSerializerfindContextualConvertingSerializerfindFormatFeaturefindFormatOverridesfindIncludeOverridesfindPropertyFilterhandledTypeisDefaultSerializervisitArrayFormatvisitArrayFormatvisitFloatFormatvisitIntFormatvisitIntFormatvisitStringFormatvisitStringFormatwrapAndThrowwrapAndThrow

Field Detail

_dynamicSerializersback to summary
protected transient PropertySerializerMap _dynamicSerializers

Constructor Detail

Dynamicback to summary
public Dynamic()

Method Detail

_findAndAddDynamicback to summary
protected ValueSerializer<Object> _findAndAddDynamic(PropertySerializerMap map, Class<?> type, SerializationContext provider)
acceptJsonFormatVisitorback to summary
public void acceptJsonFormatVisitor(JsonFormatVisitorWrapper visitor, JavaType typeHint)

Overrides tools.jackson.databind.ser.std.StdSerializer.acceptJsonFormatVisitor.

Implements tools.jackson.databind.jsonFormatVisitors.JsonFormatVisitable.acceptJsonFormatVisitor.

Doc from tools.jackson.databind.ser.std.StdSerializer.acceptJsonFormatVisitor.

Default implementation specifies no format. This behavior is usually overriden by custom serializers.

Annotations
@Override
readResolveback to summary
pack-priv Object readResolve()
serializeback to summary
public void serialize(Object value, JsonGenerator g, SerializationContext provider) throws JacksonException

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Doc from tools.jackson.databind.ValueSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

Annotations
@Override
tools.jackson.databind.ser.jdk back to summary

public Class JDKKeySerializers.EnumKeySerializer

extends StdSerializer<Object>
Class Inheritance

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

Field Summary

Modifier and TypeField and Description
protected final EnumValues
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().

Inherited from tools.jackson.databind.ser.std.StdSerializer:
_handledType

Constructor Summary

AccessConstructor and Description
protected
EnumKeySerializer(Class<?> enumType, EnumValues values)
Deprecated

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

Method Summary

Modifier and TypeMethod and Description
public static JDKKeySerializers.EnumKeySerializer
construct(Class<?> enumType, EnumValues enumValues)

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

public void
serialize(Object value, JsonGenerator g, SerializationContext serializers)

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

Inherited from tools.jackson.databind.ser.std.StdSerializer:
_neitherNull_nonEmpty_wrapIOFailureacceptJsonFormatVisitoracceptJsonFormatVisitorForBinarycreateSchemaNodecreateSchemaNodefindAnnotatedContentSerializerfindContextualConvertingSerializerfindFormatFeaturefindFormatOverridesfindIncludeOverridesfindPropertyFilterhandledTypeisDefaultSerializervisitArrayFormatvisitArrayFormatvisitFloatFormatvisitIntFormatvisitIntFormatvisitStringFormatvisitStringFormatwrapAndThrowwrapAndThrow

Field Detail

_valuesback to summary
protected final EnumValues _values
_valuesByEnumNamingback to summary
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().

Constructor Detail

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

Deprecated

Annotations
@Deprecated
EnumKeySerializerback to summary
protected EnumKeySerializer(Class<?> enumType, EnumValues values, EnumValues valuesByEnumNaming)

Method Detail

constructback to summary
public static JDKKeySerializers.EnumKeySerializer construct(Class<?> enumType, EnumValues enumValues)
constructback to summary
public static JDKKeySerializers.EnumKeySerializer construct(Class<?> enumType, EnumValues enumValues, EnumValues valuesByEnumNaming)
serializeback to summary
public void serialize(Object value, JsonGenerator g, SerializationContext serializers) throws JacksonException

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Doc from tools.jackson.databind.ValueSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

Annotations
@Override
tools.jackson.databind.ser.jdk back to summary

public Class JDKKeySerializers.StringKeySerializer

extends StdSerializer<Object>
Class Inheritance

Simple and fast key serializer when keys are Strings.

Field Summary

Inherited from tools.jackson.databind.ser.std.StdSerializer:
_handledType

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
serialize(Object value, JsonGenerator g, SerializationContext provider)

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

Inherited from tools.jackson.databind.ser.std.StdSerializer:
_neitherNull_nonEmpty_wrapIOFailureacceptJsonFormatVisitoracceptJsonFormatVisitorForBinarycreateSchemaNodecreateSchemaNodefindAnnotatedContentSerializerfindContextualConvertingSerializerfindFormatFeaturefindFormatOverridesfindIncludeOverridesfindPropertyFilterhandledTypeisDefaultSerializervisitArrayFormatvisitArrayFormatvisitFloatFormatvisitIntFormatvisitIntFormatvisitStringFormatvisitStringFormatwrapAndThrowwrapAndThrow

Constructor Detail

StringKeySerializerback to summary
public StringKeySerializer()

Method Detail

serializeback to summary
public void serialize(Object value, JsonGenerator g, SerializationContext provider) throws JacksonException

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Doc from tools.jackson.databind.ValueSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

Annotations
@Override