Class StringQueueSerializer
java.lang.Object
de.bsvrz.dav.daf.util.fileBackedQueue.StringQueueSerializer
- All Implemented Interfaces:
QueueSerializer<java.lang.String>
public final class StringQueueSerializer extends java.lang.Object implements QueueSerializer<java.lang.String>
-
Constructor Summary
Constructors Constructor Description StringQueueSerializer()
-
Method Summary
Modifier and Type Method Description java.lang.String
deserialize(java.io.DataInputStream inputStream)
Deserialisiert ein Objekt aus dem Stream.int
getSize(java.lang.String object)
Gibt die Größe eines Objektes an.void
serialize(java.io.DataOutputStream outputStream, java.lang.String object)
Serialisiert das ObjektMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
StringQueueSerializer
public StringQueueSerializer()
-
-
Method Details
-
getSize
public int getSize(java.lang.String object)Description copied from interface:QueueSerializer
Gibt 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:
getSize
in interfaceQueueSerializer<java.lang.String>
- Parameters:
object
- Objekt- Returns:
- Größe des serialisierten Objektes in Bytes
-
serialize
public void serialize(java.io.DataOutputStream outputStream, java.lang.String object) throws java.io.IOExceptionDescription copied from interface:QueueSerializer
Serialisiert das Objekt- Specified by:
serialize
in interfaceQueueSerializer<java.lang.String>
- 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:
java.io.IOException
- Falls beim Schreiben Fehler auftreten
-
deserialize
public java.lang.String deserialize(java.io.DataInputStream inputStream) throws java.io.IOExceptionDescription copied from interface:QueueSerializer
Deserialisiert 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:
deserialize
in interfaceQueueSerializer<java.lang.String>
- Parameters:
inputStream
- Eingabestream.- Returns:
- Das deserialisierte Objekt
- Throws:
java.io.IOException
- Falls beim Lesen Fehler auftreten
-