Class StandardContainerWalk

java.lang.Object
de.bsvrz.ars.ars.persistence.walk.internal.StandardContainerWalk
All Implemented Interfaces:
ContainerWalk

public class StandardContainerWalk extends 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 Details

    • StandardContainerWalk

      public StandardContainerWalk(PersistenceManager persistenceManager, DataIdentificationDirWalk dirWalk, PersistenceDirectory persistenceDirectory)
      Erstellt eine Instanz
      Parameters:
      persistenceManager - Persistenzschicht
      dirWalk - Klasse, die über Containerverzeichnisse iteriert.
      persistenceDirectory - Persistenzverzeichnis
  • Method Details

    • getStatusInterval

      public Duration getStatusInterval()
      Description copied from interface: ContainerWalk
      Gibt das Intervall zurück, in dem Statusmeldungen ausgegeben werden (positiv)
      Specified by:
      getStatusInterval in interface ContainerWalk
      Returns:
      das Intervall
    • setStatusInterval

      public void setStatusInterval(Duration statusInterval)
      Description copied from interface: ContainerWalk
      Setzt das Statusintervall
      Specified by:
      setStatusInterval in interface ContainerWalk
      Parameters:
      statusInterval - Intervall
    • getStatusPrinter

      public StatusPrinter getStatusPrinter()
      Description copied from interface: ContainerWalk
      Gibt die Klasse zurück, die Statusmeldungen ausgibt.
      Specified by:
      getStatusPrinter in interface ContainerWalk
      Returns:
      Klasse
    • setStatusPrinter

      public void setStatusPrinter(StatusPrinter statusPrinter)
      Description copied from interface: ContainerWalk
      Setzt die Klasse, die Statusmeldungen schreibt.
      Specified by:
      setStatusPrinter in interface ContainerWalk
      Parameters:
      statusPrinter - Beliebige Subklasse/Instanz von StatusPrinter
    • execute

      public void execute(String actionName, int numThreads, ContainerAction action) throws PersistenceException
      Description copied from interface: ContainerWalk
      Führt den Verzeichnisdurchlauf aus. Diese Methode kann je Objekt nur einmal ausgeführt werden.
      Specified by:
      execute in interface ContainerWalk
      Parameters:
      actionName - Name (zur Benennung der Thread-Objekte, Ausgabe in Debug-Meldungen usw.)
      numThreads - Anzahl Threads zur Bearbeitung
      action - 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 interface ContainerWalk