Class GuavaCacheDeserializer<T extends com.google.common.cache.Cache<java.lang.Object,java.lang.Object>>
- java.lang.Object
-
- com.fasterxml.jackson.databind.JsonDeserializer<T>
-
- com.fasterxml.jackson.databind.deser.std.StdDeserializer<T>
-
- com.fasterxml.jackson.datatype.guava.deser.cache.GuavaCacheDeserializer<T>
-
- All Implemented Interfaces:
com.fasterxml.jackson.databind.deser.ContextualDeserializer
,com.fasterxml.jackson.databind.deser.NullValueProvider
,com.fasterxml.jackson.databind.deser.ValueInstantiator.Gettable
,java.io.Serializable
- Direct Known Subclasses:
SimpleCacheDeserializer
public abstract class GuavaCacheDeserializer<T extends com.google.common.cache.Cache<java.lang.Object,java.lang.Object>> extends com.fasterxml.jackson.databind.deser.std.StdDeserializer<T> implements com.fasterxml.jackson.databind.deser.ContextualDeserializer
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private com.fasterxml.jackson.databind.JsonDeserializer<?>
elementDeserializer
private com.fasterxml.jackson.databind.jsontype.TypeDeserializer
elementTypeDeserializer
private com.fasterxml.jackson.databind.KeyDeserializer
keyDeserializer
private com.fasterxml.jackson.databind.deser.NullValueProvider
nullProvider
private static long
serialVersionUID
private boolean
skipNullValues
private com.fasterxml.jackson.databind.type.MapLikeType
type
-
Constructor Summary
Constructors Constructor Description GuavaCacheDeserializer(com.fasterxml.jackson.databind.type.MapLikeType type, com.fasterxml.jackson.databind.KeyDeserializer keyDeserializer, com.fasterxml.jackson.databind.jsontype.TypeDeserializer elementTypeDeserializer, com.fasterxml.jackson.databind.JsonDeserializer<?> elementDeserializer)
GuavaCacheDeserializer(com.fasterxml.jackson.databind.type.MapLikeType type, com.fasterxml.jackson.databind.KeyDeserializer keyDeserializer, com.fasterxml.jackson.databind.jsontype.TypeDeserializer elementTypeDeserializer, com.fasterxml.jackson.databind.JsonDeserializer<?> elementDeserializer, com.fasterxml.jackson.databind.deser.NullValueProvider nvp)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract com.fasterxml.jackson.databind.JsonDeserializer<?>
_createContextual(com.fasterxml.jackson.databind.type.MapLikeType t, com.fasterxml.jackson.databind.KeyDeserializer kd, com.fasterxml.jackson.databind.jsontype.TypeDeserializer vtd, com.fasterxml.jackson.databind.JsonDeserializer<?> vd, com.fasterxml.jackson.databind.deser.NullValueProvider np)
protected void
_tryToAddNull(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, T cache, java.lang.Object key)
Some/many Guava containers do not allow addition ofnull
values, so isolate handling here.protected abstract T
createCache()
com.fasterxml.jackson.databind.JsonDeserializer<?>
createContextual(com.fasterxml.jackson.databind.DeserializationContext ctxt, com.fasterxml.jackson.databind.BeanProperty property)
T
deserialize(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt)
private T
deserializeContents(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt)
private void
expect(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.core.JsonToken token)
com.fasterxml.jackson.databind.type.LogicalType
logicalType()
-
Methods inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer
_byteOverflow, _checkBooleanToStringCoercion, _checkCoercionFail, _checkDoubleSpecialValue, _checkFloatSpecialValue, _checkFloatToIntCoercion, _checkFloatToStringCoercion, _checkFromStringCoercion, _checkFromStringCoercion, _checkIntToFloatCoercion, _checkIntToStringCoercion, _checkTextualNull, _checkToStringCoercion, _coerceBooleanFromInt, _coercedTypeDesc, _coercedTypeDesc, _coerceEmptyString, _coerceIntegral, _coerceNullToken, _coerceTextualNull, _deserializeFromArray, _deserializeFromEmpty, _deserializeFromEmptyString, _deserializeFromString, _deserializeWrappedValue, _failDoubleToIntCoercion, _findCoercionFromBlankString, _findCoercionFromEmptyArray, _findCoercionFromEmptyString, _findNullProvider, _hasTextualNull, _intOverflow, _isBlank, _isEmptyOrTextualNull, _isFalse, _isIntNumber, _isNaN, _isNegInf, _isPosInf, _isTrue, _neitherNull, _nonNullNumber, _parseBoolean, _parseBooleanFromInt, _parseBooleanPrimitive, _parseBooleanPrimitive, _parseBytePrimitive, _parseDate, _parseDate, _parseDateFromArray, _parseDouble, _parseDouble, _parseDoublePrimitive, _parseDoublePrimitive, _parseDoublePrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseInteger, _parseInteger, _parseIntPrimitive, _parseIntPrimitive, _parseLong, _parseLong, _parseLongPrimitive, _parseLongPrimitive, _parseShortPrimitive, _parseString, _parseString, _reportFailedNullCoerce, _shortOverflow, _verifyEndArrayForSingle, _verifyNullForPrimitive, _verifyNullForPrimitiveCoercion, _verifyNullForScalarCoercion, _verifyNumberForScalarCoercion, _verifyStringForScalarCoercion, deserializeWithType, findContentNullProvider, findContentNullStyle, findConvertingContentDeserializer, findDeserializer, findFormatFeature, findFormatOverrides, findValueNullProvider, getValueClass, getValueInstantiator, getValueType, getValueType, handledType, handleMissingEndArrayForSingle, handleNestedArrayForSingle, handleUnknownProperty, isDefaultDeserializer, isDefaultKeyDeserializer
-
Methods inherited from class com.fasterxml.jackson.databind.JsonDeserializer
deserialize, deserializeWithType, findBackReference, getAbsentValue, getDelegatee, getEmptyAccessPattern, getEmptyValue, getEmptyValue, getKnownPropertyNames, getNullAccessPattern, getNullValue, getNullValue, getObjectIdReader, isCachable, replaceDelegatee, supportsUpdate, unwrappingDeserializer
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
type
private final com.fasterxml.jackson.databind.type.MapLikeType type
-
keyDeserializer
private final com.fasterxml.jackson.databind.KeyDeserializer keyDeserializer
-
elementTypeDeserializer
private final com.fasterxml.jackson.databind.jsontype.TypeDeserializer elementTypeDeserializer
-
elementDeserializer
private final com.fasterxml.jackson.databind.JsonDeserializer<?> elementDeserializer
-
nullProvider
private final com.fasterxml.jackson.databind.deser.NullValueProvider nullProvider
-
skipNullValues
private final boolean skipNullValues
-
-
Constructor Detail
-
GuavaCacheDeserializer
public GuavaCacheDeserializer(com.fasterxml.jackson.databind.type.MapLikeType type, com.fasterxml.jackson.databind.KeyDeserializer keyDeserializer, com.fasterxml.jackson.databind.jsontype.TypeDeserializer elementTypeDeserializer, com.fasterxml.jackson.databind.JsonDeserializer<?> elementDeserializer)
-
GuavaCacheDeserializer
public GuavaCacheDeserializer(com.fasterxml.jackson.databind.type.MapLikeType type, com.fasterxml.jackson.databind.KeyDeserializer keyDeserializer, com.fasterxml.jackson.databind.jsontype.TypeDeserializer elementTypeDeserializer, com.fasterxml.jackson.databind.JsonDeserializer<?> elementDeserializer, com.fasterxml.jackson.databind.deser.NullValueProvider nvp)
-
-
Method Detail
-
createContextual
public com.fasterxml.jackson.databind.JsonDeserializer<?> createContextual(com.fasterxml.jackson.databind.DeserializationContext ctxt, com.fasterxml.jackson.databind.BeanProperty property) throws com.fasterxml.jackson.databind.JsonMappingException
- Specified by:
createContextual
in interfacecom.fasterxml.jackson.databind.deser.ContextualDeserializer
- Throws:
com.fasterxml.jackson.databind.JsonMappingException
-
createCache
protected abstract T createCache()
-
_createContextual
protected abstract com.fasterxml.jackson.databind.JsonDeserializer<?> _createContextual(com.fasterxml.jackson.databind.type.MapLikeType t, com.fasterxml.jackson.databind.KeyDeserializer kd, com.fasterxml.jackson.databind.jsontype.TypeDeserializer vtd, com.fasterxml.jackson.databind.JsonDeserializer<?> vd, com.fasterxml.jackson.databind.deser.NullValueProvider np)
-
logicalType
public com.fasterxml.jackson.databind.type.LogicalType logicalType()
- Overrides:
logicalType
in classcom.fasterxml.jackson.databind.JsonDeserializer<T extends com.google.common.cache.Cache<java.lang.Object,java.lang.Object>>
-
deserialize
public T deserialize(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt) throws java.io.IOException
- Specified by:
deserialize
in classcom.fasterxml.jackson.databind.JsonDeserializer<T extends com.google.common.cache.Cache<java.lang.Object,java.lang.Object>>
- Throws:
java.io.IOException
-
deserializeContents
private T deserializeContents(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt) throws java.io.IOException
- Throws:
java.io.IOException
-
expect
private void expect(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.core.JsonToken token) throws java.io.IOException
- Throws:
java.io.IOException
-
_tryToAddNull
protected void _tryToAddNull(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, T cache, java.lang.Object key) throws java.io.IOException
Some/many Guava containers do not allow addition ofnull
values, so isolate handling here.- Throws:
java.io.IOException
- Since:
- 2.17
-
-