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.DateBasedDeserializer
,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.PrimitiveOrWrapperDeserializer
,NumberDeserializers.ShortDeserializer
,ObjectArrayDeserializer
,PrimitiveArrayDeserializers
,ReferenceTypeDeserializer
,StackTraceElementDeserializer
,StdDelegatingDeserializer
,StdDeserializer
,StdNodeBasedDeserializer
,StdScalarDeserializer
,StringArrayDeserializer
,StringCollectionDeserializer
,StringDeserializer
,ThrowableDeserializer
,TokenBufferDeserializer
,TypeWrappedDeserializer
,UnsupportedTypeDeserializer
,UntypedObjectDeserializer
,UntypedObjectDeserializer.Vanilla
,UUIDDeserializer
public interface NullValueProvider
Helper interface implemented by classes that are to be used as
null providers during deserialization. Most importantly implemented by
JsonDeserializer
(as a mix-in
interface), but also by converters used to support more configurable
null replacement.- Since:
- 2.9
-
Method Summary
Modifier and TypeMethodDescriptiondefault Object
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.Accessor that may be used to determine if and when provider must be called to access null replacement value.Method called to possibly convert incoming `null` token (read via underlying streaming input source) into other value of type accessor supports.
-
Method Details
-
getNullValue
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
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(edu.internet2.middleware.grouperClientExt.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(edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.DeserializationContext)
.- Throws:
JsonMappingException
- Since:
- 2.13
-