SchemaAwarepublic class RawSerializer<T> extends SerializerBase<T>
JsonSerializer.None_handledType| Constructor | Description |
|---|---|
RawSerializer(java.lang.Class<?> cls) |
Constructor takes in expected type of values; but since caller
typically can not really provide actual type parameter, we will
just take wild card and coerce type.
|
| Modifier and Type | Method | Description |
|---|---|---|
JsonNode |
getSchema(SerializerProvider provider,
java.lang.reflect.Type typeHint) |
Note: since Jackson 1.9, default implementation claims type is "string"
|
void |
serialize(T value,
JsonGenerator jgen,
SerializerProvider provider) |
Method that can be called to ask implementation to serialize
values of type this serializer handles.
|
void |
serializeWithType(T value,
JsonGenerator jgen,
SerializerProvider provider,
TypeSerializer typeSer) |
Method that can be called to ask implementation to serialize
values of type this serializer handles, using specified type serializer
for embedding necessary type information.
|
isUnwrappingSerializer, unwrappingSerializerclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcreateObjectNode, createSchemaNode, createSchemaNode, handledType, isDefaultSerializer, wrapAndThrow, wrapAndThrow, wrapAndThrow, wrapAndThrowpublic RawSerializer(java.lang.Class<?> cls)
public void serialize(T value, JsonGenerator jgen, SerializerProvider provider) throws java.io.IOException, JsonGenerationException
JsonSerializerserialize in class SerializerBase<T>value - 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.java.io.IOExceptionJsonGenerationExceptionpublic void serializeWithType(T value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer) throws java.io.IOException, JsonProcessingException
JsonSerializer
Default implementation will ignore serialization of type information,
and just calls JsonSerializer.serialize(T, org.codehaus.jackson.JsonGenerator, org.codehaus.jackson.map.SerializerProvider): serializers that can embed
type information should override this to implement actual handling.
Most common such handling is done by something like:
// note: method to call depends on whether this type is serialized as JSON scalar, object or Array! typeSer.writeTypePrefixForScalar(value, jgen); serialize(value, jgen, provider); typeSer.writeTypeSuffixForScalar(value, jgen);
serializeWithType in class JsonSerializer<T>value - 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.typeSer - Type serializer to use for including type informationjava.io.IOExceptionJsonProcessingExceptionpublic JsonNode getSchema(SerializerProvider provider, java.lang.reflect.Type typeHint)
SerializerBasegetSchema in interface SchemaAwaregetSchema in class SerializerBase<T>provider - The serializer provider.typeHint - A hint about the type.