Class ObjectQueueSerializer<E>
java.lang.Object
de.bsvrz.dav.daf.util.fileBackedQueue.ObjectQueueSerializer<E>
- All Implemented Interfaces:
QueueSerializer<E>
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondeserialize(DataInputStream inputStream) Deserialisiert ein Objekt aus dem Stream.intGibt die Größe eines Objektes an.voidserialize(DataOutputStream outputStream, E object) Serialisiert das Objekt
-
Constructor Details
-
ObjectQueueSerializer
public ObjectQueueSerializer()
-
-
Method Details
-
getSize
Description copied from interface:QueueSerializerGibt die Größe eines Objektes an. Es ist wichtig, dass hier exakt die Länge zurückgegeben wird, die in den outputStream geschrieben werden, würde man serialize(outputStream, object) mit dem gleichen Objekt aufrufen.- Specified by:
getSizein interfaceQueueSerializer<E>- Parameters:
object- Objekt- Returns:
- Größe des serialisierten Objektes in Bytes
-
serialize
Description copied from interface:QueueSerializerSerialisiert das Objekt- Specified by:
serializein interfaceQueueSerializer<E>- Parameters:
outputStream- In diesen Stream soll das Objekt geschrieben werden. Es muss an die aktuelle Stream-Position geschrieben werden und es müssen so viele Bytes geschrieben werden, wie getSize(objekt) zurückgeben würde.object- Objekt, das geschrieben werden soll- Throws:
IOException- Falls beim Schreiben Fehler auftreten
-
deserialize
Description copied from interface:QueueSerializerDeserialisiert ein Objekt aus dem Stream. Es muss an der aktuellen Stream-Position gelesen werden und zwar so viele Bytes, wie das deserialisierte Objekt in der getSize()-Funktion zurückliefern würde. Damit vor dem Deserialisieren bekannt ist, wie viele Bytes gelesen werden sollen, ist es bei Typen variabler Länge evtl. nötig beim Serialisieren zuerst die Länge zu schreiben und beim Deserialisieren als erstes zu lesen.- Specified by:
deserializein interfaceQueueSerializer<E>- Parameters:
inputStream- Eingabestream.- Returns:
- Das deserialisierte Objekt
- Throws:
IOException- Falls beim Lesen Fehler auftreten
-