final class SerializerImplementationA extends java.lang.Object implements Serializer
Implementierung eines Serialisierers zum serialisieren von Datensätzen. Die Klasse ist nicht öffentlich zugänglich. Ein Objekt dieser Klasse kann mit der Methode SerializingFactory.createSerializer(java.io.OutputStream)
erzeugt werden.
Modifier and Type | Field and Description |
---|---|
private java.io.OutputStream |
_outputStream |
private int |
_version |
Constructor and Description |
---|
SerializerImplementationA(int version,
java.io.OutputStream outputStream)
Erzeugt ein neues Serialisierungsobjekt mit der gewünschten Version.
|
Modifier and Type | Method and Description |
---|---|
java.io.OutputStream |
getOutputStream()
Bestimmt den für die Serialisierung zu verwendenden Ausgabe-Stream.
|
int |
getVersion()
Bestimmt die Version des konkreten Serialisierers.
|
void |
setOutputStream(java.io.OutputStream outputStream)
Setzt den zu verwendenden Ausgabe-Stream.
|
java.lang.String |
toString()
Liefert eine textuelle Beschreibung dieses Objekts für Debug-Zwecke.
|
void |
writeBoolean(boolean value)
Serialisiert einen
boolean -Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. |
void |
writeByte(int value)
Serialisiert einen
byte -Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. |
void |
writeBytes(byte[] bytes)
Schreibt ein Byte-Array auf den Ausgabe-Stream.
|
void |
writeBytes(byte[] bytes,
int offset,
int length)
Schreibt ein Folge von Bytes aus einem Byte-Array auf den Ausgabe-Stream.
|
void |
writeData(Data data)
Serialisiert einen Datensatz in einen Bytestrom und schreibt diesen auf den angegebenen Ausgabe-Stream.
|
void |
writeDouble(double value)
Serialisiert einen
double -Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. |
void |
writeFloat(float value)
Serialisiert einen
float -Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. |
void |
writeInt(int value)
Serialisiert einen
int -Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. |
void |
writeLong(long value)
Serialisiert einen
long -Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. |
void |
writeObjectReference(SystemObject object)
Serialisiert die id eines Systemobjekts in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream.
|
void |
writeShort(int value)
Serialisiert einen
short -Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. |
void |
writeString(java.lang.String value)
Serialisiert einen
String -Wert mit einer MaximalLänge von 65535 in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. |
void |
writeString(java.lang.String value,
int maxLength)
Serialisiert einen
String -Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. |
private final int _version
private java.io.OutputStream _outputStream
SerializerImplementationA(int version, java.io.OutputStream outputStream) throws java.lang.RuntimeException
Erzeugt ein neues Serialisierungsobjekt mit der gewünschten Version.
version
- Gewünschte Version der Deserialisierung.outputStream
- Ausgabe-Stream, der beim serialisieren zu verwenden ist.java.lang.RuntimeException
- Wenn die gewünschte Version nicht durch diese Klasse implementiert werden kann.public java.io.OutputStream getOutputStream()
Bestimmt den für die Serialisierung zu verwendenden Ausgabe-Stream.
getOutputStream
in interface Serializer
public void setOutputStream(java.io.OutputStream outputStream)
Setzt den zu verwendenden Ausgabe-Stream.
setOutputStream
in interface Serializer
outputStream
- Zu verwendender Ausgabe-Streampublic int getVersion()
Bestimmt die Version des konkreten Serialisierers.
getVersion
in interface Serializer
public void writeData(Data data) throws java.io.IOException
Serialisiert einen Datensatz in einen Bytestrom und schreibt diesen auf den angegebenen Ausgabe-Stream. AttributListen und Arrays werden durch Serialisierung der enthalten Attribute serialisiert. Bei Arrays variabler Länge wird die Länge vorweg serialisiert, und zwar je nach maximaler Anzahl der Elemente in 1, 2 oder 4 Bytes als vorzeichenloser Wert.
writeData
in interface Serializer
data
- Der zu serialisierende Datensatz.java.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public void writeObjectReference(SystemObject object) throws java.io.IOException
Serialisiert die id eines Systemobjekts in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream.
writeObjectReference
in interface Serializer
object
- Das Systemobjekt dessen id serialisiert werden soll.java.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public void writeLong(long value) throws java.io.IOException
Serialisiert einen long
-Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream.
writeLong
in interface Serializer
value
- Der zu serialisierende Wert.java.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public void writeInt(int value) throws java.io.IOException
Serialisiert einen int
-Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream.
writeInt
in interface Serializer
value
- Der zu serialisierende Wert.java.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public void writeShort(int value) throws java.io.IOException
Serialisiert einen short
-Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream.
writeShort
in interface Serializer
value
- Der zu serialisierende Wert.java.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public void writeByte(int value) throws java.io.IOException
Serialisiert einen byte
-Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream.
writeByte
in interface Serializer
value
- Der zu serialisierende Wert.java.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public void writeBoolean(boolean value) throws java.io.IOException
Serialisiert einen boolean
-Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream.
writeBoolean
in interface Serializer
value
- Der zu serialisierende Wert.java.io.IOException
- Wenn ein I/O Fehler beim Schreiben auf den Ausgabe-Stream auftritt.public void writeDouble(double value) throws java.io.IOException
Serialisiert einen double
-Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. Die Werte werden entsprechend dem IEEE 754 floating-point “double format” serialisiert.
writeDouble
in interface Serializer
value
- Der zu serialisierende Wert.java.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public void writeFloat(float value) throws java.io.IOException
Serialisiert einen float
-Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. Die Werte werden entsprechend dem IEEE 754 floating-point “single format” serialisiert.
writeFloat
in interface Serializer
value
- Der zu serialisierende Wert.java.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public void writeString(java.lang.String value) throws java.io.IOException
Serialisiert einen String
-Wert mit einer MaximalLänge von 65535 in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream.
writeString
in interface Serializer
value
- Der zu serialisierende Wert.java.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public void writeString(java.lang.String value, int maxLength) throws java.io.IOException
Serialisiert einen String
-Wert in einen Bytestrom und schreibt diesen auf den Ausgabe-Stream. Strings werden in ISO-8859-1 kodiert und vorweg wird die Länge des Strings serialisiert und zwar je nach maximaler Stringlänge in 1, 2, oder 4 Bytes als vorzeichenloser Wert.
writeString
in interface Serializer
value
- Der zu serialisierende Wert.maxLength
- Maximale Länge des zu serialisierenden Strings oder 0
wenn keine Begrenzung vorgegeben werden kann.java.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.java.lang.IllegalArgumentException
- Wenn die Länge des Strings größer als die angegebene Maximallänge ist.public void writeBytes(byte[] bytes) throws java.io.IOException
Schreibt ein Byte-Array auf den Ausgabe-Stream. Es ist zu beachten, dass die Größe des Arrays nicht implizit serialisiert wird und beim Deserialisieren angegeben werden muss.
writeBytes
in interface Serializer
bytes
- Zu schreibendes Byte-Arrayjava.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public void writeBytes(byte[] bytes, int offset, int length) throws java.io.IOException
Schreibt ein Folge von Bytes aus einem Byte-Array auf den Ausgabe-Stream. Es ist zu beachten, dass die Anzahl der Bytes nicht implizit serialisiert wird und beim Deserialisieren passend angegeben werden muss.
writeBytes
in interface Serializer
bytes
- Byte-Array mit den zu schreibenden Bytesoffset
- Start-Offset des ersten zu schreibenden Bytes im Arraylength
- Anzahl der zu schreibenden Bytesjava.io.IOException
- Wenn ein I/O Fehler bei Schreiben auf den Ausgabe-Stream auftritt.public java.lang.String toString()
Liefert eine textuelle Beschreibung dieses Objekts für Debug-Zwecke.
toString
in class java.lang.Object