public class ChunkConnectionAdapter extends java.lang.Object implements IStreamConnection
IChunkConnection um darauf aufbauend, eine
IStreamConnection bereitzustellen. Hierzu exitieren interne
Implentierung von InputStream und OutputStream welche den
Paketbasierten Transport von byte-Stroemen organisieren.| Modifier and Type | Class and Description |
|---|---|
private static class |
ChunkConnectionAdapter.ChunkInputStream
Implentierung eines
InputStream , welcher die durch
ChunkConnectionAdapter.ChunkInputStream.read() zurueckgegeben Bytes aus den einzelnen Chunks eines
IChunkReader nimmt. |
private static class |
ChunkConnectionAdapter.ChunkOutputStream
Private Implementierung eines
OutputStream , welcher die durch
#write() uebergeben Bytes als Chunk mit Hilfe eines
IChunkWriter sendet. |
| Modifier and Type | Field and Description |
|---|---|
private static byte |
DATA_PACKET
Konstante um anzuzeigen, das ein Paket nicht das Ende des Stroms
signalisiert
|
private static byte |
EOF_PACKET
Konstante um anzuzeigen, das ein Paket das letzte uebertragene Paket
darstellt
|
private ChunkConnectionAdapter.ChunkInputStream |
m_inputstream
Die Eingabestrom der Verbindung
|
private ChunkConnectionAdapter.ChunkOutputStream |
m_outputstream
Der Ausgabestrom der Verbindung
|
private IChunkConnection |
m_underliningConnection
Die Basisverbindung, welche zur Uebertragung der eigentlichen Daten
genutzt wird
|
private static int |
StreamState_CLOSE
Der Strom ist geschlossen
|
private static int |
StreamState_EOF
Der Strom wird nach Bearbeitung des letzten Bytes geschlossen
|
private static int |
StreamState_OPEN
Der Strom ist offen
|
ConnectionState_CLOSE, ConnectionState_OPEN| Constructor and Description |
|---|
ChunkConnectionAdapter(IChunkConnection a_underlyingConnection)
Erstellt einen neuen Adapter auf Basis der uebergebenen
IChunkConnection. |
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Schliesst die Verbindung in dem nacheinander der Ein- und Ausgabestrom
geschlossen werden und abschliessend die zugrundelegende Verbindung.
|
int |
getCurrentState()
Liefert den Status der zugrundeliegenen Connection
|
java.io.InputStream |
getInputStream()
Liefert den Eingabestrom der Verbinundung, ueber welchen kontinuierlich
Daten empfangen werden koennen.
|
IAddress |
getLocalAddress()
Liefert die direkt die Adesse der zugrundeliegenen Verbindung zurueck.
|
java.io.OutputStream |
getOutputStream()
Liefert den Ausgabestrom der verbindung, ueber welchem Daten gesendet
werden koennen.
|
IAddress |
getRemoteAddress()
Liefert die direkt die Adesse der zugrundeliegenen Verbindung zurueck.
|
int |
getTimeout()
Ermittelt den momentanen Wert fuer das Timeout in Millisekunden fuer Lese-
und Schreiboperationen der Verbindung.
|
void |
setTimeout(int value)
Setzt den Timeout in Millisekunden fuer die Lese- und Schreiboperationen
der Verbindung.
|
private static final int StreamState_OPEN
private static final int StreamState_EOF
private static final int StreamState_CLOSE
private static final byte DATA_PACKET
private static final byte EOF_PACKET
private IChunkConnection m_underliningConnection
private ChunkConnectionAdapter.ChunkInputStream m_inputstream
private ChunkConnectionAdapter.ChunkOutputStream m_outputstream
public ChunkConnectionAdapter(IChunkConnection a_underlyingConnection)
IChunkConnection.public java.io.InputStream getInputStream()
IStreamConnectiongetInputStream in interface IStreamConnectionpublic java.io.OutputStream getOutputStream()
IStreamConnectiongetOutputStream in interface IStreamConnectionpublic int getCurrentState()
getCurrentState in interface IConnectionpublic IAddress getLocalAddress()
getLocalAddress in interface IConnectionpublic IAddress getRemoteAddress()
getRemoteAddress in interface IConnectionpublic int getTimeout()
throws ConnectionException
IConnectionSocket
folgend, bestimmt 0 ein unendliches Timeout.getTimeout in interface IConnectionConnectionException - Wird geworfen, wenn der Wert nicht ermittelt werden kann.public void setTimeout(int value)
throws ConnectionException
IConnectionSocket folgend, bestimmt 0 ein
unendliches Timeout.setTimeout in interface IConnectionConnectionException - Wird geworfen, wenn das setzen des TimeOut nicht moeglich
war. Insbesondere kann durch eine
UnsupportedCommandException Ausnahme angegeben werden,
dass das setzen generell nicht moeglich ist.public void close()
throws java.io.IOException
close in interface IConnectionjava.io.IOExceptionCopyright © 2023. All rights reserved.