public class BeanDeserializerBuilder
extends java.lang.Object
JsonDeserializer
for deserializing
instances.Constructor and Description |
---|
BeanDeserializerBuilder(BeanDescription beanDesc,
DeserializationContext ctxt) |
Modifier and Type | Method and Description |
---|---|
void |
addBackReferenceProperty(java.lang.String referenceName,
SettableBeanProperty prop)
Method called to add a property that represents so-called back reference;
reference that "points back" to object that has forward reference to
currently built bean.
|
void |
addCreatorProperty(SettableBeanProperty prop)
Method called by deserializer factory, when a "creator property"
(something that is passed via constructor- or factory method argument;
instead of setter or field).
|
void |
addIgnorable(java.lang.String propName)
Method that will add property name as one of properties that can
be ignored if not recognized.
|
void |
addInjectable(PropertyName propName,
JavaType propType,
Annotations contextAnnotations,
AnnotatedMember member,
java.lang.Object valueId) |
void |
addOrReplaceProperty(SettableBeanProperty prop,
boolean allowOverride)
Method for adding a new property or replacing a property.
|
void |
addProperty(SettableBeanProperty prop)
Method to add a property setter.
|
JsonDeserializer<?> |
build()
Method for constructing a
BeanDeserializer , given all
information collected. |
AbstractDeserializer |
buildAbstract()
Alternate build method used when we must be using some form of
abstract resolution, usually by using addition Type Id
("polymorphic deserialization")
|
JsonDeserializer<?> |
buildBuilderBased(JavaType valueType,
java.lang.String expBuildMethodName)
Method for constructing a specialized deserializer that uses
additional external Builder object during data binding.
|
SettableBeanProperty |
findProperty(PropertyName propertyName) |
SettableAnyProperty |
getAnySetter() |
JsonPOJOBuilder.Value |
getBuilderConfig() |
AnnotatedMethod |
getBuildMethod() |
java.util.List<ValueInjector> |
getInjectables() |
ObjectIdReader |
getObjectIdReader() |
java.util.Iterator<SettableBeanProperty> |
getProperties()
Method that allows accessing all properties that this
builder currently contains.
|
ValueInstantiator |
getValueInstantiator() |
boolean |
hasIgnorable(java.lang.String name) |
boolean |
hasProperty(PropertyName propertyName) |
SettableBeanProperty |
removeProperty(PropertyName name) |
void |
setAnySetter(SettableAnyProperty s) |
void |
setIgnoreUnknownProperties(boolean ignore) |
void |
setObjectIdReader(ObjectIdReader r) |
void |
setPOJOBuilder(AnnotatedMethod buildMethod,
JsonPOJOBuilder.Value config) |
void |
setValueInstantiator(ValueInstantiator inst) |
public BeanDeserializerBuilder(BeanDescription beanDesc, DeserializationContext ctxt)
public void addOrReplaceProperty(SettableBeanProperty prop, boolean allowOverride)
public void addProperty(SettableBeanProperty prop)
IllegalArgumentException
.public void addBackReferenceProperty(java.lang.String referenceName, SettableBeanProperty prop)
public void addInjectable(PropertyName propName, JavaType propType, Annotations contextAnnotations, AnnotatedMember member, java.lang.Object valueId)
public void addIgnorable(java.lang.String propName)
public void addCreatorProperty(SettableBeanProperty prop)
Default implementation does not do anything; we may need to revisit this decision if these properties need to be available through accessors. For now, however, we just have to ensure that we don't try to resolve types that masked setter/field has (see [JACKSON-700] for details).
public void setAnySetter(SettableAnyProperty s)
public void setIgnoreUnknownProperties(boolean ignore)
public void setValueInstantiator(ValueInstantiator inst)
public void setObjectIdReader(ObjectIdReader r)
public void setPOJOBuilder(AnnotatedMethod buildMethod, JsonPOJOBuilder.Value config)
public java.util.Iterator<SettableBeanProperty> getProperties()
Note that properties are returned in order that properties are ordered (explictly, or by rule), which is the serialization order.
public SettableBeanProperty findProperty(PropertyName propertyName)
public boolean hasProperty(PropertyName propertyName)
public SettableBeanProperty removeProperty(PropertyName name)
public SettableAnyProperty getAnySetter()
public ValueInstantiator getValueInstantiator()
public java.util.List<ValueInjector> getInjectables()
public ObjectIdReader getObjectIdReader()
public AnnotatedMethod getBuildMethod()
public JsonPOJOBuilder.Value getBuilderConfig()
public boolean hasIgnorable(java.lang.String name)
public JsonDeserializer<?> build()
BeanDeserializer
, given all
information collected.public AbstractDeserializer buildAbstract()
public JsonDeserializer<?> buildBuilderBased(JavaType valueType, java.lang.String expBuildMethodName) throws JsonMappingException
JsonMappingException
"Copyright © 2010 - 2020 Adobe Systems Incorporated. All Rights Reserved"