Package de.bsvrz.ars.persistence
Klasse FileSystemPersistenceModule
java.lang.Object
de.bsvrz.ars.persistence.FileSystemPersistenceModule
Implementierung eines Persistenzmoduls des Archivsystems, das die Container in entsprechenden Dateien im Dateisystem
speichert. Dieses Persistenzmodul kann beim Start des Archivsystems mit dem Aufrufparameter
-persistenzModul=de.kappich.ars.archive.persistence.FileSystemPersistenceModule in das Archivsystem eingebunden werden.
Als zusätzliche Aufrufparameter ist für dieses Persistenzmodul ist die Angabe des Wurzelverzeichnis im lokalen
Dateisystem mittels -persistenzVerzeichnis=wurzelverzeichnis erforderlich. Unter diesem Verzeichnis
werden die Container-Dateien gespeichert bzw. gesucht. Ein weiterer Aufrufparameter ist die zu nutzende Sicherung
ArchiveFileSaver, diese wird mit -sicherungsModul=Klassenname angegeben.
Der letzte Aufrufparameter gibt an, ob die zu archivierenden Datensätze gepackt archiviert werden sollen. Der
Aufrufparameter lautet -packer=... und ist per default auf "keiner" eingestellt, weitere Parameter sind
zip und alle. Der Parameter -packer=keiner bedeutet, dass die Datensätze nicht
gepackt werden, der Parameter -packer=zip benutzt den Packer ZIP, der Parameter
-packer=alle benutzt alle Packer, die zur Verfügung stehen und sucht denn besten Packer heraus. Der
Aufrufparameter -packer=alle ist nicht implementiert und darf nicht benutzt werden, ist aber für die
Zukunft gedacht.-
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungFileSystemPersistenceModule(Path rootFolder) Konstruktor des Persistenzmoduls, der das Wurzelverzeichnis für die Containerdateien festlegt. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungde.bsvrz.dav.daf.main.impl.archive.PersistentContainerStreamSuppliergetContainer(long containerId) Diese Methode lädt einen Container von einem Speichermedium Typ A und stellt danach das Objekt zur Verfügung.
-
Konstruktordetails
-
FileSystemPersistenceModule
Konstruktor des Persistenzmoduls, der das Wurzelverzeichnis für die Containerdateien festlegt.- Parameter:
rootFolder- Wurzelverzeichnis für die Containerdateien
-
-
Methodendetails
-
getContainer
public Container getContainer(long containerId) throws IOException, IllegalStateException, IllegalArgumentException Diese Methode lädt einen Container von einem Speichermedium Typ A und stellt danach das Objekt zur Verfügung.- Parameter:
containerId- Eindeutige Containeridentifikation des benötigten Containers- Gibt zurück:
- Archivdatensatzcontainer
- Löst aus:
IOException- Fehler beim Zugriff auf die Datei, die den Container speichertIllegalStateException- Der Container wurde mit einem K2S Modul erzeugt, konnte aber nicht zurückgelesen werden, da die Version des Containers unbekannt istIllegalArgumentException- Der angegebene Container kann nicht gelesen werden, da er nicht mit einem K2S Modul erzeugt wurde
-
getAllContainers
public de.bsvrz.dav.daf.main.impl.archive.PersistentContainerStreamSupplier getAllContainers()
-