Package de.bsvrz.ars.ars.persistence
Klasse CompoundArchiveTimeIndex
java.lang.Object
de.bsvrz.ars.ars.persistence.CompoundArchiveTimeIndex
Klasse, die mehrere ArchiveTimeIndex-Objekte zusammenfasst und als einen einzigen Index behandelt. Damit werden
Archivanfragen und ähnliche Operationen über mehrere Wochenverzeichnisse hinweg unterstützt.
-
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungCompoundArchiveTimeIndex
(IndexAggregator<ArchiveTimeIndex> aggregator) CompoundArchiveTimeIndex
(List<ArchiveTimeIndex> indexes, Map<ArchiveTimeIndex, PersistenceDirectory> directories) Erstellt eine neuen CompoundArchiveTimeIndex. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibunggetContainerIDByArchiveTime
(long minimumTime, long maximumTime) Gibt die Indexwerte eines Archivzeitbereiches zurück.boolean
isComplete
(SequenceSpecification sequenceSpecification) Gibt zurück, ob diese Version des Indexes den gesamten übergebenen Datenbereich umfasst.
-
Konstruktordetails
-
CompoundArchiveTimeIndex
public CompoundArchiveTimeIndex(List<ArchiveTimeIndex> indexes, Map<ArchiveTimeIndex, PersistenceDirectory> directories) Erstellt eine neuen CompoundArchiveTimeIndex.- Parameter:
indexes
- Zu verkettende Indexe in zeitlich aufsteigender Reihenfolgedirectories
- Zuordnung der Indexe zu den zugehörigen Verzeichnissen. Alle Elemente von idnexes müssen enthalten sein.
-
CompoundArchiveTimeIndex
-
-
Methodendetails
-
getContainerIDByArchiveTime
public LocatedIndexResult<IndexValues> getContainerIDByArchiveTime(long minimumTime, long maximumTime) throws IndexException Gibt die Indexwerte eines Archivzeitbereiches zurück.- Parameter:
minimumTime
- Minimum-Archivzeit in Epoch-MillismaximumTime
- Maximum-Archivzeit in Epoch-Millis- Gibt zurück:
- die Container eines Archivzeitbereiches
- Löst aus:
IndexException
- Lesefehler
-
isComplete
Gibt zurück, ob diese Version des Indexes den gesamten übergebenen Datenbereich umfasst. Dabei muss ggf. auch ein Anfangszustand oder ein Endzustand enthalten sein. Falls dieser möglicherweise fehlt, wird false zurückgegeben, und der Aufrufer muss evtl. einen größeren Bereich der Persistenz analysieren.Diese Methode wird für die Optimierung bei Archivanfragen und ähnlichen Operationen verwendet, wo im Normalfall Anhand der Verzeichnisstruktur nut bestimmte Wochenverzeichnisse benötigt werden. Erst wenn hier festgestellt wird, dass nicht alle benötigten Daten vorliegen (hier also false zurückgegeben wird), dann müssen ggf. mehr oder alle Wochenverzeichnisse analysiert werden.
- Parameter:
sequenceSpecification
- Ursprüngliche Zeitspezifikation. Diese Methode unterstützt nurAllDataSpecification
undArchiveTimeSequenceSpecification
. Bei anderen Spezifikationen ist keine Aussage möglich.- Gibt zurück:
- true: Dieser zusammengefasste Index enthält sicher alle benötigten Daten, false: Es fehlen ggf. weitere Daten
- Löst aus:
IndexException
- Lesefehler bei Abfrage des Indexes
-