Module org.eclipse.yasson
Class DeserializationModelCreator
java.lang.Object
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator
Creator of the deserialization models for deserialized types.
This class servers also as a cache for all previously created model deserializers.
This class servers also as a cache for all previously created model deserializers.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Map
<Class<?>, ModelDeserializer<Object>> private final JsonbContext
private static final Set
<jakarta.json.stream.JsonParser.Event> private final Map
<DeserializationModelCreator.CachedItem, ModelDeserializer<jakarta.json.stream.JsonParser>> private static final ModelDeserializer
<Object> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate Optional
<AdapterBinding> adapterBinding
(Type type, ComponentBoundCustomization classCustomization) collectIgnoredProperties
(TypeInheritanceConfiguration typeInheritanceConfiguration) private ModelDeserializer
<jakarta.json.stream.JsonParser> createArrayCommonDeserializer
(DeserializationModelCreator.CachedItem cachedItem, Class<?> rawType, Class<?> component, ModelDeserializer<jakarta.json.stream.JsonParser> typeProcessor) private ModelDeserializer
<jakarta.json.stream.JsonParser> createArrayDeserializer
(DeserializationModelCreator.CachedItem cachedItem, Class<?> rawType, LinkedList<Type> chain, Customization propertyCustomization) createCachedItem
(Type type, Customization customization) private ModelDeserializer
<jakarta.json.stream.JsonParser> createCollectionDeserializer
(DeserializationModelCreator.CachedItem cachedItem, Class<?> rawType, LinkedList<Type> chain, Customization propertyCustomization) private ModelDeserializer
<jakarta.json.stream.JsonParser> createGenericArray
(DeserializationModelCreator.CachedItem cachedItem, Class<?> rawType, LinkedList<Type> chain, Customization propertyCustomization) private ModelDeserializer
<jakarta.json.stream.JsonParser> createMapDeserializer
(DeserializationModelCreator.CachedItem cachedItem, Class<?> rawType, LinkedList<Type> chain, Customization propertyCustomization) private ModelDeserializer
<jakarta.json.stream.JsonParser> createNewChain
(LinkedList<Type> chain, ModelDeserializer<Object> memberDeserializer, Class<?> rawType, Type type, Customization propertyCustomization) private ModelDeserializer
<jakarta.json.stream.JsonParser> createObjectDeserializer
(LinkedList<Type> chain, Type type, Customization propertyCustomization, ClassModel classModel, Class<?> rawType, DeserializationModelCreator.CachedItem cachedItem) private OptionalDeserializer
createOptionalDeserializer
(LinkedList<Type> chain, Type type, Customization propertyCustomization, DeserializationModelCreator.CachedItem cachedItem) creatorParamsList
(JsonbCreator creator) ModelDeserializer
<jakarta.json.stream.JsonParser> deserializerChain
(Type type) Starts deserializer creation process.private ModelDeserializer
<jakarta.json.stream.JsonParser> deserializerChain
(LinkedList<Type> chain, Type type, Customization propertyCustomization, ClassModel classModel) private ModelDeserializer
<jakarta.json.stream.JsonParser> deserializerChainInternal
(LinkedList<Type> chain, Type type, Customization propertyCustomization, ClassModel classModel) private ModelDeserializer
<jakarta.json.stream.JsonParser> memberTypeProcessor
(LinkedList<Type> chain, PropertyModel propertyModel, boolean hasCreator) private Class
<?> resolveImplClass
(Class<?> rawType, Customization customization) private ModelDeserializer
<jakarta.json.stream.JsonParser> typeDeserializer
(Class<?> rawType, Customization customization, ModelDeserializer<Object> delegate) private ModelDeserializer
<jakarta.json.stream.JsonParser> typeDeserializer
(Class<?> rawType, Customization customization, ModelDeserializer<Object> delegate, Set<jakarta.json.stream.JsonParser.Event> events) private ModelDeserializer
<jakarta.json.stream.JsonParser> typeProcessor
(LinkedList<Type> chain, Type type, Customization customization, ModelDeserializer<Object> memberDeserializer) private ModelDeserializer
<jakarta.json.stream.JsonParser> typeProcessor
(LinkedList<Type> chain, Type type, Customization customization, ModelDeserializer<Object> memberDeserializer, Set<jakarta.json.stream.JsonParser.Event> events) private Optional
<DeserializerBinding<?>> userDeserializer
(Type type, ComponentBoundCustomization classCustomization)
-
Field Details
-
NULL_PROVIDER
-
DEFAULT_CREATOR_VALUES
-
MAP_KEY_EVENTS
-
models
private final Map<DeserializationModelCreator.CachedItem,ModelDeserializer<jakarta.json.stream.JsonParser>> models -
jsonbContext
-
userTypeMapping
-
-
Constructor Details
-
DeserializationModelCreator
Create new instance.- Parameters:
jsonbContext
- jsonb context
-
-
Method Details
-
deserializerChain
Starts deserializer creation process.- Parameters:
type
- type the deserializer is created for- Returns:
- created deserializer
-
deserializerChain
private ModelDeserializer<jakarta.json.stream.JsonParser> deserializerChain(LinkedList<Type> chain, Type type, Customization propertyCustomization, ClassModel classModel) -
deserializerChainInternal
private ModelDeserializer<jakarta.json.stream.JsonParser> deserializerChainInternal(LinkedList<Type> chain, Type type, Customization propertyCustomization, ClassModel classModel) -
createObjectDeserializer
private ModelDeserializer<jakarta.json.stream.JsonParser> createObjectDeserializer(LinkedList<Type> chain, Type type, Customization propertyCustomization, ClassModel classModel, Class<?> rawType, DeserializationModelCreator.CachedItem cachedItem) -
createCollectionDeserializer
private ModelDeserializer<jakarta.json.stream.JsonParser> createCollectionDeserializer(DeserializationModelCreator.CachedItem cachedItem, Class<?> rawType, LinkedList<Type> chain, Customization propertyCustomization) -
createMapDeserializer
private ModelDeserializer<jakarta.json.stream.JsonParser> createMapDeserializer(DeserializationModelCreator.CachedItem cachedItem, Class<?> rawType, LinkedList<Type> chain, Customization propertyCustomization) -
createArrayDeserializer
private ModelDeserializer<jakarta.json.stream.JsonParser> createArrayDeserializer(DeserializationModelCreator.CachedItem cachedItem, Class<?> rawType, LinkedList<Type> chain, Customization propertyCustomization) -
createGenericArray
private ModelDeserializer<jakarta.json.stream.JsonParser> createGenericArray(DeserializationModelCreator.CachedItem cachedItem, Class<?> rawType, LinkedList<Type> chain, Customization propertyCustomization) -
createArrayCommonDeserializer
private ModelDeserializer<jakarta.json.stream.JsonParser> createArrayCommonDeserializer(DeserializationModelCreator.CachedItem cachedItem, Class<?> rawType, Class<?> component, ModelDeserializer<jakarta.json.stream.JsonParser> typeProcessor) -
createOptionalDeserializer
private OptionalDeserializer createOptionalDeserializer(LinkedList<Type> chain, Type type, Customization propertyCustomization, DeserializationModelCreator.CachedItem cachedItem) -
collectIgnoredProperties
private Set<String> collectIgnoredProperties(TypeInheritanceConfiguration typeInheritanceConfiguration) -
propertyRenamer
-
adapterBinding
private Optional<AdapterBinding> adapterBinding(Type type, ComponentBoundCustomization classCustomization) -
userDeserializer
private Optional<DeserializerBinding<?>> userDeserializer(Type type, ComponentBoundCustomization classCustomization) -
creatorParamsList
-
memberTypeProcessor
private ModelDeserializer<jakarta.json.stream.JsonParser> memberTypeProcessor(LinkedList<Type> chain, PropertyModel propertyModel, boolean hasCreator) -
typeProcessor
private ModelDeserializer<jakarta.json.stream.JsonParser> typeProcessor(LinkedList<Type> chain, Type type, Customization customization, ModelDeserializer<Object> memberDeserializer) -
typeProcessor
private ModelDeserializer<jakarta.json.stream.JsonParser> typeProcessor(LinkedList<Type> chain, Type type, Customization customization, ModelDeserializer<Object> memberDeserializer, Set<jakarta.json.stream.JsonParser.Event> events) -
createNewChain
private ModelDeserializer<jakarta.json.stream.JsonParser> createNewChain(LinkedList<Type> chain, ModelDeserializer<Object> memberDeserializer, Class<?> rawType, Type type, Customization propertyCustomization) -
typeDeserializer
private ModelDeserializer<jakarta.json.stream.JsonParser> typeDeserializer(Class<?> rawType, Customization customization, ModelDeserializer<Object> delegate) -
typeDeserializer
private ModelDeserializer<jakarta.json.stream.JsonParser> typeDeserializer(Class<?> rawType, Customization customization, ModelDeserializer<Object> delegate, Set<jakarta.json.stream.JsonParser.Event> events) -
resolveImplClass
-
createCachedItem
private DeserializationModelCreator.CachedItem createCachedItem(Type type, Customization customization)
-