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 voidexecute(java.lang.String actionName, int numThreads, ContainerAction action)Führt den Verzeichnisdurchlauf aus.java.time.DurationgetStatusInterval()Gibt das Intervall zurück, in dem Statusmeldungen ausgegeben werden (positiv)StatusPrintergetStatusPrinter()Gibt die Klasse zurück, die Statusmeldungen ausgibt.voidsetStatusInterval(java.time.Duration statusInterval)Setzt das StatusintervallvoidsetStatusPrinter(StatusPrinter statusPrinter)Setzt die Klasse, die Statusmeldungen schreibt.voidterminate()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:ContainerWalkGibt das Intervall zurück, in dem Statusmeldungen ausgegeben werden (positiv)- Specified by:
getStatusIntervalin interfaceContainerWalk- Returns:
- das Intervall
-
setStatusInterval
public void setStatusInterval(java.time.Duration statusInterval)Description copied from interface:ContainerWalkSetzt das Statusintervall- Specified by:
setStatusIntervalin interfaceContainerWalk- Parameters:
statusInterval- Intervall
-
getStatusPrinter
Description copied from interface:ContainerWalkGibt die Klasse zurück, die Statusmeldungen ausgibt.- Specified by:
getStatusPrinterin interfaceContainerWalk- Returns:
- Klasse
-
setStatusPrinter
Description copied from interface:ContainerWalkSetzt die Klasse, die Statusmeldungen schreibt.- Specified by:
setStatusPrinterin interfaceContainerWalk- Parameters:
statusPrinter- Beliebige Subklasse/Instanz vonStatusPrinter
-
execute
public void execute(java.lang.String actionName, int numThreads, ContainerAction action) throws PersistenceExceptionDescription copied from interface:ContainerWalkFührt den Verzeichnisdurchlauf aus. Diese Methode kann je Objekt nur einmal ausgeführt werden.- Specified by:
executein 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:ContainerWalkSorgt für ein sofortiges, aber kontrolliertes Beenden. Der aktuelle Verzeichnisdurchlauf je Thread wird abgeschlossen.- Specified by:
terminatein interfaceContainerWalk
-