Class AdaptedObjectDeserializer<A,T>
- java.lang.Object
-
- org.eclipse.yasson.internal.serializer.AdaptedObjectDeserializer<A,T>
-
- Type Parameters:
A
- adapted type, type to deserialize JSON intoT
- required type, typically type of the field, which is adapted to another type
- All Implemented Interfaces:
javax.json.bind.serializer.JsonbDeserializer<T>
,RuntimeTypeInfo
,CurrentItem<T>
public class AdaptedObjectDeserializer<A,T> extends Object implements CurrentItem<T>, javax.json.bind.serializer.JsonbDeserializer<T>
Decorator for an item which builds adapted type instance by aJsonbAdapter
. After adapted item is finished building its instance is converted to field type object by calling components.
-
-
Constructor Summary
Constructors Constructor Description AdaptedObjectDeserializer(AdapterBinding adapterInfo, AbstractContainerDeserializer<?> wrapperItem)
Creates decoration instance wrapping real adapted object item.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description T
deserialize(javax.json.stream.JsonParser parser, javax.json.bind.serializer.DeserializationContext context, Type rtType)
ClassModel
getClassModel()
Class model containing property for this item.Type
getRuntimeType()
Returns a runtime type.CurrentItem<?>
getWrapper()
Item wrapper.void
setAdaptedTypeDeserializer(javax.json.bind.serializer.JsonbDeserializer<A> adaptedTypeDeserializer)
Sets adapted item.
-
-
-
Constructor Detail
-
AdaptedObjectDeserializer
public AdaptedObjectDeserializer(AdapterBinding adapterInfo, AbstractContainerDeserializer<?> wrapperItem)
Creates decoration instance wrapping real adapted object item.- Parameters:
adapterInfo
- components type infowrapperItem
- wrapper item to get instance from
-
-
Method Detail
-
getClassModel
public ClassModel getClassModel()
Description copied from interface:CurrentItem
Class model containing property for this item.- Specified by:
getClassModel
in interfaceCurrentItem<A>
- Returns:
- Class model.
-
getWrapper
public CurrentItem<?> getWrapper()
Description copied from interface:CurrentItem
Item wrapper. Null only in case of a root item.- Specified by:
getWrapper
in interfaceCurrentItem<A>
- Specified by:
getWrapper
in interfaceRuntimeTypeInfo
- Returns:
- Wrapper item of this item.
-
getRuntimeType
public Type getRuntimeType()
Description copied from interface:RuntimeTypeInfo
Returns a runtime type. It can be a class,ParameterizedType
orTypeVariable
.- Specified by:
getRuntimeType
in interfaceRuntimeTypeInfo
- Returns:
- Runtime type or null if not defined.
-
setAdaptedTypeDeserializer
public void setAdaptedTypeDeserializer(javax.json.bind.serializer.JsonbDeserializer<A> adaptedTypeDeserializer)
Sets adapted item.- Parameters:
adaptedTypeDeserializer
- Adapted item to set.
-
-