Class DataIdentificationDir

java.lang.Object
de.bsvrz.ars.ars.persistence.DataIdentificationDir

public class DataIdentificationDir extends Object
Klasse, die zu einem Datenidentifikationsverzeichnis auf der Festplatte die Datenidentifikation und Archivdatenart speichert, damit diese Informationen zusammen verwendet werden können, vor allem bei Aufgaben die über die Persistenzdaten iterieren, z. B. StandardDataidentificationDirWalk.execute(String, int, DataIdentificationDirAction).

D. h. im Gegensatz zu IdDataIdentification wird hier auch der Ort auf der Festplatte gespeichert, was aus eine Abfrage nach vorhandenen Archivdatenarten etc. erlaubt.

  • Constructor Details

    • DataIdentificationDir

      public DataIdentificationDir(PersistenceDirectory persistenceDirectory, IdDataIdentification dataIdentificationFromPath, Path dataIdentificationDir)
      Erstellt ein neues DataIdentificationDir-Objekt
      Parameters:
      persistenceDirectory - (Wochen-)Verzeichnis-Objekt
      dataIdentificationFromPath - Datenidentifikation
      dataIdentificationDir - Verzeichnis der Datenidentifikation auf Festplatte
    • DataIdentificationDir

      public DataIdentificationDir(PersistenceDirectory persistenceDirectory, IdDataIdentification dataIdentification)
      Erstellt ein neues ContainerFileDir-Objekt
      Parameters:
      persistenceDirectory - (Wochen-)Verzeichnis-Objekt
      dataIdentification - Datenidentifikation
    • DataIdentificationDir

      public DataIdentificationDir(PersistenceDirectory persistenceDirectory, IdDataIdentification dataIdentification, Collection<de.bsvrz.dav.daf.main.archive.ArchiveDataSpecification> archiveDataSpecifications)
      Erstellt ein neues ContainerFileDir-Objekt
      Parameters:
      archiveDataSpecifications - Datenspezifikationen
      persistenceDirectory - (Wochen-)Verzeichnis-Objekt
      dataIdentification - Datenidentifikation
  • Method Details

    • getDataIdentificationDir

      public Path getDataIdentificationDir()
      Gibt das Verzeichnis zurück
      Returns:
      das Verzeichnis
    • getDataIdentification

      public IdDataIdentification getDataIdentification()
      Gibt die Datenidentifikation zurück
      Returns:
      die Datenidentifikation
    • getArchiveDataSpecifications

      @Nullable public Collection<de.bsvrz.dav.daf.main.archive.ArchiveDataSpecification> getArchiveDataSpecifications()
      Gibt die Archivdatenspezifikation zurück (falls sie beim Konstruktor übergeben wurde)
      Returns:
      Archivdatenspezifikation oder null
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getArchiveDataKinds

      public de.bsvrz.dav.daf.main.archive.ArchiveDataKindCombination getArchiveDataKinds() throws PersistenceException
      Gibt die Archivdatenarten zurück, die relevant sind. Wenn dieses Objekt mit einer oder mehreren ArchiveDataSpecification-parametern erzeugt wird, werden die angefragten Archivdatenarten zurückgegeben.

      Wenn keine ArchiveDataSpecification übergeben wurde, werden auf der Festplatte die vorhandenen Archivdatenart-Verzeichnisse ermittelt.

      Returns:
      Menge von Archivdatenarten
      Throws:
      PersistenceException - IO-Fehler beim Lesen der vorhandenen Verzeichnisse
    • getContainerDirectories

      public Collection<? extends ContainerDirectory> getContainerDirectories() throws PersistenceException
      Ermittelt alle relevanten Containerverzeichnisse für dieses Datenidentifikationsverzeichnis. Diese Methode gibt für jede Archivdatenart das zugehörige Containerverzeichnis-Objekt zurück.
      Returns:
      Liste mit ContainerDirectory-Objekten
      Throws:
      PersistenceException - IO-Fehler beim Lesen der vorhandenen Verzeichnisse
    • getContainerDirectories

      public Collection<? extends LockedContainerDirectory> getContainerDirectories(SyncKey<IdDataIdentification> lock) throws PersistenceException
      Ermittelt alle relevanten Containerverzeichnisse für dieses Datenidentifikationsverzeichnis. Diese Methode gibt für jede Archivdatenart das zugehörige Containerverzeichnis-Objekt zurück.

      Im Gegensatz zu getContainerDirectories() ohne Parameter wird hier die Synchronisierung auf die zurückgegeben Objekte übertragen.

      Parameters:
      lock - Synchronisierung auf die DatenIdentifikation
      Returns:
      Liste mit LockedContainerDirectory-Objekten
      Throws:
      PersistenceException - IO-Fehler beim Lesen der vorhandenen Verzeichnisse
    • getPersistenceDirectory

      public PersistenceDirectory getPersistenceDirectory()
      Gibt das Persistenzverzeichnis zurück.
      Returns:
      das Persistenzverzeichnis