Class ArchiveRequestHelper
- java.lang.Object
-
- de.inovat.kex.bast.common.ArchiveRequestHelper
-
public abstract class ArchiveRequestHelper extends java.lang.Object
stellt Funktionen zum Abfragen der Archivs bereit, die die Daten für alle Versionen, der durch die übergebenen Pids präsentierenen Objekte, bestimmt.
Einige Funktionen filtern die Daten nach dem Zeitstempel so, dass nur die Datensätze zurückgegeben werden, die innerhalb der angegebenen Zeitspanne liegen.
-
-
Method Summary
Modifier and Type Method Description static java.util.Set<de.bsvrz.dav.daf.main.archive.ArchiveData>
getArchivData(de.bsvrz.dav.daf.main.ClientDavInterface dav, java.lang.String soPid, java.lang.String atgPid, java.lang.String aspPid, long von, long bis)
gibt die sortierten ArchivDaten im angegebenen Bereich (einschließlich der Grenzen) sortiert und gefiltert zurück.static de.bsvrz.dav.daf.main.archive.ArchiveDataQueryResult
getArchiveDataQueryResult(de.bsvrz.dav.daf.main.ClientDavInterface dav, java.lang.String soPid, java.lang.String atgPid, java.lang.String aspPid, long von, long bis)
gibt das Ergebnis für die ArchivAnfrage nach den SystemObjekten mit der Pid im angegebenen Zeitraum ungefiltert zurück.static de.bsvrz.dav.daf.main.config.Aspect
getAspect(de.bsvrz.dav.daf.main.config.AttributeGroup atg, java.lang.String aspPid)
bestimmt den Aspect mit der Pid für die angegebene AttributeGroup.static de.bsvrz.dav.daf.main.config.AttributeGroup
getAttributeGroup(de.bsvrz.dav.daf.main.config.SystemObject so, java.lang.String atgPid)
bestimmt die AttributeGroup mit der Pid für das angegebene SystemObject.static de.bsvrz.dav.daf.main.archive.ArchiveData
getLastArchiveDataByArchiveTime(de.bsvrz.dav.daf.main.ClientDavInterface dav, de.bsvrz.dav.daf.main.config.SystemObject so, de.bsvrz.dav.daf.main.DataDescription descr, long maxHistory)
Bestimmung des zuletzt archivierten Datensatzes aus den im Archiv vorliegenden Daten für das gegebene Systemobjekt.static de.bsvrz.dav.daf.main.archive.ArchiveData
getLastArchiveDataByDataTime(de.bsvrz.dav.daf.main.ClientDavInterface connection, de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.dav.daf.main.DataDescription descr, long fromTime, long toTime)
Bestimmung des jüngsten Datensatzes aus den im Archiv vorliegenden Daten für das gegebene Systemobjekt.static de.bsvrz.dav.daf.main.archive.ArchiveDataStream
getStream(de.bsvrz.dav.daf.main.ClientDavInterface dav, java.lang.String soPid, java.lang.String atgPid, java.lang.String aspPid, long von, long bis)
gibt das Ergebnis für die ArchivAnfrage nach den SystemObjekten mit der Pid im angegebenen Zeitraum ungefiltert als Stream zurück.
-
-
-
Method Detail
-
getArchiveDataQueryResult
public static de.bsvrz.dav.daf.main.archive.ArchiveDataQueryResult getArchiveDataQueryResult(de.bsvrz.dav.daf.main.ClientDavInterface dav, java.lang.String soPid, java.lang.String atgPid, java.lang.String aspPid, long von, long bis) throws java.io.IOException
gibt das Ergebnis für die ArchivAnfrage nach den SystemObjekten mit der Pid im angegebenen Zeitraum ungefiltert zurück.- Parameters:
dav
- ClientDavInterfacesoPid
- StringatgPid
- StringaspPid
- Stringvon
- longbis
- long- Returns:
- ArchiveDataQueryResult
- Throws:
java.io.IOException
- Exception.
-
getStream
public static de.bsvrz.dav.daf.main.archive.ArchiveDataStream getStream(de.bsvrz.dav.daf.main.ClientDavInterface dav, java.lang.String soPid, java.lang.String atgPid, java.lang.String aspPid, long von, long bis) throws java.io.IOException, java.lang.InterruptedException, java.lang.IllegalStateException
gibt das Ergebnis für die ArchivAnfrage nach den SystemObjekten mit der Pid im angegebenen Zeitraum ungefiltert als Stream zurück.- Parameters:
dav
- ClientDavInterfacesoPid
- StringatgPid
- StringaspPid
- Stringvon
- longbis
- long- Returns:
- ArchiveDataStream
- Throws:
java.io.IOException
- Exception.java.lang.InterruptedException
- Exception.java.lang.IllegalStateException
- Exception.
-
getArchivData
public static java.util.Set<de.bsvrz.dav.daf.main.archive.ArchiveData> getArchivData(de.bsvrz.dav.daf.main.ClientDavInterface dav, java.lang.String soPid, java.lang.String atgPid, java.lang.String aspPid, long von, long bis) throws java.io.IOException
gibt die sortierten ArchivDaten im angegebenen Bereich (einschließlich der Grenzen) sortiert und gefiltert zurück.- Parameters:
dav
- ClientDavInterfacesoPid
- StringatgPid
- StringaspPid
- Stringvon
- longbis
- long- Returns:
- Set
- Throws:
java.io.IOException
- wenn Fehler beim Lesen aufgetreten sind.
-
getAttributeGroup
public static final de.bsvrz.dav.daf.main.config.AttributeGroup getAttributeGroup(de.bsvrz.dav.daf.main.config.SystemObject so, java.lang.String atgPid)
bestimmt die AttributeGroup mit der Pid für das angegebene SystemObject.- Parameters:
so
- SystemObjectatgPid
- String- Returns:
- AttributeGroup
-
getAspect
public static final de.bsvrz.dav.daf.main.config.Aspect getAspect(de.bsvrz.dav.daf.main.config.AttributeGroup atg, java.lang.String aspPid)
bestimmt den Aspect mit der Pid für die angegebene AttributeGroup.- Parameters:
atg
- AttributeGroupaspPid
- String- Returns:
- Aspect
-
getLastArchiveDataByArchiveTime
public static de.bsvrz.dav.daf.main.archive.ArchiveData getLastArchiveDataByArchiveTime(de.bsvrz.dav.daf.main.ClientDavInterface dav, de.bsvrz.dav.daf.main.config.SystemObject so, de.bsvrz.dav.daf.main.DataDescription descr, long maxHistory)
Bestimmung des zuletzt archivierten Datensatzes aus den im Archiv vorliegenden Daten für das gegebene Systemobjekt.
Da das Archivsystem als Zustandsarchiv und nicht als Datenhaltung ausgelegt ist, ist eine verlässliche Suche nur mit Brute-Force Methoden möglich. Dazu werden alle Änderungen bis zu einer maximalen Zeitspanne ab aktuellem Zeitpunkt abgefragt und der zu letzt archivierte Datensatz gesucht.
Falls die Archivanfrage keine (gültigen) Ergebnisse enthält, wird der Wertnull
zurückgegeben.
Ausgewertet werden alle Online, nachgelieferten und nachgeforderten Werte von allen im Anfragezeitraum gültigen Versionen des Objekts.- Parameters:
dav
- Datenverteilerverbindungso
- das anzufragenden Objektdescr
- Datenbeschreibung der gesuchten DatenmaxHistory
- long der maximale Zeitbereich in ms, bis zu dem vom aktuellen zeitpunkt aus nach einem Datensatz gesucht werden soll- Returns:
- der Archivdatensatz mit dem jüngsten Archivzeitstempel im Anfragezeitraum
- Throws:
java.lang.IllegalStateException
- Falls die Archivanfrage nicht erfolgreich war und keine Ergebnisdatenströme bestimmt werden können.
-
getLastArchiveDataByDataTime
public static de.bsvrz.dav.daf.main.archive.ArchiveData getLastArchiveDataByDataTime(de.bsvrz.dav.daf.main.ClientDavInterface connection, de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.dav.daf.main.DataDescription descr, long fromTime, long toTime) throws java.lang.IllegalStateException
Bestimmung des jüngsten Datensatzes aus den im Archiv vorliegenden Daten für das gegebene Systemobjekt.
Da das Archivsystem als Zustandsarchiv und nicht als Datenhaltung ausgelegt ist, ist eine verlässliche Suche nur mit Brute-Force Methoden möglich. Dazu werden alle Änderungen bis zu einer maximalen Zeitspanne ab aktuellem Zeitpunkt abgefragt und in den Antwortdaten der Datensatz mit dem jüngsten Datenzeitstempel gesucht. Daten die außerhalb des angefragten Bereichs liegen werden ignoriert.
Falls die Archivanfrage keine (gültigen) Ergebnisse enthält, wird der Wertnull
zurückgegeben.
Ausgewertet werden alle Online, nachgelieferten und nachgeforderten Werte von allen im Anfragezeitraum gültigen Versionen des Objekts.- Parameters:
connection
-ClientDavInterface
Datenverteilerverbindungobject
-SystemObject
das anzufragenden Objektdescr
-DataDescription
Datenbeschreibung der gesuchten DatenfromTime
- long Beginn SuchbereichtoTime
- long Ende Suchbereich- Returns:
ArchiveData
der Archivdatensatz mit dem jüngsten Datenzeitstempel im Anfragezeitraum- Throws:
java.lang.IllegalStateException
- Falls die Archivanfrage nicht erfolgreich war und keine Ergebnisdatenströme bestimmt werden können.
-
-