Package yapion.serializing.api
Class SerializerObject<T>
- java.lang.Object
-
- yapion.serializing.api.SerializerBase<T,YAPIONObject>
-
- yapion.serializing.api.SerializerObject<T>
-
public abstract class SerializerObject<T> extends SerializerBase<T,YAPIONObject>
-
-
Constructor Summary
Constructors Constructor Description SerializerObject()
-
Method Summary
Modifier and Type Method Description voidadd()Add this ListSerializer to the SerializeManager by callingSerializeManager.add(SerializerBase).InternalSerializer<T>convert()abstract Tdeserialize(DeserializeData<YAPIONObject> deserializeData)This method is used to deserialize the type defined bytype().booleanisInterface()Returnstrueiftype()should be treated as an interface.abstract YAPIONObjectserialize(SerializeData<T> serializeData)This method is used to serialize the type defined bytype().abstract java.lang.Class<T>type()Describes the Class type this Serializer should be used for by theYAPIONSerializerandYAPIONDeserializerthis Serializer will be used preferably as it should suite the Class better than the internal fallback.
-
-
-
Method Detail
-
type
public abstract java.lang.Class<T> type()
Describes the Class type this Serializer should be used for by theYAPIONSerializerandYAPIONDeserializerthis Serializer will be used preferably as it should suite the Class better than the internal fallback.- Specified by:
typein classSerializerBase<T,YAPIONObject>- Returns:
- the Class Type this Serializer is for
-
isInterface
public boolean isInterface()
Returnstrueiftype()should be treated as an interface.YAPIONSerializerandYAPIONDeserializerwill treat this return type as secondary choice if a more specific serializer is missing.- Returns:
trueiftype()should be treated as an interface,falseotherwise
-
serialize
public abstract YAPIONObject serialize(SerializeData<T> serializeData)
This method is used to serialize the type defined bytype(). You will get the object to serialize as well as the currentYAPIONSerializerdesignated to this serialization. This serializer should be used to serialize any parts of theObjectthat are not primitive types. So anything that cannot be represented byYAPIONValue. To use the serializer callYAPIONSerializer.parse(Object). You will need to provide the Object and the YAPIONSerializer will provide you with anYAPIONAnyType. This is generic and can be anYAPIONObject,YAPIONMap,YAPIONArray,YAPIONPointerorYAPIONValue. So you should be able to handle any thing you can get or just handle it generically withYAPIONAnyTypeto be safe.- Specified by:
serializein classSerializerBase<T,YAPIONObject>- Parameters:
serializeData- all data for serialization- Returns:
- the serialized version of the inputted Object
-
deserialize
public abstract T deserialize(DeserializeData<YAPIONObject> deserializeData)
This method is used to deserialize the type defined bytype(). You will get the specifiedYAPIONObjectas well as the currentYAPIONDeserializerdesigned to this deserialization. This deserializer should be used to deserialize any parts of theYAPIONObjectthat are notYAPIONValuetypes. So anything that cannot be represented byYAPIONValue. To use the serializer callYAPIONDeserializer.parse(YAPIONAnyType). You will need to provide theYAPIONAnyTypeand the YAPIONDeserializer will provide you with anObject. This is generic and can be any Object. So you should be able to handle any thing generically.- Specified by:
deserializein classSerializerBase<T,YAPIONObject>- Parameters:
deserializeData- all data for deserialization- Returns:
- the deserialized version of the inputted
YAPIONObject
-
convert
public InternalSerializer<T> convert()
- Overrides:
convertin classSerializerBase<T,YAPIONObject>
-
add
public final void add()
Add this ListSerializer to the SerializeManager by callingSerializeManager.add(SerializerBase).
-
-