public class SettableBeanPropertyDelegate
extends com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
SettableBeanProperty delegate that is always tried first.
A fall-back mechanism is implemented in the deserializeAndSet methods to allow field values that don't match the target type to be preserved in the anySetter method if exists.
delegate_contextAnnotations, _managedReferenceName, _nullProvider, _objectIdInfo, _propertyIndex, _propName, _type, _valueDeserializer, _valueTypeDeserializer, _viewMatcher, _wrapperName, MISSING_VALUE_DESERIALIZER| Modifier and Type | Method and Description |
|---|---|
void |
depositSchemaProperty(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonObjectFormatVisitor objectVisitor,
com.fasterxml.jackson.databind.SerializerProvider provider) |
void |
deserializeAndSet(com.fasterxml.jackson.core.JsonParser p,
com.fasterxml.jackson.databind.DeserializationContext ctxt,
Object instance)
Method called to deserialize appropriate value, given parser (and context), and set it using appropriate mechanism.
|
Object |
deserializeSetAndReturn(com.fasterxml.jackson.core.JsonParser p,
com.fasterxml.jackson.databind.DeserializationContext ctxt,
Object instance) |
<A extends Annotation> |
getContextAnnotation(Class<A> acls) |
com.fasterxml.jackson.databind.PropertyName |
getFullName() |
com.fasterxml.jackson.databind.deser.NullValueProvider |
getNullValueProvider() |
com.fasterxml.jackson.databind.JavaType |
getType() |
com.fasterxml.jackson.databind.PropertyName |
getWrapperName() |
boolean |
isIgnorable() |
void |
markAsIgnorable() |
void |
setManagedReferenceName(String n) |
void |
setObjectIdInfo(com.fasterxml.jackson.databind.introspect.ObjectIdInfo objectIdInfo) |
void |
setViews(Class<?>[] views) |
String |
toString() |
protected com.fasterxml.jackson.databind.deser.SettableBeanProperty |
withDelegate(com.fasterxml.jackson.databind.deser.SettableBeanProperty d) |
com.fasterxml.jackson.databind.deser.SettableBeanProperty |
withSimpleName(String simpleName) |
_with, assignIndex, fixAccess, getAnnotation, getCreatorIndex, getDeclaringClass, getDelegate, getInjectableValueId, getManagedReferenceName, getMember, getObjectIdInfo, getPropertyIndex, getValueDeserializer, getValueTypeDeserializer, hasValueDeserializer, hasValueTypeDeserializer, hasViews, isInjectionOnly, set, setAndReturn, visibleInView, withName, withNullProvider, withValueDeserializer_throwAsIOE, _throwAsIOE, _throwAsIOE, _throwAsIOE, deserialize, deserializeWith, getNameprotected com.fasterxml.jackson.databind.deser.SettableBeanProperty withDelegate(com.fasterxml.jackson.databind.deser.SettableBeanProperty d)
withDelegate in class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegatingpublic void markAsIgnorable()
markAsIgnorable in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic boolean isIgnorable()
isIgnorable in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic void setViews(Class<?>[] views)
setViews in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic <A extends Annotation> A getContextAnnotation(Class<A> acls)
getContextAnnotation in interface com.fasterxml.jackson.databind.BeanPropertygetContextAnnotation in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic com.fasterxml.jackson.databind.PropertyName getWrapperName()
getWrapperName in interface com.fasterxml.jackson.databind.BeanPropertygetWrapperName in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic com.fasterxml.jackson.databind.deser.NullValueProvider getNullValueProvider()
getNullValueProvider in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic void depositSchemaProperty(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonObjectFormatVisitor objectVisitor,
com.fasterxml.jackson.databind.SerializerProvider provider)
throws com.fasterxml.jackson.databind.JsonMappingException
depositSchemaProperty in interface com.fasterxml.jackson.databind.BeanPropertydepositSchemaProperty in class com.fasterxml.jackson.databind.deser.SettableBeanPropertycom.fasterxml.jackson.databind.JsonMappingExceptionpublic com.fasterxml.jackson.databind.JavaType getType()
getType in interface com.fasterxml.jackson.databind.BeanPropertygetType in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic com.fasterxml.jackson.databind.PropertyName getFullName()
getFullName in interface com.fasterxml.jackson.databind.BeanPropertygetFullName in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic void setManagedReferenceName(String n)
setManagedReferenceName in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic com.fasterxml.jackson.databind.deser.SettableBeanProperty withSimpleName(String simpleName)
withSimpleName in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic void setObjectIdInfo(com.fasterxml.jackson.databind.introspect.ObjectIdInfo objectIdInfo)
setObjectIdInfo in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic String toString()
toString in class com.fasterxml.jackson.databind.deser.SettableBeanPropertypublic void deserializeAndSet(com.fasterxml.jackson.core.JsonParser p,
com.fasterxml.jackson.databind.DeserializationContext ctxt,
Object instance)
throws IOException
Deserialization is first tried through the delegate. In case a MismatchedInputException is caught,
the field is stored in the bean's SettableAnyProperty anySetter field if it exists.
This allows deserialization processes propagate values that initially don't match the target bean type for the applicable field.
An example use-case is the use of placeholders (e.g. ${aValue}) in a field.
deserializeAndSet in class com.fasterxml.jackson.databind.deser.SettableBeanProperty.DelegatingIOExceptionpublic Object deserializeSetAndReturn(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, Object instance) throws IOException
deserializeSetAndReturn in class com.fasterxml.jackson.databind.deser.SettableBeanProperty.DelegatingIOExceptionCopyright © 2015–2025 Red Hat. All rights reserved.