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.AutoCloseable
Klasse zum Abfragen der Ergebnisdatensätze.
-
-
Field Summary
Fields Modifier and Type Field Description protected ProtocolAdministrationData
_protocolAdministrationData
protected ProtocolAggregationData
_protocolAggregationData
-
Constructor Summary
Constructors Constructor Description ProtocolResultStream(ProtocolAnswerReceiver receiver, ProtocolRequestResult result, PuaClient puaClient)
-
Method Summary
Modifier and Type Method Description void
abort()
Deprecated.Unklarer Name, da die Protokollerstellung nciht abgebrochen wird, sodnern nur der Abruf der Daten.int
bufferedDataSize()
Liefert die Anzahl der im Client-Puffer liegenden Datensätze.void
close()
Beendet die Übertragung der Protokolldaten.java.lang.String
getErrorMsg()
java.lang.Long
getJobId()
Liefert die Auftrags-Id.java.lang.Long
getProtocolId()
Deprecated.Diese Methode liefert nicht mehr die Protokoll-Id, sondern die eindeutige ID des protokollbezogenen Auftragsboolean
hasNext()
Zeigt an dass keine weiteren Ergebnisdatensätze mehr eintreffen werden.boolean
isComplete()
Zeigt an ob das Protokoll vollständig und erfolgreich übertragen wurde.boolean
isRequestSuccessful()
Zeigt den Status der Aktion ab.ProtocolResult
take()
Liefert jeweils einen Antwortdatensatz.java.lang.String
toString()
boolean
wasAborted()
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 Methodetrue
zurückliefern, wenn die Anfrage an den Server gesendet werden konnte. D.h.true
bedeutet 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.false
geliefert, 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:
true
falls das Protokoll vollständig übertragen wurde.false
falls 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.
null
falls 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 1xnull
zurückliefern, bevorisDone
true
zurückliefert.- Returns:
true
falls 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:
true
falls die Protokollerstellung abgebrochen wurde.
-
getJobId
public java.lang.Long getJobId()
Liefert die Auftrags-Id.- Returns:
- Auftrags-Id oder
null
falls 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 wirdnull
zurückgegeben!- Returns:
- Auftrags-Id oder
null
falls 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:
toString
in 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:
close
in interfacejava.lang.AutoCloseable
-
-