public class AsWrapperTypeSerializer extends TypeSerializerBase
JsonTypeInfo.As.WRAPPER_ARRAY mechanism as fallback: that is,
just use a wrapping array with type information as the first element
and value as second._idResolver, _property| Constructor | Description |
|---|---|
AsWrapperTypeSerializer(TypeIdResolver idRes,
BeanProperty property) |
| Modifier and Type | Method | Description |
|---|---|---|
JsonTypeInfo.As |
getTypeInclusion() |
Accessor for type information inclusion method
that serializer uses; indicates how type information
is embedded in resulting JSON.
|
void |
writeTypePrefixForArray(java.lang.Object value,
JsonGenerator jgen) |
Method called to write initial part of type information for given
value, when it will be output as JSON Array value (not as JSON
Object or scalar).
|
void |
writeTypePrefixForArray(java.lang.Object value,
JsonGenerator jgen,
java.lang.Class<?> type) |
Alternative version of the prefix-for-array method, which is given
actual type to use (instead of using exact type of the value); typically
a super type of actual value type
|
void |
writeTypePrefixForObject(java.lang.Object value,
JsonGenerator jgen) |
Method called to write initial part of type information for given
value, when it will be output as JSON Object value (not as JSON
Array or scalar).
|
void |
writeTypePrefixForObject(java.lang.Object value,
JsonGenerator jgen,
java.lang.Class<?> type) |
Alternative version of the prefix-for-object method, which is given
actual type to use (instead of using exact type of the value); typically
a super type of actual value type
|
void |
writeTypePrefixForScalar(java.lang.Object value,
JsonGenerator jgen) |
Method called to write initial part of type information for given
value, when it will be output as scalar JSON value (not as JSON
Object or Array).
|
void |
writeTypePrefixForScalar(java.lang.Object value,
JsonGenerator jgen,
java.lang.Class<?> type) |
Alternative version of the prefix-for-scalar method, which is given
actual type to use (instead of using exact type of the value); typically
a super type of actual value type
|
void |
writeTypeSuffixForArray(java.lang.Object value,
JsonGenerator jgen) |
Method called after value has been serialized, to close any scopes opened
by earlier matching call to
TypeSerializer.writeTypeSuffixForScalar(java.lang.Object, org.codehaus.jackson.JsonGenerator). |
void |
writeTypeSuffixForObject(java.lang.Object value,
JsonGenerator jgen) |
Method called after value has been serialized, to close any scopes opened
by earlier matching call to
TypeSerializer.writeTypePrefixForObject(java.lang.Object, org.codehaus.jackson.JsonGenerator). |
void |
writeTypeSuffixForScalar(java.lang.Object value,
JsonGenerator jgen) |
Method called after value has been serialized, to close any scopes opened
by earlier matching call to
TypeSerializer.writeTypePrefixForScalar(java.lang.Object, org.codehaus.jackson.JsonGenerator). |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetPropertyName, getTypeIdResolverpublic AsWrapperTypeSerializer(TypeIdResolver idRes, BeanProperty property)
public JsonTypeInfo.As getTypeInclusion()
TypeSerializergetTypeInclusion in class TypeSerializerBasepublic void writeTypePrefixForObject(java.lang.Object value,
JsonGenerator jgen)
throws java.io.IOException,
JsonProcessingException
TypeSerializerwriteTypePrefixForObject in class TypeSerializervalue - Value that will be serialized, for which type information is
to be writtenjgen - Generator to use for writing type informationjava.io.IOExceptionJsonProcessingExceptionpublic void writeTypePrefixForObject(java.lang.Object value,
JsonGenerator jgen,
java.lang.Class<?> type)
throws java.io.IOException,
JsonProcessingException
TypeSerializerwriteTypePrefixForObject in class TypeSerializerjava.io.IOExceptionJsonProcessingExceptionpublic void writeTypePrefixForArray(java.lang.Object value,
JsonGenerator jgen)
throws java.io.IOException,
JsonProcessingException
TypeSerializerwriteTypePrefixForArray in class TypeSerializervalue - Value that will be serialized, for which type information is
to be writtenjgen - Generator to use for writing type informationjava.io.IOExceptionJsonProcessingExceptionpublic void writeTypePrefixForArray(java.lang.Object value,
JsonGenerator jgen,
java.lang.Class<?> type)
throws java.io.IOException,
JsonProcessingException
TypeSerializerwriteTypePrefixForArray in class TypeSerializerjava.io.IOExceptionJsonProcessingExceptionpublic void writeTypePrefixForScalar(java.lang.Object value,
JsonGenerator jgen)
throws java.io.IOException,
JsonProcessingException
TypeSerializerwriteTypePrefixForScalar in class TypeSerializervalue - Value that will be serialized, for which type information is
to be writtenjgen - Generator to use for writing type informationjava.io.IOExceptionJsonProcessingExceptionpublic void writeTypePrefixForScalar(java.lang.Object value,
JsonGenerator jgen,
java.lang.Class<?> type)
throws java.io.IOException,
JsonProcessingException
TypeSerializerwriteTypePrefixForScalar in class TypeSerializerjava.io.IOExceptionJsonProcessingExceptionpublic void writeTypeSuffixForObject(java.lang.Object value,
JsonGenerator jgen)
throws java.io.IOException,
JsonProcessingException
TypeSerializerTypeSerializer.writeTypePrefixForObject(java.lang.Object, org.codehaus.jackson.JsonGenerator).
It needs to write closing END_OBJECT marker, and any other decoration
that needs to be matched.writeTypeSuffixForObject in class TypeSerializerjava.io.IOExceptionJsonProcessingExceptionpublic void writeTypeSuffixForArray(java.lang.Object value,
JsonGenerator jgen)
throws java.io.IOException,
JsonProcessingException
TypeSerializerTypeSerializer.writeTypeSuffixForScalar(java.lang.Object, org.codehaus.jackson.JsonGenerator).
It needs to write closing END_ARRAY marker, and any other decoration
that needs to be matched.writeTypeSuffixForArray in class TypeSerializerjava.io.IOExceptionJsonProcessingExceptionpublic void writeTypeSuffixForScalar(java.lang.Object value,
JsonGenerator jgen)
throws java.io.IOException,
JsonProcessingException
TypeSerializerTypeSerializer.writeTypePrefixForScalar(java.lang.Object, org.codehaus.jackson.JsonGenerator).
Actual action to take may depend on various factors, but has to match with
action TypeSerializer.writeTypePrefixForScalar(java.lang.Object, org.codehaus.jackson.JsonGenerator) did (close array or object; or do nothing).writeTypeSuffixForScalar in class TypeSerializerjava.io.IOExceptionJsonProcessingException