Interface NullValueProvider
-
- All Known Implementing Classes:
AbstractDeserializer,ArrayBlockingQueueDeserializer,AtomicBooleanDeserializer,AtomicIntegerDeserializer,AtomicLongDeserializer,AtomicReferenceDeserializer,BeanAsArrayBuilderDeserializer,BeanAsArrayDeserializer,BeanDeserializer,BeanDeserializerBase,BuilderBasedDeserializer,ByteBufferDeserializer,CollectionDeserializer,ContainerDeserializerBase,CoreXMLDeserializers.Std,DateDeserializers.CalendarDeserializer,DateDeserializers.DateDeserializer,DateDeserializers.SqlDateDeserializer,DateDeserializers.TimestampDeserializer,DelegatingDeserializer,DOMDeserializer,DOMDeserializer.DocumentDeserializer,DOMDeserializer.NodeDeserializer,EnumDeserializer,EnumMapDeserializer,EnumSetDeserializer,ErrorThrowingDeserializer,FailingDeserializer,FromStringDeserializer,FromStringDeserializer.Std,JsonDeserializer,JsonDeserializer.None,JsonNodeDeserializer,MapDeserializer,MapEntryDeserializer,NioPathDeserializer,NullifyingDeserializer,NullsAsEmptyProvider,NullsConstantProvider,NullsFailProvider,NumberDeserializers.BigDecimalDeserializer,NumberDeserializers.BigIntegerDeserializer,NumberDeserializers.BooleanDeserializer,NumberDeserializers.ByteDeserializer,NumberDeserializers.CharacterDeserializer,NumberDeserializers.DoubleDeserializer,NumberDeserializers.FloatDeserializer,NumberDeserializers.IntegerDeserializer,NumberDeserializers.LongDeserializer,NumberDeserializers.NumberDeserializer,NumberDeserializers.ShortDeserializer,ObjectArrayDeserializer,PrimitiveArrayDeserializers,ReferenceTypeDeserializer,StackTraceElementDeserializer,StdDelegatingDeserializer,StdDeserializer,StdNodeBasedDeserializer,StdScalarDeserializer,StringArrayDeserializer,StringCollectionDeserializer,StringDeserializer,ThrowableDeserializer,TokenBufferDeserializer,TypeWrappedDeserializer,UnsupportedTypeDeserializer,UntypedObjectDeserializer,UntypedObjectDeserializer.Vanilla,UUIDDeserializer
public interface NullValueProviderHelper interface implemented by classes that are to be used as null providers during deserialization. Most importantly implemented byJsonDeserializer(as a mix-in interface), but also by converters used to support more configurable null replacement.- Since:
- 2.9
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default java.lang.ObjectgetAbsentValue(DeserializationContext ctxt)Method called to determine placeholder value to be used for cases where no value was obtained from input but we must pass a value nonetheless: the common case is that of Creator methods requiring passing a value for every parameter.AccessPatterngetNullAccessPattern()Accessor that may be used to determine if and when provider must be called to access null replacement value.java.lang.ObjectgetNullValue(DeserializationContext ctxt)Method called to possibly convert incoming `null` token (read via underlying streaming input source) into other value of type accessor supports.
-
-
-
Method Detail
-
getNullValue
java.lang.Object getNullValue(DeserializationContext ctxt) throws JsonMappingException
Method called to possibly convert incoming `null` token (read via underlying streaming input source) into other value of type accessor supports. May return `null`, or value compatible with type binding.NOTE: if
getNullAccessPattern()returns `ALWAYS_NULL` or `CONSTANT`, this method WILL NOT use provided `ctxt` and it may thus be passed as `null`.- Throws:
JsonMappingException
-
getNullAccessPattern
AccessPattern getNullAccessPattern()
Accessor that may be used to determine if and when provider must be called to access null replacement value.
-
getAbsentValue
default java.lang.Object getAbsentValue(DeserializationContext ctxt) throws JsonMappingException
Method called to determine placeholder value to be used for cases where no value was obtained from input but we must pass a value nonetheless: the common case is that of Creator methods requiring passing a value for every parameter. Usually this is same asgetNullValue(com.fasterxml.jackson.databind.DeserializationContext)(which in turn is usually simply Javanull), but it can be overridden for specific types: most notable scalar types must use "default" values.This method needs to be called every time a determination is made.
Default implementation simply calls and returns
getNullValue(com.fasterxml.jackson.databind.DeserializationContext).- Throws:
JsonMappingException- Since:
- 2.13
-
-