Class ShortPersistenceDirectoryLayout
java.lang.Object
de.bsvrz.ars.ars.persistence.layout.ShortPersistenceDirectoryLayout
- All Implemented Interfaces:
PersistenceDirectoryLayout
Modernes Layout für "kurze" Persistenzverzeichnisse. Die Dateien werden in Verzeichnissen wie
"2023/2023-01-08/0-4bpz/0-jh/2057-1b4/oa" relativ zum Persistenzverzeichnis gespeichert, wobei
das "oa" nicht zu der Implementierung dieses
PersistenceDirectoryLayout
gehört-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionstatic long
Dekodiert einen Verzeichnisnamen in eine Objekt-IDstatic long
decodeFast
(String string) Dekodiert einen Verzeichnisnamen in eine Objekt-IDstatic String
encode
(long id) Wandelt eine Objekt-ID in einen Verzeichnisnamen um.getDataIdentificationFromPath
(List<String> path, int simulationVariant) Identifiziert die Datenidentifiaktion des angegebenen Verzeichnissesint
Gibt die maximale Tiefe zurück, in der datenidentifikationsverzeichnisse zu erwarten sindLiefert den Archiv-Pfad für die angegebene Datenidentifikation und den Wurzelpfad des Archivsystems.identifyPath
(List<String> pathStack) Identifiziert den Typ des angegebenen VerzeichnissesErzeugt einePersistenceDirectoryLayoutInstance
basierend auf diesem LayoutMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface de.bsvrz.ars.ars.persistence.layout.PersistenceDirectoryLayout
createInstance, getPath
-
Field Details
-
Instance
Singleton-Instanz
-
-
Method Details
-
getPath
Description copied from interface:PersistenceDirectoryLayout
Liefert den Archiv-Pfad für die angegebene Datenidentifikation und den Wurzelpfad des Archivsystems.- Specified by:
getPath
in interfacePersistenceDirectoryLayout
- Parameters:
basePath
- WurzelverzeichnisobjId
- Objekt-IDatgId
- Attributgruppen-IDaspId
- Aspekt-ID- Returns:
- Archiv-Pfad
-
getDataIdentificationFromPath
Description copied from interface:PersistenceDirectoryLayout
Identifiziert die Datenidentifiaktion des angegebenen Verzeichnisses- Specified by:
getDataIdentificationFromPath
in interfacePersistenceDirectoryLayout
- Parameters:
path
- Stack wo man sich im Verzeichnisbaum befindetsimulationVariant
- Simulatiosnvariante- Returns:
- Typ des angegebenen Pfads
-
encode
Wandelt eine Objekt-ID in einen Verzeichnisnamen um. Der Verzeichnisname ergibt sich aus der KV-Kodierung der ID (die höchsten 16 Bits), dann einem Trennstrich ("-"), und dann die laufende Nummer der ID kodiert als Base 36.- Parameters:
id
- Objekt-ID. Der Wert -1 ist nicht zulässig.- Returns:
- Verzeichnisname.
-
decode
Dekodiert einen Verzeichnisnamen in eine Objekt-ID- Parameters:
string
- Verzeichnisname wie z. B. "2057-1b4"- Returns:
- Objekt-ID
- Throws:
PersistenceException
- Der Pfad ist nicht als Objekt-ID interpretierbar
-
decodeFast
Dekodiert einen Verzeichnisnamen in eine Objekt-ID- Parameters:
string
- Verzeichnisname wie z. B. "2057-1b4"- Returns:
- Objekt-ID oder -1, falls das Verzeichnis nicht verarbeitet werden konnte
-
getMaxDepth
public int getMaxDepth()Description copied from interface:PersistenceDirectoryLayout
Gibt die maximale Tiefe zurück, in der datenidentifikationsverzeichnisse zu erwarten sind- Specified by:
getMaxDepth
in interfacePersistenceDirectoryLayout
- Returns:
- maximale Tiefe im Dateisystem-Baum
-
identifyPath
Description copied from interface:PersistenceDirectoryLayout
Identifiziert den Typ des angegebenen Verzeichnisses- Specified by:
identifyPath
in interfacePersistenceDirectoryLayout
- Parameters:
pathStack
- Stack wo man sich im Verzeichnisbaum befindet- Returns:
- Typ des angegebenen Pfads
-
instance
Erzeugt einePersistenceDirectoryLayoutInstance
basierend auf diesem Layout- Parameters:
basePath
- Basisverzeichnis, in dem das Layout Unterverzeichnisse erstellen soll.simulationVariant
- Simulationsvariante- Returns:
- Eine PersistenceDirectoryLayoutInstance
-