Package de.bsvrz.pua.prot.processing
Class IMDSBuilder
- java.lang.Object
-
- de.bsvrz.pua.prot.processing.IMDSBuilder
-
public class IMDSBuilder extends java.lang.ObjectInterMediateDataSetBuilder Erzeugt Ausgangsdatensätze und legt sie in einem Puffer ab.
-
-
Field Summary
Fields Modifier and Type Field Description protected de.bsvrz.sys.funclib.losb.ringbuffer.RingBuffer<ValueContainer>_realElementValuesPuffer, der die Zuordnung: Reale Elemente -> Werte enthält.
-
Constructor Summary
Constructors Constructor Description IMDSBuilder(boolean merge, boolean noChangeMarkerPerCell, java.util.List<Elements> attributes, de.bsvrz.sys.funclib.losb.util.Tuple<ExpressionTree,java.lang.Boolean> constraint, java.util.Hashtable<RealElement,ValueProvider> realElements, java.util.Hashtable<TempAttributeDescription,TempAttribut> tempElements, ProcessingBuffer processingBuffer, Status status, int startPeriodIndex)Initialisierung.
-
Method Summary
Modifier and Type Method Description voidcollectData(boolean insertEmpty, long winnerTimeStamp)Sammelt die Werte der realen Attribute.voidcreateIntermediateDataSet(boolean done)Bereitet die Basisdaten auf und erstellt Ausgangsdatensätze.bytegetStatus()Liefert den momentanen Status zurück.booleanisDone()Zeigt an dass keine weiteren Daten mehr vorliegen.voidnextInterval(long endOfInterval)Markiert den zuletzt eingefügten Ausgangsdatensatz als den letzten des Intervalls.voidthrowAway()Verwirft den zuletzt eingefügten Datensatz
-
-
-
Field Detail
-
_realElementValues
protected de.bsvrz.sys.funclib.losb.ringbuffer.RingBuffer<ValueContainer> _realElementValues
Puffer, der die Zuordnung: Reale Elemente -> Werte enthält.
-
-
Constructor Detail
-
IMDSBuilder
public IMDSBuilder(boolean merge, boolean noChangeMarkerPerCell, java.util.List<Elements> attributes, de.bsvrz.sys.funclib.losb.util.Tuple<ExpressionTree,java.lang.Boolean> constraint, java.util.Hashtable<RealElement,ValueProvider> realElements, java.util.Hashtable<TempAttributeDescription,TempAttribut> tempElements, ProcessingBuffer processingBuffer, Status status, int startPeriodIndex)Initialisierung.- Parameters:
merge-truefalls Datensätze verschmolzen werden sollen.noChangeMarkerPerCell- true wenn NoChange-Informationen für Zustandsprotokolle pro Zelle generiert werden sollen (statt pro Zeile)attributes- Im Spalten-Bereich definierte Attribute.constraint- Im Skript definierte Einschränlung.realElements- Zuordnung der realen Attribute zu ihren Wertebeschaffern.tempElements- Zuordnung der temporären Attribute zu ihren Wertebeschaffern.processingBuffer- Datenaufbereiter.status- Objekt zur Statusberechung.startPeriodIndex- StartPeriodIndex
-
-
Method Detail
-
collectData
public void collectData(boolean insertEmpty, long winnerTimeStamp)Sammelt die Werte der realen Attribute. Stellt dann einen Basisdatensatz mit den Werten der realen Attribute zusammen.- Parameters:
insertEmpty-truelegt fest, dass ein leerer Datensatz eingefügt werden soll.winnerTimeStamp- Minimaler, nicht-aufgefüllter Zeitstempel.
-
createIntermediateDataSet
public void createIntermediateDataSet(boolean done) throws java.lang.InterruptedException, de.bsvrz.sys.funclib.losb.exceptions.FailureExceptionBereitet die Basisdaten auf und erstellt Ausgangsdatensätze. Wertet alle im Puffer liegenden Wert aus.- Parameters:
done- Das Sammeln der Daten wurde abgeschlossen.- Throws:
java.lang.InterruptedException- Datenaufbereitung wurde abgebrochende.bsvrz.sys.funclib.losb.exceptions.FailureException- Fehler beim Aufbereiten der Daten.
-
isDone
public boolean isDone()
Zeigt an dass keine weiteren Daten mehr vorliegen.- Returns:
truefalls keine weiteren Daten mehr vorliegen.
-
nextInterval
public void nextInterval(long endOfInterval)
Markiert den zuletzt eingefügten Ausgangsdatensatz als den letzten des Intervalls.- Parameters:
endOfInterval- Endzeitpunkt des Intervalls, das gerade beendet wurde.- See Also:
ValueContainer.setLastOfInterval(long)
-
getStatus
public byte getStatus()
Liefert den momentanen Status zurück.- Returns:
- Status zwischen 0 und 100.
-
throwAway
public void throwAway() throws java.lang.InterruptedExceptionVerwirft den zuletzt eingefügten Datensatz- Throws:
java.lang.InterruptedException- Exception
-
-