Package de.bsvrz.ars.ars.persistence
Class DeletedMinMaxIterator
java.lang.Object
de.bsvrz.ars.ars.persistence.DeletedMinMaxIterator
- All Implemented Interfaces:
ContainerManagementData
,DataIterator
,java.lang.AutoCloseable
public final class DeletedMinMaxIterator extends java.lang.Object implements DataIterator, ContainerManagementData
Iterator über die Datensätze eines gelöschten Containers. Es werden genau 2 künstliche Einträge zurückgegeben mit den Minimum-Werten und dann den Maximum-Werten aus den Headern.
Daten können nicht abgefragt werden.
-
Constructor Summary
Constructors Constructor Description DeletedMinMaxIterator(ContainerHeaders headers, de.bsvrz.dav.daf.main.archive.ArchiveDataKind adk, IdDataIdentification dataIdentification)
Erteugt einen neuen DeletedMinMaxIterator -
Method Summary
Modifier and Type Method Description void
close()
Terminiert das iterieren.boolean
getContainerHeaderParamAsBoolean(ContainerManagementInformation param)
Liefert den Wert des Parameters als boolschen Wert zurück.int
getContainerHeaderParamAsInt(ContainerManagementInformation param)
Liefert den Wert des Parameters als numerischen Wert vom Typlong
zurück.long
getContainerHeaderParamAsLong(ContainerManagementInformation param)
Liefert den Wert des Parameters als numerischen Wert vom Typlong
zurück.java.lang.String
getContainerHeaderParamAsString(ContainerManagementInformation param)
Liefert den Wert des Parameters als String-Wert zurück.ContainerManagementData
getContainerManagementData()
Gibt die Containerheaderdaten des Containers des aktuell betrachteten Datensatzes zurückIdContainerFileDir
getLocation()
Gibt den Ort des Containers zurückboolean
isEmpty()
Gibttrue
zurück, wenn der Iterator erschöpft ist.void
peek(ContainerDataResult result)
Kopiert die Daten des aktuellen Elements in das angegebene Result-Objekt.long
peekArchiveTime()
Ruft die aktuelle Archivzeit ab.long
peekDataIndex()
Ruft den aktuellen Datenindex ab.long
peekDataTime()
Ruft die aktuelle Datenzeit ab.ContainerDataResult
peekNext()
Gibt Daten des auf die gültige Sequenz folgenden Datensatzes zurück, damit kann dann unter anderem bestimmt werden, wie lange der Datensatz gültig ist.void
remove()
Entfernt das aktuelle Element.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface de.bsvrz.ars.ars.persistence.iter.DataIterator
poll
-
Constructor Details
-
DeletedMinMaxIterator
public DeletedMinMaxIterator(ContainerHeaders headers, de.bsvrz.dav.daf.main.archive.ArchiveDataKind adk, IdDataIdentification dataIdentification)Erteugt einen neuen DeletedMinMaxIterator- Parameters:
headers
- Header des Containersadk
- ArchivdatenartdataIdentification
- Datenidentifikation
-
-
Method Details
-
peek
Description copied from interface:DataIterator
Kopiert die Daten des aktuellen Elements in das angegebene Result-Objekt. Dies ist eine Optimierung, damit nicht ständig neue Result-Objekt angelegt werden müssen.- Specified by:
peek
in interfaceDataIterator
- Parameters:
result
- Ziel-Element
-
peekNext
Description copied from interface:DataIterator
Gibt Daten des auf die gültige Sequenz folgenden Datensatzes zurück, damit kann dann unter anderem bestimmt werden, wie lange der Datensatz gültig ist. Diese Methode darf nur aufgerufen werden, wennDataIterator.isEmpty()
true zurückliefert.- Specified by:
peekNext
in interfaceDataIterator
- Returns:
- Ziel-Element oder null falls es keinen nächsten Datensatz gibt
-
peekDataIndex
public long peekDataIndex()Description copied from interface:DataIterator
Ruft den aktuellen Datenindex ab. Entspricht
ist aber wahrscheinlich performanter.ContainerDataResult result = new ContainerDataResult() this.peek(result) return result.getDataIndex()
- Specified by:
peekDataIndex
in interfaceDataIterator
- Returns:
- Datenindex des aktuellen Elements
-
peekDataTime
public long peekDataTime()Description copied from interface:DataIterator
Ruft die aktuelle Datenzeit ab. Entspricht
ist aber wahrscheinlich performanter.ContainerDataResult result = new ContainerDataResult() this.peek(result) return result.getDataTime()
- Specified by:
peekDataTime
in interfaceDataIterator
- Returns:
- Datenzeit des aktuellen Elements
-
peekArchiveTime
public long peekArchiveTime()Description copied from interface:DataIterator
Ruft die aktuelle Archivzeit ab. Entspricht
ist aber wahrscheinlich performanter.ContainerDataResult result = new ContainerDataResult() this.peek(result) return result.getArchiveTime()
- Specified by:
peekArchiveTime
in interfaceDataIterator
- Returns:
- Archivzeit des aktuellen Elements
-
remove
public void remove()Description copied from interface:DataIterator
Entfernt das aktuelle Element.- Specified by:
remove
in interfaceDataIterator
-
isEmpty
public boolean isEmpty()Description copied from interface:DataIterator
Gibttrue
zurück, wenn der Iterator erschöpft ist. Ist das der Fall liefern alle anderen Funktionen außer close()NoSuchElementException
s.- Specified by:
isEmpty
in interfaceDataIterator
- Returns:
true
, wenn der Iterator erschöpft ist, sonstfalse
-
close
public void close()Description copied from interface:DataIterator
Terminiert das iterieren. Hierdurch werden alle ggf. noch offenen Containerdateien geschlossen.- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfaceDataIterator
-
getContainerManagementData
Description copied from interface:DataIterator
Gibt die Containerheaderdaten des Containers des aktuell betrachteten Datensatzes zurück- Specified by:
getContainerManagementData
in interfaceDataIterator
- Returns:
- ContainerManagementData
-
getContainerHeaderParamAsString
Description copied from interface:ContainerManagementData
Liefert den Wert des Parameters als String-Wert zurück. Wirft einePersistenceException
, falls der Parameter nicht gefunden wurde.- Specified by:
getContainerHeaderParamAsString
in interfaceContainerManagementData
- Parameters:
param
- Container-Header-Parameter- Returns:
- Parameter-Wert als String
- See Also:
KeyValParam
-
getContainerHeaderParamAsBoolean
Description copied from interface:ContainerManagementData
Liefert den Wert des Parameters als boolschen Wert zurück. Wirft einePersistenceException
, falls der Parameter nicht gefunden wurde oder nicht in den Typboolean
umgeformt werden kann.- Specified by:
getContainerHeaderParamAsBoolean
in interfaceContainerManagementData
- Parameters:
param
- Container-Header-Parameter- Returns:
true
oderfalse
-
getContainerHeaderParamAsLong
Description copied from interface:ContainerManagementData
Liefert den Wert des Parameters als numerischen Wert vom Typlong
zurück. Wirft einePersistenceException
, falls der Parameter nicht gefunden wurde oder nicht in den Typlong
umgeformt werden kann.- Specified by:
getContainerHeaderParamAsLong
in interfaceContainerManagementData
- Parameters:
param
- Container-Header-Parameter- Returns:
- Ganzzahl als
long
-
getContainerHeaderParamAsInt
Description copied from interface:ContainerManagementData
Liefert den Wert des Parameters als numerischen Wert vom Typlong
zurück. Wirft einePersistenceException
, falls der Parameter nicht gefunden wurde oder nicht in den Typlong
umgeformt werden kann.- Specified by:
getContainerHeaderParamAsInt
in interfaceContainerManagementData
- Parameters:
param
- Container-Header-Parameter- Returns:
- Ganzzahl als
long
-
getLocation
Description copied from interface:ContainerManagementData
Gibt den Ort des Containers zurück- Specified by:
getLocation
in interfaceContainerManagementData
- Returns:
- den Ort des Containers
-