FlatteningDeserializer 類別

  • java.lang.Object
    • com.fasterxml.jackson.databind.JsonDeserializer
      • com.fasterxml.jackson.databind.deser.std.StdDeserializer
        • com.microsoft.bot.restclient.serializer.FlatteningDeserializer

實作

com.fasterxml.jackson.databind.deser.ResolvableDeserializer

public final class FlatteningDeserializer
extends com.fasterxml.jackson.databind.deser.std.StdDeserializer<java.lang.Object>
implements com.fasterxml.jackson.databind.deser.ResolvableDeserializer

使用包裝屬性還原串行化複雜類型的自定義串行化程式。 例如,具有批注的屬性 @JsonProperty(value = “properties.name”) 將會對應至 POJO 模型中的最上層 “name” 屬性。

建構函式摘要

修飾詞 建構函式 Description
protected FlatteningDeserializer(Class<?> vc, JsonDeserializer<?> defaultDeserializer, ObjectMapper mapper)

建立扁平化還原串行化程序的實例。

方法摘要

修飾詞與類型 方法與描述
java.lang.Object deserialize(JsonParser jp, DeserializationContext cxt)
java.lang.Object deserializeWithType(JsonParser jp, DeserializationContext cxt, TypeDeserializer tDeserializer)
static com.fasterxml.jackson.databind.module.SimpleModule getModule(ObjectMapper mapper)

取得將這個串行化程序包裝為 Jackson ObjectMapper 配接器的模組。

void resolve(DeserializationContext cxt)

方法繼承來源 com.fasterxml.jackson.databind.JsonDeserializer

com.fasterxml.jackson.databind.JsonDeserializer.deserialize com.fasterxml.jackson.databind.JsonDeserializer.deserialize com.fasterxml.jackson.databind.JsonDeserializer.deserializeWithType com.fasterxml.jackson.databind.JsonDeserializer.findBackReference com.fasterxml.jackson.databind.JsonDeserializer.getDelegatee com.fasterxml.jackson.databind.JsonDeserializer.getEmptyAccessPattern com.fasterxml.jackson.databind.JsonDeserializer.getEmptyValue com.fasterxml.jackson.databind.JsonDeserializer.getEmptyValue com.fasterxml.jackson.databind.JsonDeserializer.getKnownPropertyNames com.fasterxml.jackson.databind.JsonDeserializer.getNullAccessPattern com.fasterxml.jackson.databind.JsonDeserializer.getNullValue com.fasterxml.jackson.databind.JsonDeserializer.getNullValue com.fasterxml.jackson.databind.JsonDeserializer.getObjectIdReader com.fasterxml.jackson.databind.JsonDeserializer.isCachable com.fasterxml.jackson.databind.JsonDeserializer.logicalType com.fasterxml.jackson.databind.JsonDeserializer.replaceDelegatee(com.fasterxml.jackson.databind.JsonDeserializer< com.fasterxml.jackson.databind.JsonDeserializer.supportsUpdate com.fasterxml.jackson.databind.JsonDeserializer.unwrappingDeserializer

方法繼承來源 com.fasterxml.jackson.databind.deser.std.StdDeserializer

com.fasterxml.jackson.databind.deser.std.StdDeserializer._byteOverflow com.fasterxml.jackson.databind.deser.std.StdDeserializer._checkCoercionFail(com.fasterxml.jackson.databind.DeserializationContext,com.fasterxml.jackson.databind.cfg.CoercionAction,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer._checkDoubleSpecialValue com.fasterxml.jackson.databind.deser.std.StdDeserializer._checkFloatSpecialValue com.fasterxml.jackson.databind.deser.std.StdDeserializer._checkFloatToIntCoercion(com.fasterxml.jackson.core.JsonParser,com.fasterxml.jackson.databind.DeserializationContext,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer._checkFromStringCoercion com.fasterxml.jackson.databind.deser.std.StdDeserializer._checkFromStringCoercion(com.fasterxml.jackson.databind.DeserializationContext,java.lang.String,com.fasterxml.jackson.databind.type.LogicalType,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer._checkTextualNull com.fasterxml.jackson.databind.deser.std.StdDeserializer._coerceBooleanFromInt(com.fasterxml.jackson.core.JsonParser,com.fasterxml.jackson.databind.DeserializationContext,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer._coerceEmptyString com.fasterxml.jackson.databind.deser.std.StdDeserializer._coerceIntegral com.fasterxml.jackson.databind.deser.std.StdDeserializer._coerceNullToken com.fasterxml.jackson.databind.deser.std.StdDeserializer._coerceTextualNull com.fasterxml.jackson.databind.deser.std.StdDeserializer._coercedTypeDesc com.fasterxml.jackson.databind.deser.std.StdDeserializer._deserializeFromArray com.fasterxml.jackson.databind.deser.std.StdDeserializer._deserializeFromEmpty com.fasterxml.jackson.databind.deser.std.StdDeserializer._deserializeFromEmptyString(com.fasterxml.jackson.core.JsonParser,com.fasterxml.jackson.databind.DeserializationContext,com.fasterxml.jackson.databind.cfg.CoercionAction,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer._deserializeFromString com.fasterxml.jackson.databind.deser.std.StdDeserializer._deserializeWrappedValue com.fasterxml.jackson.databind.deser.std.StdDeserializer._failDoubleToIntCoercion com.fasterxml.jackson.databind.deser.std.StdDeserializer._findCoercionFromBlankString com.fasterxml.jackson.databind.deser.std.StdDeserializer._findCoercionFromEmptyArray com.fasterxml.jackson.databind.deser.std.StdDeserializer._findCoercionFromEmptyString com.fasterxml.jackson.databind.deser.std.StdDeserializer._findNullProvider(com.fasterxml.jackson.databind.DeserializationContext,com.fasterxml.jackson.databind.BeanProperty,com.fasterxml.jackson.annotation.Nulls,com.fasterxml.jackson.databind.JsonDeserializer< com.fasterxml.jackson.databind.deser.std.StdDeserializer._hasTextualNull com.fasterxml.jackson.databind.deser.std.StdDeserializer._intOverflow com.fasterxml.jackson.databind.deser.std.StdDeserializer._isBlank com.fasterxml.jackson.databind.deser.std.StdDeserializer._isEmptyOrTextualNull com.fasterxml.jackson.databind.deser.std.StdDeserializer._isFalse com.fasterxml.jackson.databind.deser.std.StdDeserializer._isIntNumber com.fasterxml.jackson.databind.deser.std.StdDeserializer._isNaN com.fasterxml.jackson.databind.deser.std.StdDeserializer._isNegInf com.fasterxml.jackson.databind.deser.std.StdDeserializer._isPosInf com.fasterxml.jackson.databind.deser.std.StdDeserializer._isTrue com.fasterxml.jackson.databind.deser.std.StdDeserializer._neitherNull com.fasterxml.jackson.databind.deser.std.StdDeserializer._nonNullNumber com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseBoolean(com.fasterxml.jackson.core.JsonParser,com.fasterxml.jackson.databind.DeserializationContext,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseBooleanFromInt com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseBooleanPrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseBooleanPrimitive(com.fasterxml.jackson.databind.DeserializationContext,com.fasterxml.jackson.core.JsonParser,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseBytePrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseDate com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseDate com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseDateFromArray com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseDouble com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseDoublePrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseDoublePrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseFloatPrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseFloatPrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseIntPrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseIntPrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseInteger(com.fasterxml.jackson.core.JsonParser,com.fasterxml.jackson.databind.DeserializationContext,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseLong(com.fasterxml.jackson.core.JsonParser,com.fasterxml.jackson.databind.DeserializationContext,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseLongPrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseLongPrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseShortPrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseString com.fasterxml.jackson.databind.deser.std.StdDeserializer._reportFailedNullCoerce(com.fasterxml.jackson.databind.DeserializationContext,boolean,java.lang.Enum< com.fasterxml.jackson.databind.deser.std.StdDeserializer._shortOverflow com.fasterxml.jackson.databind.deser.std.StdDeserializer._verifyEndArrayForSingle com.fasterxml.jackson.databind.deser.std.StdDeserializer._verifyNullForPrimitive com.fasterxml.jackson.databind.deser.std.StdDeserializer._verifyNullForPrimitiveCoercion com.fasterxml.jackson.databind.deser.std.StdDeserializer._verifyNullForScalarCoercion com.fasterxml.jackson.databind.deser.std.StdDeserializer._verifyNumberForScalarCoercion com.fasterxml.jackson.databind.deser.std.StdDeserializer._verifyStringForScalarCoercion com.fasterxml.jackson.databind.deser.std.StdDeserializer.deserializeWithType com.fasterxml.jackson.databind.deser.std.StdDeserializer.findContentNullProvider(com.fasterxml.jackson.databind.DeserializationContext,com.fasterxml.jackson.databind.BeanProperty,com.fasterxml.jackson.databind.JsonDeserializer< com.fasterxml.jackson.databind.deser.std.StdDeserializer.findContentNullStyle com.fasterxml.jackson.databind.deser.std.StdDeserializer.findConvertingContentDeserializer(com.fasterxml.jackson.databind.DeserializationContext,com.fasterxml.jackson.databind.BeanProperty,com.fasterxml.jackson.databind.JsonDeserializer< com.fasterxml.jackson.databind.deser.std.StdDeserializer.findDeserializer com.fasterxml.jackson.databind.deser.std.StdDeserializer.findFormatFeature(com.fasterxml.jackson.databind.DeserializationContext,com.fasterxml.jackson.databind.BeanProperty,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer.findFormatOverrides(com.fasterxml.jackson.databind.DeserializationContext,com.fasterxml.jackson.databind.BeanProperty,java.lang.Class< com.fasterxml.jackson.databind.deser.std.StdDeserializer.findValueNullProvider com.fasterxml.jackson.databind.deser.std.StdDeserializer.getValueClass com.fasterxml.jackson.databind.deser.std.StdDeserializer.getValueInstantiator com.fasterxml.jackson.databind.deser.std.StdDeserializer.getValueType com.fasterxml.jackson.databind.deser.std.StdDeserializer.getValueType com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleMissingEndArrayForSingle com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty com.fasterxml.jackson.databind.deser.std.StdDeserializer.handledType com.fasterxml.jackson.databind.deser.std.StdDeserializer.isDefaultDeserializer(com.fasterxml.jackson.databind.JsonDeserializer< com.fasterxml.jackson.databind.deser.std.StdDeserializer.isDefaultKeyDeserializer

方法繼承來源 java.lang.Object

java.lang.Object.clone java.lang.Object.equals java.lang.Object.finalize java.lang.Object.getClass java.lang.Object.hashCode java.lang.Object.notify java.lang.Object.notifyAll java.lang.Object.toString java.lang.Object.wait java.lang.Object.wait java.lang.Object.wait

建構函式詳細資料

FlatteningDeserializer

protected FlatteningDeserializer(Class vc, JsonDeserializer defaultDeserializer, ObjectMapper mapper)

建立 FlatteningDeserializer 的實例。

參數:

vc - 已處理的類型
defaultDeserializer - 默認 JSON mapperAdapter
mapper - 預設還原串行化的對象對應程式

方法詳細資料

deserialize

public Object deserialize(JsonParser jp, DeserializationContext cxt)

覆寫:

FlatteningDeserializer.deserialize(JsonParser jp, DeserializationContext cxt)

參數:

jp
cxt

擲回:

java.io.IOException

deserializeWithType

public Object deserializeWithType(JsonParser jp, DeserializationContext cxt, TypeDeserializer tDeserializer)

覆寫:

FlatteningDeserializer.deserializeWithType(JsonParser jp, DeserializationContext cxt, TypeDeserializer tDeserializer)

參數:

jp
cxt
tDeserializer

擲回:

java.io.IOException

getModule

public static SimpleModule getModule(ObjectMapper mapper)

取得將這個串行化程序包裝為 Jackson ObjectMapper 配接器的模組。

參數:

mapper - 預設還原串行化的對象對應程式

傳回:

要插入 Jackson ObjectMapper 的簡單模組。

resolve

public void resolve(DeserializationContext cxt)

參數:

cxt

擲回:

com.fasterxml.jackson.databind.JsonMappingException

適用於