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.
Modifier and Type | Method and Description |
---|---|
void |
abort()
Bricht die Übertragung von Datensätzen für diesen Ergebnisdatenstrom ab.
|
ArchiveDataSpecification |
getDataSpecification()
Bestimmt die Archivdatenspezifikation, die zu diesem Ergebnisdatenstrom geführt hat.
|
ArchiveData |
take()
Entfernt einen Datensatz vom Ergebnisdatenstrom und gibt ihn zurück.
|
ArchiveDataSpecification getDataSpecification()
Bestimmt die Archivdatenspezifikation, die zu diesem Ergebnisdatenstrom geführt hat.
ArchiveData take() throws java.lang.InterruptedException, java.io.IOException, java.lang.IllegalStateException
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 von null
signalisiert werden.
null
, wenn alle Datensätze dieses Ergeebnisdatenstroms abgefragt wurden.java.lang.IllegalStateException
- Falls der Ergebnisdatenstrom mit der Methode abort()
abgebrochen wurde.java.lang.InterruptedException
- Falls der aufrufende Thread unterbrochen wurde, während auf den nächsten Datensatz gewartet wurde.java.io.IOException
- Falls Probleme in der Kommunikation mit dem Archivsystem aufgetreten sind und noch nicht alle Datensätze übertragen wurden.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 Methode take()
werden mit einer entsprechenden Exception quittiert.