com.fasterxml.jackson.databind.ser.std
Class StdScalarSerializer<T>

java.lang.Object
  extended by com.fasterxml.jackson.databind.JsonSerializer<T>
      extended by com.fasterxml.jackson.databind.ser.std.StdSerializer<T>
          extended by com.fasterxml.jackson.databind.ser.std.StdScalarSerializer<T>
All Implemented Interfaces:
SchemaAware
Direct Known Subclasses:
DateTimeSerializerBase, EnumSerializer, InetAddressSerializer, NonTypedScalarSerializerBase, NumberSerializers.FloatSerializer, NumberSerializers.IntLikeSerializer, NumberSerializers.LongSerializer, NumberSerializers.NumberSerializer, SqlDateSerializer, SqlTimeSerializer, StdJdkSerializers.AtomicBooleanSerializer, StdJdkSerializers.AtomicIntegerSerializer, StdJdkSerializers.AtomicLongSerializer, StdJdkSerializers.ClassSerializer, StdJdkSerializers.FileSerializer, TimeZoneSerializer

public abstract class StdScalarSerializer<T>
extends StdSerializer<T>


Nested Class Summary
 
Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonSerializer
JsonSerializer.None
 
Field Summary
 
Fields inherited from class com.fasterxml.jackson.databind.ser.std.StdSerializer
_handledType
 
Constructor Summary
protected StdScalarSerializer(Class<?> t, boolean dummy)
          Alternate constructor that is (alas!) needed to work around kinks of generic type handling
protected StdScalarSerializer(Class<T> t)
           
 
Method Summary
 JsonNode getSchema(SerializerProvider provider, Type typeHint)
          Default implementation simply claims type is "string"; usually overriden by custom serializers.
 void serializeWithType(T value, com.fasterxml.jackson.core.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 com.fasterxml.jackson.databind.ser.std.StdSerializer
createObjectNode, createSchemaNode, createSchemaNode, handledType, isDefaultSerializer, serialize, wrapAndThrow, wrapAndThrow
 
Methods inherited from class com.fasterxml.jackson.databind.JsonSerializer
isEmpty, isUnwrappingSerializer, unwrappingSerializer, usesObjectId
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StdScalarSerializer

protected StdScalarSerializer(Class<T> t)

StdScalarSerializer

protected StdScalarSerializer(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,
                              com.fasterxml.jackson.core.JsonGenerator jgen,
                              SerializerProvider provider,
                              TypeSerializer typeSer)
                       throws IOException,
                              com.fasterxml.jackson.core.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
com.fasterxml.jackson.core.JsonGenerationException

getSchema

public JsonNode getSchema(SerializerProvider provider,
                          Type typeHint)
                   throws JsonMappingException
Description copied from class: StdSerializer
Default implementation simply claims type is "string"; usually overriden by custom serializers.

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


Copyright © 2012 fasterxml.com. All Rights Reserved.