public abstract class StdSerializer<T> extends JsonSerializer<T> implements JsonFormatVisitable, SchemaAware, Serializable
SchemaAwareJsonSerializer.None| Modifier and Type | Field and Description |
|---|---|
protected Class<T> |
_handledType
Nominal type supported, usually declared type of
property for which serializer is used.
|
| Modifier | Constructor and Description |
|---|---|
protected |
StdSerializer(Class<?> t,
boolean dummy)
Alternate constructor that is (alas!) needed to work
around kinks of generic type handling
|
protected |
StdSerializer(Class<T> t) |
protected |
StdSerializer(JavaType type) |
protected |
StdSerializer(StdSerializer<?> src) |
| Modifier and Type | Method and Description |
|---|---|
void |
acceptJsonFormatVisitor(JsonFormatVisitorWrapper visitor,
JavaType typeHint)
Default implementation specifies no format.
|
protected ObjectNode |
createObjectNode() |
protected ObjectNode |
createSchemaNode(String type) |
protected ObjectNode |
createSchemaNode(String type,
boolean isOptional) |
protected JsonSerializer<?> |
findConvertingContentSerializer(SerializerProvider provider,
BeanProperty prop,
JsonSerializer<?> existingSerializer)
Helper method that can be used to see if specified property has annotation
indicating that a converter is to be used for contained values (contents
of structured types; array/List/Map values)
|
protected PropertyFilter |
findPropertyFilter(SerializerProvider provider,
Object filterId,
Object valueToFilter)
Helper method used to locate filter that is needed, based on filter id
this serializer was constructed with.
|
JsonNode |
getSchema(SerializerProvider provider,
Type typeHint)
Default implementation simply claims type is "string"; usually
overriden by custom serializers.
|
JsonNode |
getSchema(SerializerProvider provider,
Type typeHint,
boolean isOptional)
Default implementation simply claims type is "string"; usually
overriden by custom serializers.
|
Class<T> |
handledType()
Method for accessing type of Objects this serializer can handle.
|
protected boolean |
isDefaultSerializer(JsonSerializer<?> serializer)
Method that can be called to determine if given serializer is the default
serializer Jackson uses; as opposed to a custom serializer installed by
a module or calling application.
|
abstract void |
serialize(T value,
com.fasterxml.jackson.core.JsonGenerator gen,
SerializerProvider provider)
Method that can be called to ask implementation to serialize
values of type this serializer handles.
|
void |
wrapAndThrow(SerializerProvider provider,
Throwable t,
Object bean,
int index) |
void |
wrapAndThrow(SerializerProvider provider,
Throwable t,
Object bean,
String fieldName)
Method that will modify caught exception (passed in as argument)
as necessary to include reference information, and to ensure it
is a subtype of
IOException, or an unchecked exception. |
getDelegatee, isEmpty, isEmpty, isUnwrappingSerializer, properties, replaceDelegatee, serializeWithType, unwrappingSerializer, usesObjectId, withFilterIdprotected StdSerializer(JavaType type)
protected StdSerializer(Class<?> t, boolean dummy)
protected StdSerializer(StdSerializer<?> src)
public Class<T> handledType()
JsonSerializer
Default implementation will return null, which essentially means
same as returning Object.class would; that is, that
nothing is known about handled type.
handledType in class JsonSerializer<T>public abstract void serialize(T value, com.fasterxml.jackson.core.JsonGenerator gen, SerializerProvider provider) throws IOException
JsonSerializerserialize in class JsonSerializer<T>value - Value to serialize; can not be null.gen - Generator used to output resulting Json contentprovider - Provider that can be used to get serializers for
serializing Objects value contains, if any.IOExceptionpublic JsonNode getSchema(SerializerProvider provider, Type typeHint) throws JsonMappingException
getSchema in interface SchemaAwareprovider - The serializer provider.typeHint - A hint about the type.JsonMappingExceptionpublic JsonNode getSchema(SerializerProvider provider, Type typeHint, boolean isOptional) throws JsonMappingException
getSchema in interface SchemaAwareprovider - The serializer provider.typeHint - A hint about the type.isOptional - Is the type optionalJsonMappingExceptionprotected ObjectNode createObjectNode()
protected ObjectNode createSchemaNode(String type)
protected ObjectNode createSchemaNode(String type, boolean isOptional)
public void acceptJsonFormatVisitor(JsonFormatVisitorWrapper visitor, JavaType typeHint) throws JsonMappingException
acceptJsonFormatVisitor in interface JsonFormatVisitableacceptJsonFormatVisitor in class JsonSerializer<T>typeHint - Type of element (entity like property) being visitedJsonMappingExceptionpublic void wrapAndThrow(SerializerProvider provider, Throwable t, Object bean, String fieldName) throws IOException
IOException, or an unchecked exception.
Rules for wrapping and unwrapping are bit complicated; essentially:
JsonMappingException are to be passed as is
IOExceptionpublic void wrapAndThrow(SerializerProvider provider, Throwable t, Object bean, int index) throws IOException
IOExceptionprotected boolean isDefaultSerializer(JsonSerializer<?> serializer)
JacksonStdImpl annotation on serializer class.protected JsonSerializer<?> findConvertingContentSerializer(SerializerProvider provider, BeanProperty prop, JsonSerializer<?> existingSerializer) throws JsonMappingException
existingSerializer - (optional) configured content
serializer if one already exists.JsonMappingExceptionprotected PropertyFilter findPropertyFilter(SerializerProvider provider, Object filterId, Object valueToFilter) throws JsonMappingException
JsonMappingExceptionCopyright © 2014–2015 FasterXML. All rights reserved.