public class RequestInfo extends java.lang.Object implements ArchiveInfoQueryResult
Diese Klasse stellt ein Objekt zur Verfügung, über das eine Archivinformationsanfrage gestartet werden kann. Diese Klasse wird von der Klasse StreamedArchiveRequester
benutzt.
Modifier and Type | Field and Description |
---|---|
private java.util.List<ArchiveInformationResult> |
_archiveInformationResults
Liste, die die Antwort des Archivs speichert
|
private ArchiveQueryID |
_client |
private static Debug |
_debug
DebugLogger für Debug-Ausgaben
|
private short |
_defaultSimulationVariant
Falls keine Simulationsvariante gesetzt wird, dann wird dieser default-Wert benutzt.
|
private java.lang.String |
_errorMessage |
private boolean |
_lock
Diese Variable sperrt alle Anfrage, bis die Antwort des Archivsystems vorliegt.
|
private boolean |
_requestSuccessful
Diese Variable speichert, ob die Infoanfrage erfolgreich war.
|
private java.util.List<ArchiveDataSpecification> |
_specs |
private StreamedArchiveRequester |
_streamedArchiveRequester |
Constructor and Description |
---|
RequestInfo(java.util.List<ArchiveDataSpecification> specs,
ArchiveQueryID archiveRequestID,
StreamedArchiveRequester streamedArchiveRequester,
short defaultSimulationVariant) |
Modifier and Type | Method and Description |
---|---|
void |
archiveResponse(Data data)
Diese Methode wird aufgerufen, wenn die Antwort des Archivsystems empfangen wurde.
|
java.util.List<ArchiveInformationResult> |
getArchiveInfoQueryResult()
Diese Methode gibt eine Liste zurück, die alle Zeit/Indexbereiche einer Archivinformationsanfrage beinhaltet.
|
ArchiveQueryID |
getArchiveRequestID() |
java.lang.String |
getErrorMessage()
Diese Methode liefert einen String mit der Fehlermeldung, die dazu geführt hat das die Informationsanfrage nicht ausgeführt werden konnte.
|
boolean |
isRequestSuccessful()
Diese Methode ist blockierend, bis die Antwort des Archivs vorliegt.
|
private void |
sendData() |
void |
sendRequestInfo()
Diese Methode verschickt eine Archivinfoanfrage an das entsprechende Archivsystem und meldet sich wieder als Sender ab.
|
private final ArchiveQueryID _client
private final java.util.List<ArchiveDataSpecification> _specs
private static final Debug _debug
DebugLogger für Debug-Ausgaben
private java.lang.String _errorMessage
private java.util.List<ArchiveInformationResult> _archiveInformationResults
Liste, die die Antwort des Archivs speichert
private boolean _lock
Diese Variable sperrt alle Anfrage, bis die Antwort des Archivsystems vorliegt.
private boolean _requestSuccessful
Diese Variable speichert, ob die Infoanfrage erfolgreich war.
private final StreamedArchiveRequester _streamedArchiveRequester
private final short _defaultSimulationVariant
Falls keine Simulationsvariante gesetzt wird, dann wird dieser default-Wert benutzt.
public RequestInfo(java.util.List<ArchiveDataSpecification> specs, ArchiveQueryID archiveRequestID, StreamedArchiveRequester streamedArchiveRequester, short defaultSimulationVariant)
public java.util.List<ArchiveInformationResult> getArchiveInfoQueryResult()
Diese Methode gibt eine Liste zurück, die alle Zeit/Indexbereiche einer Archivinformationsanfrage beinhaltet. Der Aufruf ist blockierend, bis ein Ergebnis vorliegt. War die Anfrage erfolgreich, wird die Liste zurückgegeben. War die Anfrage nicht erfolgreich wird eine RuntimeException ausgelöst ! Ein Aufruf dieser Methode sollte also nur erfolgen, nach dem sichergestellt wurde das isRequestSuccessful
den Wert true
zurückliefert.
getArchiveInfoQueryResult
in interface ArchiveInfoQueryResult
public boolean isRequestSuccessful() throws java.lang.InterruptedException
Diese Methode ist blockierend, bis die Antwort des Archivs vorliegt.
isRequestSuccessful
in interface ArchiveQueryResult
getErrorMessage
angezeigt werdenjava.lang.InterruptedException
- Der Thread, der den Auftrag bearbeitet, wurde abgebrochenpublic java.lang.String getErrorMessage() throws java.lang.InterruptedException
Diese Methode liefert einen String mit der Fehlermeldung, die dazu geführt hat das die Informationsanfrage nicht ausgeführt werden konnte. Dieser Aufruf blockiert solange, bis ein Ergebnis des Archivsystems vorliegt.
getErrorMessage
in interface ArchiveQueryResult
java.lang.InterruptedException
- Der Thread, der den Auftrag bearbeitet, wurde abgebrochenpublic void sendRequestInfo()
Diese Methode verschickt eine Archivinfoanfrage an das entsprechende Archivsystem und meldet sich wieder als Sender ab.
private void sendData()
public void archiveResponse(Data data)
Diese Methode wird aufgerufen, wenn die Antwort des Archivsystems empfangen wurde. Die Antwort wird analysiert und die betreffenden Objekte zur Verfügung gestellt, wartende Threads werden benachrichtigt.
public ArchiveQueryID getArchiveRequestID()