com.fasterxml.jackson.databind.ser
Class SerializerFactory

java.lang.Object
  extended by com.fasterxml.jackson.databind.ser.SerializerFactory
Direct Known Subclasses:
BasicSerializerFactory

public abstract class SerializerFactory
extends Object

Abstract class that defines API used by SerializerProvider to obtain actual JsonSerializer instances from multiple distinct factories.


Constructor Summary
SerializerFactory()
           
 
Method Summary
abstract  JsonSerializer<Object> createKeySerializer(SerializationConfig config, JavaType baseType)
          Method called to create serializer to use for serializing JSON property names (which must be output as JsonToken.FIELD_NAME) for Map that has specified declared key type, and is for specified property (or, if property is null, as root value)
abstract  JsonSerializer<Object> createSerializer(SerializerProvider prov, JavaType baseType, BeanProperty property)
          Method called to create (or, for immutable serializers, reuse) a serializer for given type.
abstract  TypeSerializer createTypeSerializer(SerializationConfig config, JavaType baseType)
          Method called to create a type information serializer for given base type, if one is needed.
abstract  SerializerFactory withAdditionalKeySerializers(Serializers additional)
           
abstract  SerializerFactory withAdditionalSerializers(Serializers additional)
          Convenience method for creating a new factory instance with additional serializer provider; equivalent to calling
abstract  SerializerFactory withSerializerModifier(BeanSerializerModifier modifier)
          Convenience method for creating a new factory instance with additional bean serializer modifier; equivalent to calling
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SerializerFactory

public SerializerFactory()
Method Detail

withAdditionalSerializers

public abstract SerializerFactory withAdditionalSerializers(Serializers additional)
Convenience method for creating a new factory instance with additional serializer provider; equivalent to calling
   withConfig(getConfig().withAdditionalSerializers(additional));


withAdditionalKeySerializers

public abstract SerializerFactory withAdditionalKeySerializers(Serializers additional)

withSerializerModifier

public abstract SerializerFactory withSerializerModifier(BeanSerializerModifier modifier)
Convenience method for creating a new factory instance with additional bean serializer modifier; equivalent to calling
   withConfig(getConfig().withSerializerModifier(modifier));


createSerializer

public abstract JsonSerializer<Object> createSerializer(SerializerProvider prov,
                                                        JavaType baseType,
                                                        BeanProperty property)
                                                 throws JsonMappingException
Method called to create (or, for immutable serializers, reuse) a serializer for given type.

Parameters:
prov - Provider that needs to be used to resolve annotation-provided serializers (but NOT for others)
Throws:
JsonMappingException

createTypeSerializer

public abstract TypeSerializer createTypeSerializer(SerializationConfig config,
                                                    JavaType baseType)
                                             throws JsonMappingException
Method called to create a type information serializer for given base type, if one is needed. If not needed (no polymorphic handling configured), should return null.

Parameters:
baseType - Declared type to use as the base type for type information serializer
Returns:
Type serializer to use for the base type, if one is needed; null if not.
Throws:
JsonMappingException

createKeySerializer

public abstract JsonSerializer<Object> createKeySerializer(SerializationConfig config,
                                                           JavaType baseType)
                                                    throws JsonMappingException
Method called to create serializer to use for serializing JSON property names (which must be output as JsonToken.FIELD_NAME) for Map that has specified declared key type, and is for specified property (or, if property is null, as root value)

Parameters:
baseType - Declared type for Map keys
Returns:
Serializer to use, if factory knows it; null if not (in which case default serializer is to be used)
Throws:
JsonMappingException


Copyright © 2012 fasterxml.com. All Rights Reserved.