TypeSerializerBase
public abstract class TypeSerializer
extends java.lang.Object
JsonSerializer
s using proper contextual
calls, to add type information using mechanism type serializer was
configured with.Constructor | Description |
---|---|
TypeSerializer() |
Modifier and Type | Method | Description |
---|---|---|
abstract java.lang.String |
getPropertyName() |
Name of property that contains type information, if
property-based inclusion is used.
|
abstract TypeIdResolver |
getTypeIdResolver() |
Accessor for object that handles conversions between
types and matching type ids.
|
abstract JsonTypeInfo.As |
getTypeInclusion() |
Accessor for type information inclusion method
that serializer uses; indicates how type information
is embedded in resulting JSON.
|
abstract 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
|
abstract 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
|
abstract 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
|
abstract 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
writeTypeSuffixForScalar(java.lang.Object, org.codehaus.jackson.JsonGenerator) . |
abstract 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
writeTypePrefixForObject(java.lang.Object, org.codehaus.jackson.JsonGenerator) . |
abstract 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
writeTypePrefixForScalar(java.lang.Object, org.codehaus.jackson.JsonGenerator) . |
public abstract JsonTypeInfo.As getTypeInclusion()
public abstract java.lang.String getPropertyName()
public abstract TypeIdResolver getTypeIdResolver()
public abstract void writeTypePrefixForScalar(java.lang.Object value, JsonGenerator jgen) throws java.io.IOException, JsonProcessingException
value
- Value that will be serialized, for which type information is
to be writtenjgen
- Generator to use for writing type informationjava.io.IOException
JsonProcessingException
public abstract void writeTypePrefixForObject(java.lang.Object value, JsonGenerator jgen) throws java.io.IOException, JsonProcessingException
value
- Value that will be serialized, for which type information is
to be writtenjgen
- Generator to use for writing type informationjava.io.IOException
JsonProcessingException
public abstract void writeTypePrefixForArray(java.lang.Object value, JsonGenerator jgen) throws java.io.IOException, JsonProcessingException
value
- Value that will be serialized, for which type information is
to be writtenjgen
- Generator to use for writing type informationjava.io.IOException
JsonProcessingException
public abstract void writeTypeSuffixForScalar(java.lang.Object value, JsonGenerator jgen) throws java.io.IOException, JsonProcessingException
writeTypePrefixForScalar(java.lang.Object, org.codehaus.jackson.JsonGenerator)
.
Actual action to take may depend on various factors, but has to match with
action writeTypePrefixForScalar(java.lang.Object, org.codehaus.jackson.JsonGenerator)
did (close array or object; or do nothing).java.io.IOException
JsonProcessingException
public abstract void writeTypeSuffixForObject(java.lang.Object value, JsonGenerator jgen) throws java.io.IOException, JsonProcessingException
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.java.io.IOException
JsonProcessingException
public abstract void writeTypeSuffixForArray(java.lang.Object value, JsonGenerator jgen) throws java.io.IOException, JsonProcessingException
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.java.io.IOException
JsonProcessingException
public void writeTypePrefixForScalar(java.lang.Object value, JsonGenerator jgen, java.lang.Class<?> type) throws java.io.IOException, JsonProcessingException
java.io.IOException
JsonProcessingException
public void writeTypePrefixForObject(java.lang.Object value, JsonGenerator jgen, java.lang.Class<?> type) throws java.io.IOException, JsonProcessingException
java.io.IOException
JsonProcessingException
public void writeTypePrefixForArray(java.lang.Object value, JsonGenerator jgen, java.lang.Class<?> type) throws java.io.IOException, JsonProcessingException
java.io.IOException
JsonProcessingException