public class PropertyBuilder extends Object
BeanSerializerFactory that is used to
 construct BeanPropertyWriter instances. Can be sub-classed
 to change behavior.| Modifier and Type | Field and Description | 
|---|---|
| protected AnnotationIntrospector | _annotationIntrospector | 
| protected BeanDescription | _beanDesc | 
| protected SerializationConfig | _config | 
| protected Object | _defaultBeanIf a property has serialization inclusion value of
  JsonInclude.Include.NON_DEFAULT,
 we may need to know the default value of the bean, to know if property value
 equals default one. | 
| protected JsonInclude.Value | _defaultInclusionDefault inclusion mode for properties of the POJO for which
 properties are collected; possibly overridden on
 per-property basis. | 
| protected boolean | _useRealPropertyDefaultsMarker flag used to indicate that "real" default values are to be used
 for properties, as per per-type value inclusion of type  NON_DEFAULT | 
| Constructor and Description | 
|---|
| PropertyBuilder(SerializationConfig config,
               BeanDescription beanDesc) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected Object | _throwWrapped(Exception e,
             String propName,
             Object defaultBean) | 
| protected BeanPropertyWriter | buildWriter(SerializerProvider prov,
           BeanPropertyDefinition propDef,
           JavaType declaredType,
           JsonSerializer<?> ser,
           TypeSerializer typeSer,
           TypeSerializer contentTypeSer,
           AnnotatedMember am,
           boolean defaultUseStaticTyping) | 
| protected JavaType | findSerializationType(Annotated a,
                     boolean useStaticTyping,
                     JavaType declaredType)Method that will try to determine statically defined type of property
 being serialized, based on annotations (for overrides), and alternatively
 declared type (if static typing for serialization is enabled). | 
| Annotations | getClassAnnotations() | 
| protected Object | getDefaultBean() | 
| protected Object | getDefaultValue(JavaType type)Deprecated. 
 Since 2.9 | 
| protected Object | getPropertyDefaultValue(String name,
                       AnnotatedMember member,
                       JavaType type)Deprecated. 
 Since 2.9 since this will not allow determining difference between "no default instance"
    case and default being `null`. | 
protected final SerializationConfig _config
protected final BeanDescription _beanDesc
protected final AnnotationIntrospector _annotationIntrospector
protected Object _defaultBean
JsonInclude.Include.NON_DEFAULT,
 we may need to know the default value of the bean, to know if property value
 equals default one.
NOTE: only used if enclosing class defines NON_DEFAULT, but NOT if it is the global default OR per-property override.
protected final JsonInclude.Value _defaultInclusion
protected final boolean _useRealPropertyDefaults
NON_DEFAULTpublic PropertyBuilder(SerializationConfig config, BeanDescription beanDesc)
public Annotations getClassAnnotations()
protected BeanPropertyWriter buildWriter(SerializerProvider prov, BeanPropertyDefinition propDef, JavaType declaredType, JsonSerializer<?> ser, TypeSerializer typeSer, TypeSerializer contentTypeSer, AnnotatedMember am, boolean defaultUseStaticTyping) throws JsonMappingException
contentTypeSer - Optional explicit type information serializer
    to use for contained values (only used for properties that are
    of container type)JsonMappingExceptionprotected JavaType findSerializationType(Annotated a, boolean useStaticTyping, JavaType declaredType) throws JsonMappingException
JsonMappingExceptionprotected Object getDefaultBean()
@Deprecated protected Object getPropertyDefaultValue(String name, AnnotatedMember member, JavaType type)
JsonInclude.Include.NON_DEFAULT.
 This method is called when we specifically want to know default value within context
 of a POJO, when annotation is within containing class, and not for property or
 defined as global baseline.
 Note that returning of pseudo-type
 JsonInclude.Include.NON_EMPTY requires special handling.
@Deprecated protected Object getDefaultValue(JavaType type)
Copyright © 2008–2020 FasterXML. All rights reserved.