Package com.fasterxml.jackson.databind
Class ObjectWriter.Prefetch
java.lang.Object
com.fasterxml.jackson.databind.ObjectWriter.Prefetch
- All Implemented Interfaces:
Serializable
- Enclosing class:
ObjectWriter
As a minor optimization, we will make an effort to pre-fetch a serializer,
or at least relevant
TypeSerializer, if given enough
information.- Since:
- 2.5
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ObjectWriter.Prefetchprivate final JavaTypeSpecified 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 final longprivate final TypeSerializerWhen dealing with polymorphic types, we cannot pre-fetch serializer, but can pre-fetchTypeSerializer.private final JsonSerializer<Object> We may pre-fetch serializer ifrootTypeis known, and if so, reuse it afterwards. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivatePrefetch(JavaType rootT, JsonSerializer<Object> ser, TypeSerializer typeSer) -
Method Summary
Modifier and TypeMethodDescriptionforRootType(ObjectWriter parent, JavaType newType) final TypeSerializerfinal JsonSerializer<Object> booleanvoidserialize(com.fasterxml.jackson.core.JsonGenerator gen, Object value, DefaultSerializerProvider prov)
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
empty
-
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). -
valueSerializer
We may pre-fetch serializer ifrootTypeis known, and if so, reuse it afterwards. This allows avoiding further serializer lookups and increases performance a bit on cases where readers are reused. -
typeSerializer
When dealing with polymorphic types, we cannot pre-fetch serializer, but can pre-fetchTypeSerializer.
-
-
Constructor Details
-
Prefetch
-
-
Method Details
-
forRootType
-
getValueSerializer
-
getTypeSerializer
-
hasSerializer
public boolean hasSerializer() -
serialize
public void serialize(com.fasterxml.jackson.core.JsonGenerator gen, Object value, DefaultSerializerProvider prov) throws IOException - Throws:
IOException
-