Class SerializationModelCreator
java.lang.Object
org.eclipse.yasson.internal.serializer.SerializationModelCreator
Create or obtain already created type serializer.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Map<Type, ModelSerializer> private final Map<Type, ModelSerializer> private final JsonbContext -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate Optional<AdapterBinding> adapterBinding(Type type, ComponentBoundCustomization classCustomization) private voidaddParentPolymorphismProperty(TypeInheritanceConfiguration typeInheritanceConfiguration, LinkedHashMap<String, ModelSerializer> propertySerializers, ClassModel classModel) private voidaddPolymorphismProperty(TypeInheritanceConfiguration typeInheritanceConfiguration, LinkedHashMap<String, ModelSerializer> propertySerializers, ClassModel classModel) private ModelSerializercreateArraySerializer(LinkedList<Type> chain, Class<?> raw, Customization propertyCustomization) private ModelSerializercreateCollectionSerializer(LinkedList<Type> chain, Type type, Customization customization) private ModelSerializercreateGenericArraySerializer(LinkedList<Type> chain, Type type, Customization propertyCustomization) private ModelSerializercreateMapSerializer(LinkedList<Type> chain, Type type, Customization propertyCustomization) private ModelSerializercreateObjectSerializer(LinkedList<Type> chain, Type type, ClassModel classModel) private ModelSerializercreateOptionalSerializer(LinkedList<Type> chain, Type type, Customization propertyCustomization, boolean isKey) private ModelSerializercreatePolymorphismPropertySerializer(TypeInheritanceConfiguration configuration, String alias) private ModelSerializermemberSerializer(LinkedList<Type> chain, Type type, Customization customization, boolean key) serializerChain(Type type, boolean rootValue, boolean resolveRootAdapter) Create newModelSerializerof the given type.private ModelSerializerserializerChain(LinkedList<Type> chain, Type type, Customization propertyCustomization, boolean rootValue, boolean isKey, boolean resolveRootAdapter) private ModelSerializerserializerChainInternal(LinkedList<Type> chain, Type type, Customization propertyCustomization, boolean rootValue, boolean isKey, boolean resolveRootAdapter) serializerChainRuntime(LinkedList<Type> chain, Type type, Customization propertyCustomization, boolean rootValue, boolean isKey) Create newModelSerializerof the given type.private Optional<ModelSerializer> userSerializer(Type type, ComponentBoundCustomization classCustomization) static ModelSerializerwrapInCommonSet(ModelSerializer modelSerializer, Customization customization, JsonbContext jsonbContext) WrapModelSerializerin the common set of serializers.
-
Field Details
-
explicitChain
-
dynamicChain
-
jsonbContext
-
-
Constructor Details
-
SerializationModelCreator
Create new instance.- Parameters:
jsonbContext- jsonb context
-
-
Method Details
-
wrapInCommonSet
public static ModelSerializer wrapInCommonSet(ModelSerializer modelSerializer, Customization customization, JsonbContext jsonbContext) WrapModelSerializerin the common set of serializers.- Parameters:
modelSerializer- serializer to be wrappedcustomization- component customizationjsonbContext- jsonb context- Returns:
- wrapped serializer
-
serializerChain
Create newModelSerializerof the given type.- Parameters:
type- type to be serializedrootValue- whether it is a root valueresolveRootAdapter- whether to resolve root adapter- Returns:
- type model serializer
-
serializerChainRuntime
public ModelSerializer serializerChainRuntime(LinkedList<Type> chain, Type type, Customization propertyCustomization, boolean rootValue, boolean isKey) Create newModelSerializerof the given type.- Parameters:
chain- chain of types used before the one currently processedtype- type to be serializedpropertyCustomization- component customizationrootValue- whether it is a root valueisKey- whether it is a key- Returns:
- type model serializer
-
serializerChain
private ModelSerializer serializerChain(LinkedList<Type> chain, Type type, Customization propertyCustomization, boolean rootValue, boolean isKey, boolean resolveRootAdapter) -
serializerChainInternal
private ModelSerializer serializerChainInternal(LinkedList<Type> chain, Type type, Customization propertyCustomization, boolean rootValue, boolean isKey, boolean resolveRootAdapter) -
createObjectSerializer
private ModelSerializer createObjectSerializer(LinkedList<Type> chain, Type type, ClassModel classModel) -
addPolymorphismProperty
private void addPolymorphismProperty(TypeInheritanceConfiguration typeInheritanceConfiguration, LinkedHashMap<String, ModelSerializer> propertySerializers, ClassModel classModel) -
addParentPolymorphismProperty
private void addParentPolymorphismProperty(TypeInheritanceConfiguration typeInheritanceConfiguration, LinkedHashMap<String, ModelSerializer> propertySerializers, ClassModel classModel) -
createPolymorphismPropertySerializer
private ModelSerializer createPolymorphismPropertySerializer(TypeInheritanceConfiguration configuration, String alias) -
createCollectionSerializer
private ModelSerializer createCollectionSerializer(LinkedList<Type> chain, Type type, Customization customization) -
createMapSerializer
private ModelSerializer createMapSerializer(LinkedList<Type> chain, Type type, Customization propertyCustomization) -
createArraySerializer
private ModelSerializer createArraySerializer(LinkedList<Type> chain, Class<?> raw, Customization propertyCustomization) -
createGenericArraySerializer
private ModelSerializer createGenericArraySerializer(LinkedList<Type> chain, Type type, Customization propertyCustomization) -
createOptionalSerializer
private ModelSerializer createOptionalSerializer(LinkedList<Type> chain, Type type, Customization propertyCustomization, boolean isKey) -
memberSerializer
private ModelSerializer memberSerializer(LinkedList<Type> chain, Type type, Customization customization, boolean key) -
userSerializer
private Optional<ModelSerializer> userSerializer(Type type, ComponentBoundCustomization classCustomization) -
adapterBinding
private Optional<AdapterBinding> adapterBinding(Type type, ComponentBoundCustomization classCustomization)
-