Package de.gsi.dataset.serializer.spi
Class AbstractSerialiser
- java.lang.Object
-
- de.gsi.dataset.serializer.spi.AbstractSerialiser
-
- Direct Known Subclasses:
IoBufferSerialiser
public abstract class AbstractSerialiser extends java.lang.Object- Author:
- rstein
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.function.Consumer<java.lang.String>endMarkerFunctionprotected java.util.function.Consumer<java.lang.String>startMarkerFunction
-
Constructor Summary
Constructors Constructor Description AbstractSerialiser()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddClassDefinition(FieldSerialiser serialiser)protected booleancheckClassCompatibility(java.util.List<java.lang.Class<?>> ref1, java.util.List<java.lang.Class<?>> ref2)voidcheckSerialiserAvailability(java.util.List<java.lang.String> objList, ClassFieldDescription field)static intcomputeHashCode(java.lang.Class<?> classPrototype, java.util.List<java.lang.Class<?>> classGenericArguments)abstract java.lang.ObjectdeserialiseObject(java.lang.Object obj)java.util.Optional<FieldSerialiser>findFieldSerialiserForKnownClassOrInterface(java.lang.Class<?> clazz, java.util.List<java.lang.Class<?>> classGenericArguments)static java.lang.reflect.Constructor<java.lang.Object>getClassConstructorByName(java.lang.String name, java.lang.Class<?>... parameterTypes)static java.lang.String[]getClassNames(java.util.List<java.lang.Class<?>> classGenericArguments)static java.lang.StringgetGenericFieldSimpleTypeString(java.util.List<java.lang.Class<?>> classArguments)booleanisClassKnown(java.lang.Class<?> clazz, java.util.List<java.lang.Class<?>> classGenericArguments)java.util.Map<java.lang.Class<?>,java.util.List<FieldSerialiser>>knownClasses()voidserialiseObject(java.lang.Object obj)voidserialiseObject(java.lang.Object obj, ClassFieldDescription root, int recursionDepth)
-
-
-
Method Detail
-
addClassDefinition
public void addClassDefinition(FieldSerialiser serialiser)
-
checkClassCompatibility
protected boolean checkClassCompatibility(java.util.List<java.lang.Class<?>> ref1, java.util.List<java.lang.Class<?>> ref2)
-
checkSerialiserAvailability
public void checkSerialiserAvailability(java.util.List<java.lang.String> objList, ClassFieldDescription field)
-
deserialiseObject
public abstract java.lang.Object deserialiseObject(java.lang.Object obj) throws java.lang.IllegalAccessException- Throws:
java.lang.IllegalAccessException
-
findFieldSerialiserForKnownClassOrInterface
public java.util.Optional<FieldSerialiser> findFieldSerialiserForKnownClassOrInterface(java.lang.Class<?> clazz, java.util.List<java.lang.Class<?>> classGenericArguments)
-
isClassKnown
public boolean isClassKnown(java.lang.Class<?> clazz, java.util.List<java.lang.Class<?>> classGenericArguments)
-
knownClasses
public java.util.Map<java.lang.Class<?>,java.util.List<FieldSerialiser>> knownClasses()
-
serialiseObject
public void serialiseObject(java.lang.Object obj) throws java.lang.IllegalAccessException- Throws:
java.lang.IllegalAccessException
-
serialiseObject
public void serialiseObject(java.lang.Object obj, ClassFieldDescription root, int recursionDepth) throws java.lang.IllegalAccessException- Throws:
java.lang.IllegalAccessException
-
computeHashCode
public static int computeHashCode(java.lang.Class<?> classPrototype, java.util.List<java.lang.Class<?>> classGenericArguments)
-
getClassConstructorByName
public static java.lang.reflect.Constructor<java.lang.Object> getClassConstructorByName(java.lang.String name, java.lang.Class<?>... parameterTypes)
-
getClassNames
public static java.lang.String[] getClassNames(java.util.List<java.lang.Class<?>> classGenericArguments)
-
getGenericFieldSimpleTypeString
public static java.lang.String getGenericFieldSimpleTypeString(java.util.List<java.lang.Class<?>> classArguments)
-
-