public abstract class RealArchiveElement extends ValueProvider
Modifier and Type | Field and Description |
---|---|
private ArchiveUser |
_archiveUser
Verbindung zum Archivsystem
|
private DataDescription |
_dataDescription
Anzufragende Attributgruppe & Aspekt
|
private static Debug |
_debug
Debug - Ausgabe
|
private boolean |
_hasNext
Zeigt an ob noch weitere Daten geliefert werden.
|
private SystemObject |
_systemObject
Anzufragendes Objekt.
|
dataInformation, value
Constructor and Description |
---|
RealArchiveElement(ArchiveUser archiveUser,
DataDescription dataDescription,
SystemObject object,
ProtocolType protocolType,
boolean isShown,
boolean padData)
Konstruktor.
|
Modifier and Type | Method and 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.
|
private boolean |
isTimeSorted(ExtResultData data)
Zeigt ob die Daten nach Datenzeitstempel geordnet sind oder nicht.
|
void |
request()
Führt eine Archivanfrage durch.
|
java.lang.String |
toString() |
boolean |
updateDataInformation()
Erzeugt die Markierungsinformation.
|
getDataInformation, getMostRecentDataIndex, getMostRecentTimeStamp, getUsedDataIndex, getUsedTimeStamp, getValue, isShown, isWinner, lost, reset, take, won
private DataDescription _dataDescription
private SystemObject _systemObject
private ArchiveUser _archiveUser
private boolean _hasNext
private static final Debug _debug
public RealArchiveElement(ArchiveUser archiveUser, DataDescription dataDescription, SystemObject object, ProtocolType protocolType, boolean isShown, boolean padData)
archiveUser
- Verbindung zum ArchivsystemdataDescription
- Datenbeschreibung. Wichtig: Simulationsvariante muss explizit gesetzt werden! Sonst liefert dataDescription.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.public void request() throws FailureException, java.lang.InterruptedException
archiveUser
verwendet. Nach dem erfolgreichen
Ausführen dieser Methode wird hasNext()
true
zurückliefern.FailureException
- Fehler bei der Archivanfragejava.lang.InterruptedException
- Warten auf Antwortdatensatz wurde unterbrochen.protected boolean executeTake(long timeout) throws FailureException, java.lang.InterruptedException
executeTake
in class ValueProvider
timeout
- Hat keine Bedeutungtrue
falls Daten empfangen wurde, false
falls es keine Daten gibt.FailureException
- Fehler bei der Archivanfragejava.lang.InterruptedException
- Warten auf Antwortdatensatz wurde unterbrochen.public boolean updateDataInformation()
ValueProvider
updateDataInformation
in class ValueProvider
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, wird false
zurückgegeben.ValueProvider.updateDataInformation()
private boolean isTimeSorted(ExtResultData data)
data
- Datensatz vom Archivsystem. Darf null
sein; dann wird false
zurückgeliefert.true
falls die Daten nach Datenzeitstempel sortiert sind. false
sonst.public boolean hasNext()
ValueProvider
ValueProvider.take(long)
aktualisiert. false
wird erst
zurückgeliefert, wenn der Versuch weitere Daten mittels ValueProvider.take(long)
abzurufen fehlschlägt.hasNext
in class ValueProvider
true
falls noch weitere Daten geliefert werden.false
sonst.ValueProvider.hasNext()
protected ArchiveUser getArchiveUser()
public void abort()
abort
in class ValueProvider
ArchiveDataStream.abort()
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()