org.codehaus.jackson.map.ser
Class ScalarSerializerBase<T>

java.lang.Object
  extended by org.codehaus.jackson.map.JsonSerializer<T>
      extended by org.codehaus.jackson.map.ser.SerializerBase<T>
          extended by org.codehaus.jackson.map.ser.ScalarSerializerBase<T>
All Implemented Interfaces:
SchemaAware
Direct Known Subclasses:
EnumSerializer, InetAddressSerializer, JdkSerializers.AtomicBooleanSerializer, JdkSerializers.AtomicIntegerSerializer, JdkSerializers.AtomicLongSerializer, JdkSerializers.ClassSerializer, JdkSerializers.FileSerializer, StdSerializers.CalendarSerializer, StdSerializers.FloatSerializer, StdSerializers.IntLikeSerializer, StdSerializers.LongSerializer, StdSerializers.NonTypedScalarSerializer, StdSerializers.NumberSerializer, StdSerializers.SqlDateSerializer, StdSerializers.SqlTimeSerializer, StdSerializers.UtilDateSerializer, TimeZoneSerializer

public abstract class ScalarSerializerBase<T>
extends SerializerBase<T>


Nested Class Summary
 
Nested classes/interfaces inherited from class org.codehaus.jackson.map.JsonSerializer
JsonSerializer.None
 
Field Summary
 
Fields inherited from class org.codehaus.jackson.map.ser.SerializerBase
_handledType
 
Constructor Summary
protected ScalarSerializerBase(Class<?> t, boolean dummy)
          Alternate constructor that is (alas!) needed to work around kinks of generic type handling
protected ScalarSerializerBase(Class<T> t)
           
 
Method Summary
 JsonNode getSchema(SerializerProvider provider, Type typeHint)
          Get the representation of the schema to which this serializer will conform.
 void serializeWithType(T value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)
          Default implementation will write type prefix, call regular serialization method (since assumption is that value itself does not need JSON Array or Object start/end markers), and then write type suffix.
 
Methods inherited from class org.codehaus.jackson.map.ser.SerializerBase
createObjectNode, createSchemaNode, createSchemaNode, handledType, isDefaultSerializer, serialize, wrapAndThrow, wrapAndThrow, wrapAndThrow, wrapAndThrow
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ScalarSerializerBase

protected ScalarSerializerBase(Class<T> t)

ScalarSerializerBase

protected ScalarSerializerBase(Class<?> t,
                               boolean dummy)
Alternate constructor that is (alas!) needed to work around kinks of generic type handling

Method Detail

serializeWithType

public void serializeWithType(T value,
                              JsonGenerator jgen,
                              SerializerProvider provider,
                              TypeSerializer typeSer)
                       throws IOException,
                              JsonGenerationException
Default implementation will write type prefix, call regular serialization method (since assumption is that value itself does not need JSON Array or Object start/end markers), and then write type suffix. This should work for most cases; some sub-classes may want to change this behavior.

Overrides:
serializeWithType in class JsonSerializer<T>
Parameters:
value - Value to serialize; can not be null.
jgen - Generator used to output resulting Json content
provider - Provider that can be used to get serializers for serializing Objects value contains, if any.
typeSer - Type serializer to use for including type information
Throws:
IOException
JsonGenerationException

getSchema

public JsonNode getSchema(SerializerProvider provider,
                          Type typeHint)
                   throws JsonMappingException
Description copied from interface: SchemaAware
Get the representation of the schema to which this serializer will conform.

Specified by:
getSchema in interface SchemaAware
Specified by:
getSchema in class SerializerBase<T>
Parameters:
provider - The serializer provider.
typeHint - A hint about the type.
Returns:
Json-schema for this serializer.
Throws:
JsonMappingException