Top Description Methods
com.fasterxml.jackson.databind.deser

public Interface NullValueProvider

Known Direct Implementers
com.fasterxml.jackson.databind.deser.impl.NullsAsEmptyProvider, com.fasterxml.jackson.databind.deser.impl.NullsConstantProvider, com.fasterxml.jackson.databind.deser.impl.NullsFailProvider, com.fasterxml.jackson.databind.JsonDeserializer
Imports
com.fasterxml.jackson.databind.DeserializationContext, .JsonMappingException, com.fasterxml.jackson.databind.util.AccessPattern

Helper interface implemented by classes that are to be used as null providers during deserialization. Most importantly implemented by com.fasterxml.jackson.databind.JsonDeserializer (as a mix-in interface), but also by converters used to support more configurable null replacement.
Since
2.9

Method Summary

Modifier and TypeMethod and Description
public default Object
getAbsentValue(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.

public AccessPattern
getNullAccessPattern()

Accessor that may be used to determine if and when provider must be called to access null replacement value.

public Object
getNullValue(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

getAbsentValueback to summary
public default 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 as getNullValue (which in turn is usually simply Java null), 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.

Since
2.13
getNullAccessPatternback to summary
public AccessPattern getNullAccessPattern()

Accessor that may be used to determine if and when provider must be called to access null replacement value.

getNullValueback to summary
public 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`.