Package de.bsvrz.pua.prot.client
Class ProtocolResultStream
- java.lang.Object
-
- de.bsvrz.pua.prot.client.ProtocolResultStream
-
- All Implemented Interfaces:
java.lang.AutoCloseable
public class ProtocolResultStream extends java.lang.Object implements java.lang.AutoCloseableKlasse zum Abfragen der Ergebnisdatensätze.
-
-
Field Summary
Fields Modifier and Type Field Description protected ProtocolAdministrationData_protocolAdministrationDataprotected ProtocolAggregationData_protocolAggregationData
-
Constructor Summary
Constructors Constructor Description ProtocolResultStream(ProtocolAnswerReceiver receiver, ProtocolRequestResult result, PuaClient puaClient)
-
Method Summary
Modifier and Type Method Description voidabort()Deprecated.Unklarer Name, da die Protokollerstellung nciht abgebrochen wird, sodnern nur der Abruf der Daten.intbufferedDataSize()Liefert die Anzahl der im Client-Puffer liegenden Datensätze.voidclose()Beendet die Übertragung der Protokolldaten.java.lang.StringgetErrorMsg()java.lang.LonggetJobId()Liefert die Auftrags-Id.java.lang.LonggetProtocolId()Deprecated.Diese Methode liefert nicht mehr die Protokoll-Id, sondern die eindeutige ID des protokollbezogenen AuftragsbooleanhasNext()Zeigt an dass keine weiteren Ergebnisdatensätze mehr eintreffen werden.booleanisComplete()Zeigt an ob das Protokoll vollständig und erfolgreich übertragen wurde.booleanisRequestSuccessful()Zeigt den Status der Aktion ab.ProtocolResulttake()Liefert jeweils einen Antwortdatensatz.java.lang.StringtoString()booleanwasAborted()Zeigt ob die Protokollerstellung abgebrochen wurde.
-
-
-
Field Detail
-
_protocolAdministrationData
protected ProtocolAdministrationData _protocolAdministrationData
-
_protocolAggregationData
protected ProtocolAggregationData _protocolAggregationData
-
-
Constructor Detail
-
ProtocolResultStream
public ProtocolResultStream(ProtocolAnswerReceiver receiver, ProtocolRequestResult result, PuaClient puaClient) throws de.bsvrz.sys.funclib.losb.exceptions.FailureException
- Parameters:
receiver- Empfänger der Ergebnisdaten.result- Zeigt ob das Absetzen des Auftrags zur Protokollerstellung erfolgreich war.puaClient- PuaClient- Throws:
de.bsvrz.sys.funclib.losb.exceptions.FailureException- Fehler bei der Initialisierung.
-
-
Method Detail
-
isRequestSuccessful
public boolean isRequestSuccessful()
Zeigt den Status der Aktion ab. Der Status kann sich nach jedem Aufruf vontake()verändern. Wird beispielsweise ein Protokoll erstellt, so ist wird die Methodetruezurückliefern, wenn die Anfrage an den Server gesendet werden konnte. D.h.truebedeutet in diesem Fall nicht, dass das Protokoll erfolgreich erstellt wurde, sondern nur, dass die Anfrage an den Server gesendet wurde. Ruft man nuntake()auf, und anschließend wiederisRequestSuccessful(), dann wird z.B.falsegeliefert, wenn es zu einem fehler bei der Protokollerstellung kam - etwa durch einen Syntaxfehler im Skript.- Returns:
- True, falls die Aktion momentan keine Fehler meldet.
-
isComplete
public boolean isComplete()
Zeigt an ob das Protokoll vollständig und erfolgreich übertragen wurde.- Returns:
truefalls das Protokoll vollständig übertragen wurde.falsefalls noch nicht alle Ergebnisdatensätze eingetroffen sind oder das Protokoll abgebrochen wurde.
-
getErrorMsg
public java.lang.String getErrorMsg()
- Returns:
- Liefert eine Fehlermeldung zurück, falls es zu einem Fehler kam.
-
take
public ProtocolResult take() throws java.lang.InterruptedException
Liefert jeweils einen Antwortdatensatz. Blockiert so lange, bis ein Antwortdatensatz vorliegt. Sobald der letzte Datensatz oder ein Fehler empfangen wurde, meldet sich das Objekt beim Datenverteiler als Empfänger ab.- Returns:
- Antwortdatensatz.
nullfalls bereits alle Antwortdatensätze ausgeliefert wurden oder ein Fehler aufgetreten ist. - Throws:
java.lang.InterruptedException- Warten auf Antwortdatensatz wurde unterbrochen.
-
hasNext
public boolean hasNext()
Zeigt an dass keine weiteren Ergebnisdatensätze mehr eintreffen werden.take()wird genau 1xnullzurückliefern, bevorisDonetruezurückliefert.- Returns:
truefalls alle Ergebnisdatensätze abgeholt wurden.
-
abort
@Deprecated public void abort()
Deprecated.Unklarer Name, da die Protokollerstellung nciht abgebrochen wird, sodnern nur der Abruf der Daten. Durchclose()ersetzt.Meldet das Objekt beim Datenverteiler als Empfänger ab.
-
wasAborted
public boolean wasAborted()
Zeigt ob die Protokollerstellung abgebrochen wurde.- Returns:
truefalls die Protokollerstellung abgebrochen wurde.
-
getJobId
public java.lang.Long getJobId()
Liefert die Auftrags-Id.- Returns:
- Auftrags-Id oder
nullfalls die Auftrags-Id unbekannt ist. Bei Protokoll-Erstellen-Aufträgen ist die Auftrags-ID identisch zur Protokoll-Id.
-
getProtocolId
@Deprecated public final java.lang.Long getProtocolId()
Deprecated.Diese Methode liefert nicht mehr die Protokoll-Id, sondern die eindeutige ID des protokollbezogenen AuftragsLiefert die Auftrags-Id. Wichtig: Wird diese Methode direkt nach dem Absetzen des Auftrages zur Protokollerstellung abgesetzt, ist die Auftrags-Id noch unbekannt, und es wirdnullzurückgegeben!- Returns:
- Auftrags-Id oder
nullfalls die Auftrags-Id noch unbekannt ist. Bei Protokoll-Erstellen-Aufträgen ist die Auftrags-ID identisch zur Protokoll-Id.
-
bufferedDataSize
public int bufferedDataSize()
Liefert die Anzahl der im Client-Puffer liegenden Datensätze.- Returns:
- Anzahl der im Client-Puffer liegenden Datensätze.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object- See Also:
Object.toString()
-
close
public void close()
Beendet die Übertragung der Protokolldaten. Der PuA-Server wird darüber informiert, dass weitere Datensätze nicht übertragen werden müssen. Sollte das Protokoll gespeichert werden, wird nach diesem Aufruf das Protokoll nur noch gespeichert, aber nicht online übertragen.- Specified by:
closein interfacejava.lang.AutoCloseable
-
-