public static final class ObjectWriter.Prefetch
extends java.lang.Object
implements java.io.Serializable
TypeSerializer, if given enough
information.| Modifier and Type | Field and Description |
|---|---|
static ObjectWriter.Prefetch |
empty |
private JavaType |
rootType
Specified root serialization type to use; can be same
as runtime type, but usually one of its super types
(parent class or interface it implements).
|
private static long |
serialVersionUID |
private TypeSerializer |
typeSerializer
When dealing with polymorphic types, we can not pre-fetch
serializer, but can pre-fetch
TypeSerializer. |
private JsonSerializer<java.lang.Object> |
valueSerializer
We may pre-fetch serializer if
rootType
is known, and if so, reuse it afterwards. |
| Modifier | Constructor and Description |
|---|---|
private |
Prefetch(JavaType rootT,
JsonSerializer<java.lang.Object> ser,
TypeSerializer typeSer) |
| Modifier and Type | Method and Description |
|---|---|
ObjectWriter.Prefetch |
forRootType(ObjectWriter parent,
JavaType newType) |
TypeSerializer |
getTypeSerializer() |
JsonSerializer<java.lang.Object> |
getValueSerializer() |
boolean |
hasSerializer() |
void |
serialize(com.fasterxml.jackson.core.JsonGenerator gen,
java.lang.Object value,
DefaultSerializerProvider prov) |
private static final long serialVersionUID
public static final ObjectWriter.Prefetch empty
private final JavaType rootType
private final JsonSerializer<java.lang.Object> valueSerializer
rootType
is known, and if so, reuse it afterwards.
This allows avoiding further serializer lookups and increases
performance a bit on cases where readers are reused.private final TypeSerializer typeSerializer
TypeSerializer.private Prefetch(JavaType rootT, JsonSerializer<java.lang.Object> ser, TypeSerializer typeSer)
public ObjectWriter.Prefetch forRootType(ObjectWriter parent, JavaType newType)
public final JsonSerializer<java.lang.Object> getValueSerializer()
public final TypeSerializer getTypeSerializer()
public boolean hasSerializer()
public void serialize(com.fasterxml.jackson.core.JsonGenerator gen,
java.lang.Object value,
DefaultSerializerProvider prov)
throws java.io.IOException
java.io.IOException