Class RealArchiveElement
- java.lang.Object
-
- de.bsvrz.pua.prot.processing.ValueProvider
-
- de.bsvrz.pua.prot.processing.archivebuffer.RealArchiveElement
-
- Direct Known Subclasses:
RealArchiveAttribute
,RealArchiveAttributeGroup
public abstract class RealArchiveElement extends ValueProvider
Klasse die Methoden zur Bestimmung von Archiv-Werten für reale Attribute und Attributgruppen durchführt. Basisklasse für Attributgruppen oder Reales Attribute mit zusätzlichen Informationen für die Datenaufbereitung.
-
-
Field Summary
-
Fields inherited from class de.bsvrz.pua.prot.processing.ValueProvider
dataInformation, value
-
-
Constructor Summary
Constructors Constructor Description RealArchiveElement(ArchiveUser archiveUser, de.bsvrz.dav.daf.main.DataDescription dataDescription, de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.sys.funclib.losb.datk.ProtocolType protocolType, boolean isShown, boolean padData)
Konstruktor.
-
Method Summary
Modifier and Type Method Description void
abort()
Bricht die Datensammlung ab.protected boolean
executeTake(long timeout)
Holt den nächsten Datensatz aus dem Archivsystem.protected ArchiveUser
getArchiveUser()
Liefert eine Verbindung zum Archivsystem mit Standardparametern für die Archivanfrage.boolean
hasNext()
Zeigt an ob noch weitere Daten geliefert werden.void
request()
Führt eine Archivanfrage durch.java.lang.String
toString()
boolean
updateDataInformation()
Erzeugt die Markierungsinformation.-
Methods inherited from class de.bsvrz.pua.prot.processing.ValueProvider
getDataInformation, getMostRecentDataIndex, getMostRecentTimeStamp, getUsedDataIndex, getUsedTimeStamp, getValue, isShown, isWinner, lost, reset, take, won
-
-
-
-
Constructor Detail
-
RealArchiveElement
public RealArchiveElement(ArchiveUser archiveUser, de.bsvrz.dav.daf.main.DataDescription dataDescription, de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.sys.funclib.losb.datk.ProtocolType protocolType, boolean isShown, boolean padData)
Konstruktor.- Parameters:
archiveUser
- Verbindung zum ArchivsystemdataDescription
- Datenbeschreibung. Wichtig: Simulationsvariante muss explizit gesetzt werden! Sonst liefertdataDescription.getSimVar()
ggf. -1, und das kann vom Archivsystem nicht verarbeitet werden.object
- Objekt für das die Archivanfrage gestellt werden soll.protocolType
- ProtokollartisShown
- Wird das Element im Spalten-Bereich verwendet?true
Element wird im Spalten Bereich verwendet.padData
-true
falls Daten aufgefüllt werden dürfen.
-
-
Method Detail
-
request
public void request() throws de.bsvrz.sys.funclib.losb.exceptions.FailureException, java.lang.InterruptedException
Führt eine Archivanfrage durch. Dabei werden die im Konstruktor übergebenen Standardparameter vonarchiveUser
verwendet. Nach dem erfolgreichen Ausführen dieser Methode wirdhasNext()
true
zurückliefern.- Throws:
de.bsvrz.sys.funclib.losb.exceptions.FailureException
- Fehler bei der Archivanfragejava.lang.InterruptedException
- Warten auf Antwortdatensatz wurde unterbrochen.
-
executeTake
protected boolean executeTake(long timeout) throws de.bsvrz.sys.funclib.losb.exceptions.FailureException, java.lang.InterruptedException
Holt den nächsten Datensatz aus dem Archivsystem.- Specified by:
executeTake
in classValueProvider
- Parameters:
timeout
- Hat keine Bedeutung- Returns:
true
falls Daten empfangen wurde,false
falls es keine Daten gibt.- Throws:
de.bsvrz.sys.funclib.losb.exceptions.FailureException
- Fehler bei der Archivanfragejava.lang.InterruptedException
- Warten auf Antwortdatensatz wurde unterbrochen.
-
updateDataInformation
public boolean updateDataInformation()
Description copied from class:ValueProvider
Erzeugt die Markierungsinformation.- Specified by:
updateDataInformation
in classValueProvider
- Returns:
true
: Es gibt einen Sprung im Datensatzindex. (Ist dies der Fall, muss muss ein leerer Datensatz eingefügt werden! Siehe TAnf V.1.1 S. 33, "Markierung Pot. Datenlücke"). Falls noch keine Daten vorliegen, wirdfalse
zurückgegeben.- See Also:
ValueProvider.updateDataInformation()
-
hasNext
public boolean hasNext()
Description copied from class:ValueProvider
Zeigt an ob noch weitere Daten geliefert werden. Der Wert wird nur durch einen Aufruf vonValueProvider.take(long)
aktualisiert.false
wird erst zurückgeliefert, wenn der Versuch weitere Daten mittelsValueProvider.take(long)
abzurufen fehlschlägt.- Specified by:
hasNext
in classValueProvider
- Returns:
true
falls noch weitere Daten geliefert werden.false
sonst.- See Also:
ValueProvider.hasNext()
-
getArchiveUser
protected ArchiveUser getArchiveUser()
Liefert eine Verbindung zum Archivsystem mit Standardparametern für die Archivanfrage.- Returns:
- Liefert eine Verbindung zum Archivsystem
-
abort
public void abort()
Bricht die Datensammlung ab.- Specified by:
abort
in classValueProvider
- See Also:
ArchiveDataStream.abort()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
- See Also:
Object.toString()
-
-