class DataStream extends java.lang.Object implements ArchiveDataStream
Diese Klasse implementiert das Interface ArchiveDataStream. Die Datensätze, die empfangen wurden, können gepackt sein, diese Klasse entpackt die Datensätze und stellt sie als Objekte zur Verfügung. Diese Klasse wird von der Klasse StreamedArchiveRequester
benutzt.
Modifier and Type | Field and Description |
---|---|
private ArchiveDataSpecification |
_archiveDataSpecification |
private static Debug |
_debug
DebugLogger für Debug-Ausgaben
|
private int |
_indexOfStream
Stream von dem die Daten geholt werden.
|
private Query |
_query
Dies ist die Anfrage, zu der dieser Stream gehört.
|
private StreamDemultiplexer |
_streamDemultiplexer |
Constructor and Description |
---|
DataStream(int indexOfStream,
StreamDemultiplexer streamDemultiplexer,
ArchiveDataSpecification archiveDataSpecification,
Query query)
Objekt, dass einen Stream repräsentiert.
|
Modifier and Type | Method and Description |
---|---|
void |
abort()
Diese Methode wird aufgerufen, falls keine Datensätze mehr benötigt werden.
|
ArchiveDataSpecification |
getDataSpecification()
Bestimmt die Archivdatenspezifikation, die zu diesem Ergebnisdatenstrom geführt hat.
|
ArchiveData |
take()
Diese Methode stellt einen archivierten Datensatz zur Verfügung.
|
private final StreamDemultiplexer _streamDemultiplexer
private final int _indexOfStream
Stream von dem die Daten geholt werden.
private final Query _query
Dies ist die Anfrage, zu der dieser Stream gehört. Der Anfrage(_query) wird gemeldet, dass der Stream keine Archivdaten mehr vom Archiv empfängt (null-Paket) oder das der Benutzer den Stream mit abort abgebrochen hat.
private final ArchiveDataSpecification _archiveDataSpecification
private static final Debug _debug
DebugLogger für Debug-Ausgaben
public DataStream(int indexOfStream, StreamDemultiplexer streamDemultiplexer, ArchiveDataSpecification archiveDataSpecification, Query query)
Objekt, dass einen Stream repräsentiert.
indexOfStream
- Index des StreamsstreamDemultiplexer
- Objekt über das Datensätze angefordert werden könnenarchiveDataSpecification
- Siehe Klassenbeschreibungquery
- Archivanfrage, die zu diesem Objekt gehörtpublic ArchiveDataSpecification getDataSpecification()
ArchiveDataStream
Bestimmt die Archivdatenspezifikation, die zu diesem Ergebnisdatenstrom geführt hat.
getDataSpecification
in interface ArchiveDataStream
public ArchiveData take() throws java.nio.channels.ClosedChannelException, java.lang.InterruptedException, java.net.ProtocolException
Diese Methode stellt einen archivierten Datensatz zur Verfügung. Der Datensatz kann dabei vom Archiv gepackt worden sein, diese Methode wird den Datensatz entpacken.
take
in interface ArchiveDataStream
java.nio.channels.ClosedChannelException
- Die Verbindung zum DaV wurde unterbrochenjava.lang.InterruptedException
- Der Thread, der sich um die Verwaltung des Datensatzempfangs kümmert wurde mit Interrupt
abgebrochenjava.net.ProtocolException
- Ein Datensatz wurde entweder doppelt empfangen oder fehltpublic void abort()
Diese Methode wird aufgerufen, falls keine Datensätze mehr benötigt werden.
abort
in interface ArchiveDataStream