public interface PersistentDataContainer
PersistenceModule.getContainer(long)
des Persistenz-Moduls erzeugt.Modifier and Type | Method | Description |
---|---|---|
boolean |
containerSavedTypeB() |
Die Implementation dieser Methode zeigt an, ob der Container von der Sicherung auf einem Speichermedium vom Typ B
gesichert wurde.
|
boolean |
deleteAllData() |
Löscht den gesamten Container mit allen gespeicherten Datensätzen vom Speichermedium Typ A.
|
void |
finalizeAllData() |
Dieser Aufruf signalisiert dem Persistenzmodul, dass kein weiterer Datensatz mehr in diesen Container abgelegt wird.
|
void |
flush() |
Sichert alle Datensätze, die vom Container gepuffert wurden.
|
long |
getContainerId() |
Bestimmt die eindeutige laufende Nummer dieses Datensatzcontainers.
|
DataContainerIdentification |
getDataContainerIdentification() |
Bestimmt die identifizierenden Informationen des Containers (Systemobjekt, Attributgruppe, Aspekt,
Simulationsvariante und Datensatzart).
|
int |
getDataCount() |
Bestimmt die Anzahl Datensätze in diesem Container Nach einem unkontrollierten Beenden des Archivsystems wird diese
Methode in der Initialisierungsphase für jeden noch nicht abgschlossenen Container aufgerufen um die notwendigen
Verwaltungsinformationen zu aktualisieren.
|
long |
getDeleteDate() |
Der Rückgabewert dieser Methode bestimmt, wann der Container zu löschen ist.
|
DataTiming |
getMaximumDataTiming() |
Bestimmt die maximalen Werte von Datenzeitstempel, Archivzeitstempel und Datensatzindex aller in diesem Container
mit
storeData(de.bsvrz.dav.daf.main.impl.archive.DataTiming, de.bsvrz.dav.daf.main.DataState, byte[], boolean) gespeicherten Daten. |
DataTiming |
getMinimumDataTiming() |
Bestimmt die minimalen Werte von Datenzeitstempel, Archivzeitstempel und Datensatzindex aller in diesem Container
mit
storeData(de.bsvrz.dav.daf.main.impl.archive.DataTiming, de.bsvrz.dav.daf.main.DataState, byte[], boolean) gespeicherten Daten. |
boolean |
getSaveStatus() |
Der Rückgabewert dieser Methode gibt darüber Auskunft, ob der Container der Sicherung übergeben werden soll.
|
int |
getSerializerVersion() |
Bestimmt die Version des Serialisierers, der beim Serialisieren der Datensätze dieses Containers benutzt wurde.
|
long |
getStorageSize() |
Bestimmt den Speicherbedarf des Containers.
|
int |
getVolumeIdTypeB() |
Die Implemetierung dieser Methode gibt die eindeutige Identifizierung des Speichermediums vom Typ B zurück, auf dem
der Container gesichert wurde.
|
boolean |
isContainerFinalized() |
Die Implemetierung dieser Methode gibt den Zustand des Containers wieder,
wurde der Container mit der Methode
finalizeAllData() abgeschlossen, wird
der Wert true zurückgegeben in allen anderen Fällen der Wert false. |
void |
loadAllData(int mediaName) |
Lädt alle Datensätze eines Containers von einem externen Medium.
|
int |
saveAllData() |
Sichert alle Datensätze des Containers auf einem externen Medium.
|
void |
storeData(DataTiming dataTiming,
DataState dataState,
byte[] dataBytes,
boolean flush) |
Speichert einen Datensatz mit seinen Headerinformationen (Zeitstempel, laufende Nummer und Kompressionsart) im
Container ab.
|
long getContainerId()
DataContainerIdentification getDataContainerIdentification()
int getSerializerVersion()
Serializer.getVersion()
void storeData(DataTiming dataTiming, DataState dataState, byte[] dataBytes, boolean flush) throws java.io.IOException
dataTiming
- Datenzeitstempel, Archivzeitstempel und Datensatzindex des Datensatzes.dataState
- Typ des Datensatzes (Nutzdaten, keine Daten, keine Quelle, potentielle Datenlücke etc.).dataBytes
- Byte-Array mit den unkomprimierten, serialisierten Nutzdaten oder null
im Falle eines
leeren Datensatzes ohne Nutzdaten.flush
- true
, wenn die Speicherung synchron durchgeführt werden soll, sonst
false
.java.io.IOException
- Beim Zugriff auf die physische Abbildung des Containers auf einem Speichermedium kam es zu einem
Fehler. Die Daten konnten nicht geschrieben werden.void finalizeAllData() throws java.io.IOException
storeData(de.bsvrz.dav.daf.main.impl.archive.DataTiming, de.bsvrz.dav.daf.main.DataState, byte[], boolean)
für diesen Container nicht mehr aufgerufen.
java.io.IOException
- Beim Zugriff auf die physische Abbildung des Containers auf einem Speichermedium kam es zu einem
Fehler. Der Container konnte nicht abgeschlossen werden.DataTiming getMinimumDataTiming()
storeData(de.bsvrz.dav.daf.main.impl.archive.DataTiming, de.bsvrz.dav.daf.main.DataState, byte[], boolean)
gespeicherten Daten. Nach einem unkontrollierten Beenden des Archivsystems wird diese Methode
in der Initialisierungsphase für jeden noch nicht abgschlossenen Container aufgerufen um die notwendigen
Verwaltungsinformationen zu aktualisieren.DataTiming getMaximumDataTiming()
storeData(de.bsvrz.dav.daf.main.impl.archive.DataTiming, de.bsvrz.dav.daf.main.DataState, byte[], boolean)
gespeicherten Daten. Nach einem unkontrollierten Beenden des Archivsystems wird diese Methode
in der Initialisierungsphase für jeden noch nicht abgschlossenen Container aufgerufen um die notwendigen
Verwaltungsinformationen zu aktualisieren.int getDataCount()
long getStorageSize()
boolean getSaveStatus()
boolean containerSavedTypeB()
long getDeleteDate()
int getVolumeIdTypeB() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- Der Container wurde bisher noch nicht auf einem Speichermedium vom Typ B gesichert,
somit ist die eindeutige Identifizierung unbekanntint saveAllData() throws java.io.IOException
java.io.IOException
boolean deleteAllData()
void loadAllData(int mediaName) throws java.io.IOException, BadVolumeException
mediaName
- Name des Mediums auf dem die Datensätze vorher mit der Methode saveAllData()
gesichert
wurden.java.io.IOException
- Beim Zugriff auf die physische Abbildung des Containers auf einem Speichermedium kam es
zu einem Fehler, der geforderte Container nicht wiederhergestellt werdenBadVolumeException
- Auf das Speichermedium der Sicherung konnte nicht Zugegriffen werden, obwohl sich dieses
im Zugriff der Sicherung befindetvoid flush() throws java.io.IOException
java.io.IOException
- Beim Zugriff auf die physische Abbildung des Containers auf einem Speichermedium kam es zu einem
Fehler, gepufferte Datensätze konnten nicht geschrieben werden.boolean isContainerFinalized()
finalizeAllData()
abgeschlossen, wird
der Wert true zurückgegeben in allen anderen Fällen der Wert false.