Class StandardContainerWalk
java.lang.Object
de.bsvrz.ars.ars.persistence.walk.internal.StandardContainerWalk
- All Implemented Interfaces:
ContainerWalk
public class StandardContainerWalk extends java.lang.Object implements ContainerWalk
Klasse, die über alle angegebenen Container iteriert. Die abzuarbeitenden Containerverzeichnisse werden von einem
DataIdentificationDirWalk
geliefert, die Reihenfolge in denen die Containerverzeichnisse betrachtet werden ist daher im Allgemeinen undefiniert.
Die Container in einem Verzeichnis werden zusammen betrachtet, aber ebenfalls in nicht notwendigerweise sortierter Reihenfolge.-
Constructor Summary
Constructors Constructor Description StandardContainerWalk(DataIdentificationDirWalk dirWalk, PersistenceManager persMgr)
Erstellt eine Instanz -
Method Summary
Modifier and Type Method Description void
execute(java.lang.String actionName, int numThreads, ContainerAction action)
Führt den Verzeichnisdurchlauf aus.java.time.Duration
getStatusInterval()
Gibt das Intervall zurück, in dem Statusmeldungen ausgegeben werden (positiv)StatusPrinter
getStatusPrinter()
Gibt die Klasse zurück, die Statusmeldungen ausgibt.void
setStatusInterval(java.time.Duration statusInterval)
Setzt das Statusintervallvoid
setStatusPrinter(StatusPrinter statusPrinter)
Setzt die Klasse, die Statusmeldungen schreibt.void
terminate()
Sorgt für ein sofortiges, aber kontrolliertes Beenden.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
StandardContainerWalk
Erstellt eine Instanz- Parameters:
dirWalk
- Klasse, die über Containerverzeichnisse iteriert.persMgr
- Persistenzverwaltung
-
-
Method Details
-
getStatusInterval
public java.time.Duration getStatusInterval()Description copied from interface:ContainerWalk
Gibt das Intervall zurück, in dem Statusmeldungen ausgegeben werden (positiv)- Specified by:
getStatusInterval
in interfaceContainerWalk
- Returns:
- das Intervall
-
setStatusInterval
public void setStatusInterval(java.time.Duration statusInterval)Description copied from interface:ContainerWalk
Setzt das Statusintervall- Specified by:
setStatusInterval
in interfaceContainerWalk
- Parameters:
statusInterval
- Intervall
-
getStatusPrinter
Description copied from interface:ContainerWalk
Gibt die Klasse zurück, die Statusmeldungen ausgibt.- Specified by:
getStatusPrinter
in interfaceContainerWalk
- Returns:
- Klasse
-
setStatusPrinter
Description copied from interface:ContainerWalk
Setzt die Klasse, die Statusmeldungen schreibt.- Specified by:
setStatusPrinter
in interfaceContainerWalk
- Parameters:
statusPrinter
- Beliebige Subklasse/Instanz vonStatusPrinter
-
execute
public void execute(java.lang.String actionName, int numThreads, ContainerAction action) throws PersistenceExceptionDescription copied from interface:ContainerWalk
Führt den Verzeichnisdurchlauf aus. Diese Methode kann je Objekt nur einmal ausgeführt werden.- Specified by:
execute
in interfaceContainerWalk
- Parameters:
actionName
- Name (zur Benennung der Thread-Objekte, Ausgabe in Debug-Meldungen usw.)numThreads
- Anzahl Threads zur Bearbeitungaction
- Durchzuführende Aktion- Throws:
PersistenceException
- Falls ein Fehler Auftritt
-
terminate
public void terminate()Description copied from interface:ContainerWalk
Sorgt für ein sofortiges, aber kontrolliertes Beenden. Der aktuelle Verzeichnisdurchlauf je Thread wird abgeschlossen.- Specified by:
terminate
in interfaceContainerWalk
-