Package de.gsi.dataset.serializer.spi
Class FieldSerialiser
- java.lang.Object
-
- de.gsi.dataset.serializer.spi.FieldSerialiser
-
- Direct Known Subclasses:
IoBufferFieldSerialiser
public class FieldSerialiser extends java.lang.Objectdefault field serialiser implementation. The user needs to provide the reader and writer consumer lambdas to connect to the given serialiser back-end implementation.- Author:
- rstein
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceFieldSerialiser.FieldSerialiserFunctionused as lambda expression for user-level code to read/write data into the given serialiser back-end implementation
-
Field Summary
Fields Modifier and Type Field Description protected FieldSerialiser.FieldSerialiserFunctionreaderFunctionprotected FieldSerialiser.FieldSerialiserFunctionwriterFunction
-
Constructor Summary
Constructors Constructor Description FieldSerialiser(FieldSerialiser.FieldSerialiserFunction reader, FieldSerialiser.FieldSerialiserFunction writer, java.lang.Class<?> classPrototype, java.lang.Class<?>... classGenericArguments)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)java.lang.StringgetCanonicalName()java.lang.Class<?>getClassPrototype()java.util.List<java.lang.Class<?>>getGenericsPrototypes()FieldSerialiser.FieldSerialiserFunctiongetReaderFunction()java.lang.StringgetSimpleName()FieldSerialiser.FieldSerialiserFunctiongetWriterFunction()inthashCode()java.lang.StringtoString()
-
-
-
Field Detail
-
readerFunction
protected FieldSerialiser.FieldSerialiserFunction readerFunction
-
writerFunction
protected FieldSerialiser.FieldSerialiserFunction writerFunction
-
-
Constructor Detail
-
FieldSerialiser
public FieldSerialiser(FieldSerialiser.FieldSerialiserFunction reader, FieldSerialiser.FieldSerialiserFunction writer, java.lang.Class<?> classPrototype, java.lang.Class<?>... classGenericArguments)
- Parameters:
reader- consumer executed when reading from the back-end serialiser implementationwriter- consumer executed when writing to the back-end serialiser implementationclassPrototype- applicable class/interface prototype reference for which the consumers are applicable (e.g. example 1: 'List.class' for List<String> or example 2: 'Map.class' for Map<Integer, String>)classGenericArguments- applicable generics definition (e.g. 'String.class' for List<String> or 'Integer.class, String.class' resp.)
-
-
Method Detail
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
getCanonicalName
public java.lang.String getCanonicalName()
- Returns:
- canonical name of the class/interface description
-
getClassPrototype
public java.lang.Class<?> getClassPrototype()
- Returns:
- class reference
-
getGenericsPrototypes
public java.util.List<java.lang.Class<?>> getGenericsPrototypes()
- Returns:
- class reference to generics arguments
-
getReaderFunction
public FieldSerialiser.FieldSerialiserFunction getReaderFunction()
- Returns:
- consumer that is being executed for reading from the back-end serialiser implementation
-
getSimpleName
public java.lang.String getSimpleName()
- Returns:
- simple name name of the class/interface description
-
getWriterFunction
public FieldSerialiser.FieldSerialiserFunction getWriterFunction()
- Returns:
- consumer that is being executed for writing to the back-end serialiser implementation
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-