Class AbstractArrayDeserializer<T>
- java.lang.Object
-
- org.eclipse.yasson.internal.serializer.AbstractItem<T>
-
- org.eclipse.yasson.internal.serializer.AbstractContainerDeserializer<T>
-
- org.eclipse.yasson.internal.serializer.AbstractArrayDeserializer<T>
-
- All Implemented Interfaces:
javax.json.bind.serializer.JsonbDeserializer<T>
,RuntimeTypeInfo
,CurrentItem<T>
,EmbeddedItem
- Direct Known Subclasses:
ByteArrayDeserializer
,CharArrayDeserializer
,DoubleArrayDeserializer
,FloatArrayDeserializer
,IntArrayDeserializer
,LongArrayDeserializer
,ObjectArrayDeserializer
,ShortArrayDeserializer
public abstract class AbstractArrayDeserializer<T> extends AbstractContainerDeserializer<T> implements EmbeddedItem
Common array unmarshalling item implementation.- Author:
- Roman Grigoriadi
-
-
Field Summary
Fields Modifier and Type Field Description protected Class<?>
componentClass
Runtime type class of an array.protected ClassModel
componentClassModel
-
Fields inherited from class org.eclipse.yasson.internal.serializer.AbstractContainerDeserializer
parserContext
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractArrayDeserializer(DeserializerBuilder builder)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
appendResult(Object result)
After object is transitively deserialized from JSON, "append" it to its wrapper.protected void
deserializeNext(javax.json.stream.JsonParser parser, Unmarshaller context)
Determine class mappings and create an instance of a new deserializer.protected abstract List<?>
getItems()
protected JsonbRiParser.LevelContext
moveToFirst(JsonbParser parser)
Move to first event for current deserializer structure.-
Methods inherited from class org.eclipse.yasson.internal.serializer.AbstractContainerDeserializer
convertNullToOptionalEmpty, deserialize, deserializeInternal, getInstance, newCollectionOrMapItem, newUnmarshallerItemBuilder
-
Methods inherited from class org.eclipse.yasson.internal.serializer.AbstractItem
getClassModel, getRuntimeType, getWrapper
-
-
-
-
Field Detail
-
componentClass
protected final Class<?> componentClass
Runtime type class of an array.
-
componentClassModel
protected final ClassModel componentClassModel
-
-
Constructor Detail
-
AbstractArrayDeserializer
protected AbstractArrayDeserializer(DeserializerBuilder builder)
-
-
Method Detail
-
appendResult
public void appendResult(Object result)
Description copied from class:AbstractContainerDeserializer
After object is transitively deserialized from JSON, "append" it to its wrapper. In case of a field set value to field, in case of collections or other embedded objects use methods provided.- Specified by:
appendResult
in classAbstractContainerDeserializer<T>
- Parameters:
result
- An instance result of an item.
-
deserializeNext
protected void deserializeNext(javax.json.stream.JsonParser parser, Unmarshaller context)
Description copied from class:AbstractContainerDeserializer
Determine class mappings and create an instance of a new deserializer. Currently processed deserializer is pushed to stack, for waiting till new object is finished.- Specified by:
deserializeNext
in classAbstractContainerDeserializer<T>
- Parameters:
parser
- Json parser.context
- Current unmarshalling context.
-
getItems
protected abstract List<?> getItems()
-
moveToFirst
protected JsonbRiParser.LevelContext moveToFirst(JsonbParser parser)
Description copied from class:AbstractContainerDeserializer
Move to first event for current deserializer structure.- Specified by:
moveToFirst
in classAbstractContainerDeserializer<T>
- Parameters:
parser
- Json parser.- Returns:
- First event.
-
-