final class DeserializerImplementationA extends java.lang.Object implements Deserializer
Implementierung eines Deserialisierers zum deserialisieren von Datensätzen. Die Klasse ist nicht öffentlich zugänglich. Ein Objekt dieser Klasse kann mit der Methode SerializingFactory.createDeserializer(java.io.InputStream)
Modifier and Type | Field and Description |
---|---|
private static Debug |
_debug
DebugLogger für Debug-Ausgaben
|
private java.io.InputStream |
_inputStream |
private int |
_version |
Constructor and Description |
---|
DeserializerImplementationA(int version,
java.io.InputStream inputStream)
Erzeugt ein neues Deserialisierungsobjekt mit der gewünschten Version.
|
Modifier and Type | Method and Description |
---|---|
java.io.InputStream |
getInputStream()
Bestimmt den bei der Deserialisierung zu verwendenden Eingabe-Stream.
|
int |
getVersion()
Bestimmt die Version des konkreten Deserialisierers.
|
boolean |
readBoolean()
Liest und deserialisiert einen
boolean -Wert vom Eingabe-Stream dieses Deserialisierers. |
byte |
readByte()
Liest und deserialisiert einen
byte -Wert vom Eingabe-Stream dieses Deserialisierers. |
void |
readBytes(byte[] buffer,
int offset,
int length)
Liest eine vorgegebene Anzahl von Bytes vom Eingabe-Stream dieses Deserialisierers ein und speichert diese an einem vorgegebenen Offset in ein vorhandenes Byte-Array.
|
byte[] |
readBytes(int length)
Liest ein Byte-Array mit vorgegebener Länge vom Eingabe-Stream dieses Deserialisierers.
|
Data |
readData(AttributeGroup atg)
Liest und deserialisiert einen Datensatz aus dem Eingabe-Stream dieses Deserialisierers.
|
Data |
readData(AttributeGroup atg,
ObjectLookup objectLookup)
Liest und deserialisiert einen Datensatz aus dem Eingabe-Stream dieses Deserialisierers.
|
void |
readData(Data data)
Deserialisiert einen Datensatz aus dem Eingabe-Stream.
|
void |
readData(Data data,
ObjectLookup objectLookup)
Deserialisiert einen Datensatz aus dem Eingabe-Stream.
|
double |
readDouble()
Liest und deserialisiert einen
double -Wert vom Eingabe-Stream dieses Deserialisierers. |
float |
readFloat()
Liest und deserialisiert einen
float -Wert vom Eingabe-Stream dieses Deserialisierers. |
int |
readInt()
Liest und deserialisiert einen
int -Wert vom Eingabe-Stream dieses Deserialisierers. |
long |
readLong()
Liest und deserialisiert einen
long -Wert vom Eingabe-Stream dieses Deserialisierers. |
SystemObject |
readObjectReference(ObjectLookup objectLookup)
Liest und deserialisiert eine Referenz auf ein Systemobjekt vom Eingabe-Stream dieses Deserialisierers.
|
java.util.List<SystemObject> |
readObjectReferences(DataModel dataModel)
Liest mehrere Objektreferenzen vom Eingabe-Stream dieses Deserialisierers.
|
short |
readShort()
Liest und deserialisiert einen
short -Wert vom Eingabe-Stream dieses Deserialisierers. |
java.lang.String |
readString()
Liest und deserialisiert einen
String -Wert mit einer maximalen Länge von 65535 vom Eingabe-Stream dieses Deserialisierers. |
java.lang.String |
readString(int maxLength)
Liest und deserialisiert einen
String -Wert mit einer vorgegebenen Maximal-Länge vom Eingabe-Stream dieses Deserialisierers. |
int |
readUnsignedByte()
Liest und deserialisiert einen
byte -Wert vom Eingabe-Stream dieses Deserialisierers und interpretiert den Wert als vorzeichenlose Zahl. |
long |
readUnsignedInt()
Liest und deserialisiert einen
int -Wert vom Eingabe-Stream dieses Deserialisierers und interpretiert den Wert als vorzeichenlose Zahl. |
int |
readUnsignedShort()
Liest und deserialisiert einen
short -Wert vom Eingabe-Stream dieses Deserialisierers und interpretiert den Wert als vorzeichenlose Zahl. |
void |
setInputStream(java.io.InputStream inputStream)
Setzt den zu verwendenden Eingabe-Stream.
|
java.lang.String |
toString()
Liefert eine textuelle Beschreibung dieses Objekts für Debug-Zwecke.
|
private static final Debug _debug
DebugLogger für Debug-Ausgaben
private final int _version
private java.io.InputStream _inputStream
DeserializerImplementationA(int version, java.io.InputStream inputStream) throws java.lang.RuntimeException
Erzeugt ein neues Deserialisierungsobjekt mit der gewünschten Version.
version
- Gewünschte VersioninputStream
- Eingabe-Stream, der beim deserialisieren zu verwenden ist.java.lang.RuntimeException
- Wenn die gewünschte Version nicht durch diese Klasse implementiert werden kann.public java.io.InputStream getInputStream()
Bestimmt den bei der Deserialisierung zu verwendenden Eingabe-Stream.
getInputStream
in interface Deserializer
public void setInputStream(java.io.InputStream inputStream)
Setzt den zu verwendenden Eingabe-Stream.
setInputStream
in interface Deserializer
inputStream
- Zu verwendender Eingabe-Streampublic int getVersion()
Bestimmt die Version des konkreten Deserialisierers.
getVersion
in interface Deserializer
public void readData(Data data) throws java.io.EOFException, java.io.IOException
Deserialisiert einen Datensatz aus dem Eingabe-Stream.
readData
in interface Deserializer
data
- Neuer Datensatz, der mit der AttributGruppe der erwarteten Daten initialisiert wurde.java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.ClientDavConnection.createData(de.bsvrz.dav.daf.main.config.AttributeGroup)
public void readData(Data data, ObjectLookup objectLookup) throws java.io.EOFException, java.io.IOException
Deserialisiert einen Datensatz aus dem Eingabe-Stream.
readData
in interface Deserializer
data
- Neuer Datensatz, der mit der AttributGruppe der erwarteten Daten initialisiert wurde.objectLookup
- Wird für die Auflösung von Objektreferenzen benutzt.java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.ClientDavConnection.createData(de.bsvrz.dav.daf.main.config.AttributeGroup)
public byte readByte() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen byte
-Wert vom Eingabe-Stream dieses Deserialisierers.
readByte
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public Data readData(AttributeGroup atg) throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen Datensatz aus dem Eingabe-Stream dieses Deserialisierers.
readData
in interface Deserializer
atg
- Attributgruppe des einzulesenden Datensatzes.java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public Data readData(AttributeGroup atg, ObjectLookup objectLookup) throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen Datensatz aus dem Eingabe-Stream dieses Deserialisierers.
readData
in interface Deserializer
atg
- Attributgruppe des einzulesenden Datensatzes.objectLookup
- Wird für die Auflösung von Objektreferenzen benutzt.java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public boolean readBoolean() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen boolean
-Wert vom Eingabe-Stream dieses Deserialisierers.
readBoolean
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesens erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public double readDouble() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen double
-Wert vom Eingabe-Stream dieses Deserialisierers.
readDouble
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public float readFloat() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen float
-Wert vom Eingabe-Stream dieses Deserialisierers.
readFloat
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public int readInt() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen int
-Wert vom Eingabe-Stream dieses Deserialisierers.
readInt
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public long readLong() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen long
-Wert vom Eingabe-Stream dieses Deserialisierers.
readLong
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public short readShort() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen short
-Wert vom Eingabe-Stream dieses Deserialisierers.
readShort
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public java.lang.String readString() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen String
-Wert mit einer maximalen Länge von 65535 vom Eingabe-Stream dieses Deserialisierers.
readString
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public java.lang.String readString(int maxLength) throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen String
-Wert mit einer vorgegebenen Maximal-Länge vom Eingabe-Stream dieses Deserialisierers. Es ist zu beachten, dass beim deserialiseren die gleiche Maximalgröße wie beim serialisieren angegeben wird.
readString
in interface Deserializer
maxLength
- Maximale Länge des zu serialisierenden Strings oder 0
wenn keine Begrenzung vorgegeben werden kann.java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public SystemObject readObjectReference(ObjectLookup objectLookup) throws java.io.EOFException, java.io.IOException
Liest und deserialisiert eine Referenz auf ein Systemobjekt vom Eingabe-Stream dieses Deserialisierers.
readObjectReference
in interface Deserializer
objectLookup
- Wird für die Auflösung von Objektreferenzen benutzt.null
, wenn das referenzierte Objekt nicht bestimmt werden kann.java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public java.util.List<SystemObject> readObjectReferences(DataModel dataModel) throws java.io.IOException
Liest mehrere Objektreferenzen vom Eingabe-Stream dieses Deserialisierers. Diese Methode liefert das gleiche Resultat wie
size = readInt()
gefolgt von size Aufrufen von
readObjectReference().
readObjectReferences
in interface Deserializer
dataModel
- Datenmodell mit dessen Hilfe Objektreferenzen aufgelöst werden.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public int readUnsignedByte() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen byte
-Wert vom Eingabe-Stream dieses Deserialisierers und interpretiert den Wert als vorzeichenlose Zahl.
readUnsignedByte
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public long readUnsignedInt() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen int
-Wert vom Eingabe-Stream dieses Deserialisierers und interpretiert den Wert als vorzeichenlose Zahl.
readUnsignedInt
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public int readUnsignedShort() throws java.io.EOFException, java.io.IOException
Liest und deserialisiert einen short
-Wert vom Eingabe-Stream dieses Deserialisierers und interpretiert den Wert als vorzeichenlose Zahl.
readUnsignedShort
in interface Deserializer
java.io.EOFException
- Wenn das Ende des Eingabe-Streams während des Lesen erkannt wurde.java.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public java.lang.String toString()
Liefert eine textuelle Beschreibung dieses Objekts für Debug-Zwecke.
toString
in class java.lang.Object
public byte[] readBytes(int length) throws java.io.IOException
Liest ein Byte-Array mit vorgegebener Länge vom Eingabe-Stream dieses Deserialisierers. Es ist zu beachten, das als Länge exakt die Größe des entsprechenden serialisierten Arrays angegeben werden muss.
readBytes
in interface Deserializer
length
- Länge des einzulesenden Byte-Arraysjava.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.public void readBytes(byte[] buffer, int offset, int length) throws java.io.IOException
Liest eine vorgegebene Anzahl von Bytes vom Eingabe-Stream dieses Deserialisierers ein und speichert diese an einem vorgegebenen Offset in ein vorhandenes Byte-Array. Es ist zu beachten, das als Länge exakt die Größe des entsprechenden serialisierten Arrays angegeben werden muss.
readBytes
in interface Deserializer
buffer
- Byte-Array in das die eingelesenen Bytes gespeichert werden sollen.offset
- Startposition im Byte-Array ab der die eingelesenen Bytes gespeichert werden sollen.length
- Anzahl der einzulesenden Bytesjava.io.IOException
- Wenn beim Lesen vom Eingabe-Stream Fehler aufgetreten sind.