Package de.bsvrz.dav.daf.main.archive
Interface ArchiveDataStream
public interface ArchiveDataStream
Schnittstelle zum Zugriff auf einen einzelnen Ergebnisdatenstrom einer Archivanfrage. Über die hier definierten Methoden können die Datensätze
dieses Archivdatenstroms abgefragt werden, es kann signalisiert werden, dass keine weiteren Datensätze benötigt werden und es kann die mit diesem
Ergebnisdatenstrom korrespondierende Archivdatenspezifikation, die in der Archivanfrage angegeben wurde, abgefragt werden. Die einzelnen zu einer
Archivanfrage gehörenden Ergebnisdatenströme können über die Methode
ArchiveDataQueryResult.getStreams()
abgefragt werden.-
Method Details
-
getDataSpecification
ArchiveDataSpecification getDataSpecification()Bestimmt die Archivdatenspezifikation, die zu diesem Ergebnisdatenstrom geführt hat.- Returns:
- Archivdatenspezifikation, die zu diesem Ergebnisdatenstrom geführt hat.
-
take
Entfernt einen Datensatz vom Ergebnisdatenstrom und gibt ihn zurück. Diese Methode wird von einer Applikation aufgerufen um die vom Archivsystem auf diesem Ergebnisdatenstrom zur Verfügung gestellten Datensätze abzurufen. Die einzelnen Datensätze werden mit wiederholten Aufrufen dieser Methode sukzessiv in der gleichen Reihenfolge wie sie im Archivsystem erzeugt werden zur Verfügung gestellt. Sind alle Datensätze so übergeben worden, dann muss dies durch Rückgabe vonnull
signalisiert werden.- Returns:
- Der nächste Archivdatensatz oder
null
, wenn alle Datensätze dieses Ergeebnisdatenstroms abgefragt wurden. - Throws:
IllegalStateException
- Falls der Ergebnisdatenstrom mit der Methodeabort()
abgebrochen wurde.InterruptedException
- Falls der aufrufende Thread unterbrochen wurde, während auf den nächsten Datensatz gewartet wurde.IOException
- Falls Probleme in der Kommunikation mit dem Archivsystem aufgetreten sind und noch nicht alle Datensätze übertragen wurden.
-
abort
void abort()Bricht die Übertragung von Datensätzen für diesen Ergebnisdatenstrom ab. Diese Methode kann von einer Applikation aufgerufen werden, um zu signalisieren, dass keine weiteren Datensätze mehr von diesem Ergebnisdatenstrom benötigt werden. Anschließende Aufrufe der Methodetake()
werden mit einer entsprechenden Exception quittiert.
-