Class SettableBeanPropertyDelegating
- java.lang.Object
-
- com.fasterxml.jackson.databind.introspect.ConcreteBeanPropertyBase
-
- com.fasterxml.jackson.databind.deser.SettableBeanProperty
-
- com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
-
- io.fabric8.kubernetes.model.jackson.SettableBeanPropertyDelegating
-
- All Implemented Interfaces:
com.fasterxml.jackson.databind.BeanProperty,com.fasterxml.jackson.databind.util.Named,Serializable
public class SettableBeanPropertyDelegating extends com.fasterxml.jackson.databind.deser.SettableBeanProperty.DelegatingThis concrete subclass encapsulates aSettableBeanPropertydelegate 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.
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
delegate
-
Fields inherited from class com.fasterxml.jackson.databind.deser.SettableBeanProperty
_contextAnnotations, _managedReferenceName, _nullProvider, _objectIdInfo, _propertyIndex, _propName, _type, _valueDeserializer, _valueTypeDeserializer, _viewMatcher, _wrapperName, MISSING_VALUE_DESERIALIZER
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddepositSchemaProperty(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonObjectFormatVisitor objectVisitor, com.fasterxml.jackson.databind.SerializerProvider provider)voiddeserializeAndSet(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.ObjectdeserializeSetAndReturn(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, Object instance)<A extends Annotation>
AgetContextAnnotation(Class<A> acls)com.fasterxml.jackson.databind.PropertyNamegetFullName()com.fasterxml.jackson.databind.deser.NullValueProvidergetNullValueProvider()com.fasterxml.jackson.databind.JavaTypegetType()com.fasterxml.jackson.databind.PropertyNamegetWrapperName()booleanisIgnorable()booleanisMerging()voidmarkAsIgnorable()voidsetManagedReferenceName(String n)voidsetObjectIdInfo(com.fasterxml.jackson.databind.introspect.ObjectIdInfo objectIdInfo)voidsetViews(Class<?>[] views)StringtoString()com.fasterxml.jackson.databind.deser.SettableBeanPropertyunwrapped(com.fasterxml.jackson.databind.util.NameTransformer unwrapper)protected com.fasterxml.jackson.databind.deser.SettableBeanPropertywithDelegate(com.fasterxml.jackson.databind.deser.SettableBeanProperty d)com.fasterxml.jackson.databind.deser.SettableBeanPropertywithSimpleName(String simpleName)-
Methods inherited from class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
_with, assignIndex, fixAccess, getAnnotation, getCreatorIndex, getDeclaringClass, getDelegate, getInjectableValueId, getManagedReferenceName, getMember, getObjectIdInfo, getPropertyIndex, getValueDeserializer, getValueTypeDeserializer, hasValueDeserializer, hasValueTypeDeserializer, hasViews, isInjectionOnly, set, setAndReturn, visibleInView, withName, withNullProvider, withValueDeserializer
-
Methods inherited from class com.fasterxml.jackson.databind.deser.SettableBeanProperty
_throwAsIOE, _throwAsIOE, _throwAsIOE, _throwAsIOE, deserialize, deserializeWith, getName
-
-
-
-
Method Detail
-
withDelegate
protected com.fasterxml.jackson.databind.deser.SettableBeanProperty withDelegate(com.fasterxml.jackson.databind.deser.SettableBeanProperty d)
- Specified by:
withDelegatein classcom.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
-
markAsIgnorable
public void markAsIgnorable()
- Overrides:
markAsIgnorablein classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
isMerging
public boolean isMerging()
- Overrides:
isMergingin classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
isIgnorable
public boolean isIgnorable()
- Overrides:
isIgnorablein classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
setViews
public void setViews(Class<?>[] views)
- Overrides:
setViewsin classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
getContextAnnotation
public <A extends Annotation> A getContextAnnotation(Class<A> acls)
- Specified by:
getContextAnnotationin interfacecom.fasterxml.jackson.databind.BeanProperty- Overrides:
getContextAnnotationin classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
getWrapperName
public com.fasterxml.jackson.databind.PropertyName getWrapperName()
- Specified by:
getWrapperNamein interfacecom.fasterxml.jackson.databind.BeanProperty- Overrides:
getWrapperNamein classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
getNullValueProvider
public com.fasterxml.jackson.databind.deser.NullValueProvider getNullValueProvider()
- Overrides:
getNullValueProviderin classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
depositSchemaProperty
public void depositSchemaProperty(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonObjectFormatVisitor objectVisitor, com.fasterxml.jackson.databind.SerializerProvider provider) throws com.fasterxml.jackson.databind.JsonMappingException- Specified by:
depositSchemaPropertyin interfacecom.fasterxml.jackson.databind.BeanProperty- Overrides:
depositSchemaPropertyin classcom.fasterxml.jackson.databind.deser.SettableBeanProperty- Throws:
com.fasterxml.jackson.databind.JsonMappingException
-
getType
public com.fasterxml.jackson.databind.JavaType getType()
- Specified by:
getTypein interfacecom.fasterxml.jackson.databind.BeanProperty- Overrides:
getTypein classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
getFullName
public com.fasterxml.jackson.databind.PropertyName getFullName()
- Specified by:
getFullNamein interfacecom.fasterxml.jackson.databind.BeanProperty- Overrides:
getFullNamein classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
setManagedReferenceName
public void setManagedReferenceName(String n)
- Overrides:
setManagedReferenceNamein classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
withSimpleName
public com.fasterxml.jackson.databind.deser.SettableBeanProperty withSimpleName(String simpleName)
- Overrides:
withSimpleNamein classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
unwrapped
public com.fasterxml.jackson.databind.deser.SettableBeanProperty unwrapped(com.fasterxml.jackson.databind.util.NameTransformer unwrapper)
- Overrides:
unwrappedin classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
setObjectIdInfo
public void setObjectIdInfo(com.fasterxml.jackson.databind.introspect.ObjectIdInfo objectIdInfo)
- Overrides:
setObjectIdInfoin classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
toString
public String toString()
- Overrides:
toStringin classcom.fasterxml.jackson.databind.deser.SettableBeanProperty
-
deserializeAndSet
public void deserializeAndSet(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, Object instance) throws IOExceptionMethod called to deserialize appropriate value, given parser (and context), and set it using appropriate mechanism.Deserialization is first tried through the delegate. In case a
MismatchedInputExceptionis caught, the field is stored in the bean'sSettableAnyPropertyanySetter 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.- Overrides:
deserializeAndSetin classcom.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating- Throws:
IOException
-
deserializeSetAndReturn
public Object deserializeSetAndReturn(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, Object instance) throws IOException
- Overrides:
deserializeSetAndReturnin classcom.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating- Throws:
IOException
-
-