Class ObjectSerializer<T>
- java.lang.Object
-
- org.djutils.serialization.serializers.BasicSerializer<T>
-
- org.djutils.serialization.serializers.ObjectSerializer<T>
-
- Type Parameters:
T
- class
- All Implemented Interfaces:
Serializer<T>
- Direct Known Subclasses:
FixedSizeObjectSerializer
,ObjectWithUnitSerializer
public abstract class ObjectSerializer<T> extends BasicSerializer<T>
Serializer for simple classes.Copyright (c) 2019-2023 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See DJUTILS License.- Version:
- $Revision$, $LastChangedDate$, by $Author$,
- Author:
- Alexander Verbraeck, Peter Knoppers
-
-
Constructor Summary
Constructors Constructor Description ObjectSerializer(byte type, String dataClassName)
Construct a new ObjectSerializer.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getNumberOfDimensions()
Return the number of dimensions of the stored data.void
serializeWithPrefix(T object, byte[] buffer, Pointer pointer, EndianUtil endianUtil)
Serialize an object of type T including the prefix byte(s).int
sizeWithPrefix(T object)
Compute the number of bytes needed to serialize an object of type T (including the byte(s) that indicate that an object of type T is next in the data stream).-
Methods inherited from class org.djutils.serialization.serializers.BasicSerializer
dataClassName, fieldType, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.djutils.serialization.serializers.Serializer
deSerialize, serialize, size
-
-
-
-
Constructor Detail
-
ObjectSerializer
public ObjectSerializer(byte type, String dataClassName)
Construct a new ObjectSerializer.- Parameters:
type
- byte; the field type (returned by thefieldType
method)dataClassName
- String; returned by the dataClassName method
-
-
Method Detail
-
sizeWithPrefix
public final int sizeWithPrefix(T object) throws SerializationException
Description copied from interface:Serializer
Compute the number of bytes needed to serialize an object of type T (including the byte(s) that indicate that an object of type T is next in the data stream).- Parameters:
object
- T; Instance of the object- Returns:
- int; the number of bytes needed to serialize an object of type T
- Throws:
SerializationException
- when theobject
cannot be serialized
-
serializeWithPrefix
public final void serializeWithPrefix(T object, byte[] buffer, Pointer pointer, EndianUtil endianUtil) throws SerializationException
Description copied from interface:Serializer
Serialize an object of type T including the prefix byte(s).- Parameters:
object
- T; the object to serializebuffer
- byte[]; buffer for the serialized Tpointer
- Pointer; position in buffer where the first byte of the serialized T will be storedendianUtil
- EndianUtil; selects bigEndian or littleEndian encoding- Throws:
SerializationException
- when a matrix has size zero or is jagged
-
getNumberOfDimensions
public final int getNumberOfDimensions()
Description copied from interface:Serializer
Return the number of dimensions of the stored data.- Returns:
- int; 0 for plain data, 1 for array, 2 for matrix
-
-