Class OptimizedBeanPropertyWriter<T extends OptimizedBeanPropertyWriter<T>>
- java.lang.Object
-
- com.fasterxml.jackson.databind.introspect.ConcreteBeanPropertyBase
-
- com.fasterxml.jackson.databind.ser.PropertyWriter
-
- com.fasterxml.jackson.databind.ser.BeanPropertyWriter
-
- com.fasterxml.jackson.module.blackbird.ser.OptimizedBeanPropertyWriter<T>
-
- All Implemented Interfaces:
com.fasterxml.jackson.databind.BeanProperty
,com.fasterxml.jackson.databind.util.Named
,java.io.Serializable
- Direct Known Subclasses:
BooleanPropertyWriter
,IntPropertyWriter
,LongPropertyWriter
,ObjectPropertyWriter
,StringPropertyWriter
abstract class OptimizedBeanPropertyWriter<T extends OptimizedBeanPropertyWriter<T>> extends com.fasterxml.jackson.databind.ser.BeanPropertyWriter
Intermediate base class that is used for concrete per-type implementations
-
-
Field Summary
Fields Modifier and Type Field Description protected com.fasterxml.jackson.core.SerializableString
_fastName
Locally stored version of efficiently serializable name.protected boolean
broken
protected com.fasterxml.jackson.databind.ser.BeanPropertyWriter
fallbackWriter
-
Fields inherited from class com.fasterxml.jackson.databind.ser.BeanPropertyWriter
_accessorMethod, _cfgSerializationType, _contextAnnotations, _declaredType, _dynamicSerializers, _field, _includeInViews, _internalSettings, _member, _name, _nonTrivialBaseType, _nullSerializer, _serializer, _suppressableValue, _suppressNulls, _typeSerializer, _wrapperName, MARKER_FOR_EMPTY
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
OptimizedBeanPropertyWriter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter src, com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)
protected
OptimizedBeanPropertyWriter(OptimizedBeanPropertyWriter<?> base, com.fasterxml.jackson.databind.PropertyName name)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
_handleProblem(java.lang.Object bean, com.fasterxml.jackson.core.JsonGenerator gen, com.fasterxml.jackson.databind.SerializerProvider prov, java.lang.Throwable t, boolean element)
protected abstract com.fasterxml.jackson.databind.ser.BeanPropertyWriter
_new(com.fasterxml.jackson.databind.PropertyName newName)
protected void
_reportProblem(java.lang.Object bean, java.lang.Throwable e)
void
assignNullSerializer(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> nullSer)
void
assignSerializer(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)
void
assignTypeSerializer(com.fasterxml.jackson.databind.jsontype.TypeSerializer typeSer)
abstract void
serializeAsElement(java.lang.Object bean, com.fasterxml.jackson.core.JsonGenerator jgen, com.fasterxml.jackson.databind.SerializerProvider prov)
abstract void
serializeAsField(java.lang.Object bean, com.fasterxml.jackson.core.JsonGenerator jgen, com.fasterxml.jackson.databind.SerializerProvider prov)
private com.fasterxml.jackson.databind.ser.BeanPropertyWriter
unwrapFallbackWriter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter srcIn)
abstract com.fasterxml.jackson.databind.ser.BeanPropertyWriter
withSerializer(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)
-
Methods inherited from class com.fasterxml.jackson.databind.ser.BeanPropertyWriter
_depositSchemaProperty, _findAndAddDynamic, _handleSelfReference, depositSchemaProperty, depositSchemaProperty, fixAccess, get, getAnnotation, getContextAnnotation, getFullName, getGenericPropertyType, getInternalSetting, getMember, getName, getPropertyType, getRawSerializationType, getSerializationType, getSerializedName, getSerializer, getType, getTypeSerializer, getViews, getWrapperName, hasNullSerializer, hasSerializer, isUnwrapping, removeInternalSetting, rename, serializeAsOmittedField, serializeAsPlaceholder, setInternalSetting, setNonTrivialBaseType, toString, unwrappingWriter, willSuppressNulls, wouldConflictWithName
-
-
-
-
Field Detail
-
_fastName
protected final com.fasterxml.jackson.core.SerializableString _fastName
Locally stored version of efficiently serializable name. Used to work around earlier problems with typing between interface, implementation
-
fallbackWriter
protected final com.fasterxml.jackson.databind.ser.BeanPropertyWriter fallbackWriter
-
broken
protected boolean broken
-
-
Constructor Detail
-
OptimizedBeanPropertyWriter
protected OptimizedBeanPropertyWriter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter src, com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)
-
OptimizedBeanPropertyWriter
protected OptimizedBeanPropertyWriter(OptimizedBeanPropertyWriter<?> base, com.fasterxml.jackson.databind.PropertyName name)
-
-
Method Detail
-
unwrapFallbackWriter
private com.fasterxml.jackson.databind.ser.BeanPropertyWriter unwrapFallbackWriter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter srcIn)
-
_new
protected abstract com.fasterxml.jackson.databind.ser.BeanPropertyWriter _new(com.fasterxml.jackson.databind.PropertyName newName)
- Overrides:
_new
in classcom.fasterxml.jackson.databind.ser.BeanPropertyWriter
-
assignTypeSerializer
public void assignTypeSerializer(com.fasterxml.jackson.databind.jsontype.TypeSerializer typeSer)
- Overrides:
assignTypeSerializer
in classcom.fasterxml.jackson.databind.ser.BeanPropertyWriter
-
assignSerializer
public void assignSerializer(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)
- Overrides:
assignSerializer
in classcom.fasterxml.jackson.databind.ser.BeanPropertyWriter
-
assignNullSerializer
public void assignNullSerializer(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> nullSer)
- Overrides:
assignNullSerializer
in classcom.fasterxml.jackson.databind.ser.BeanPropertyWriter
-
withSerializer
public abstract com.fasterxml.jackson.databind.ser.BeanPropertyWriter withSerializer(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)
-
serializeAsField
public abstract void serializeAsField(java.lang.Object bean, com.fasterxml.jackson.core.JsonGenerator jgen, com.fasterxml.jackson.databind.SerializerProvider prov) throws java.lang.Exception
- Overrides:
serializeAsField
in classcom.fasterxml.jackson.databind.ser.BeanPropertyWriter
- Throws:
java.lang.Exception
-
serializeAsElement
public abstract void serializeAsElement(java.lang.Object bean, com.fasterxml.jackson.core.JsonGenerator jgen, com.fasterxml.jackson.databind.SerializerProvider prov) throws java.lang.Exception
- Overrides:
serializeAsElement
in classcom.fasterxml.jackson.databind.ser.BeanPropertyWriter
- Throws:
java.lang.Exception
-
_handleProblem
protected void _handleProblem(java.lang.Object bean, com.fasterxml.jackson.core.JsonGenerator gen, com.fasterxml.jackson.databind.SerializerProvider prov, java.lang.Throwable t, boolean element) throws java.lang.Exception
- Throws:
java.lang.Exception
-
_reportProblem
protected void _reportProblem(java.lang.Object bean, java.lang.Throwable e)
-
-