Class ManagementFile
java.lang.Object
de.bsvrz.puk.config.main.managementfile.ManagementFile
- All Implemented Interfaces:
ConfigurationManagementFile
public class ManagementFile extends java.lang.Object implements ConfigurationManagementFile
Diese Klasse speichert die Verwaltungsdaten der Konfiguration in einer XML-Datei ab. (siehe auch die Technischen Anforderungen des Segments
Parametrierung und Konfiguration)
-
Constructor Summary
Constructors Constructor Description ManagementFile(java.io.File xmlFile)
Der Konstruktor lädt die angegebene XML-Datei mit den Verwaltungsdaten der Konfiguration, validiert gegen die dazugehörende DTD bzw. erzeugt eine neue Datei. -
Method Summary
Modifier and Type Method Description void
addComment(java.lang.String comment)
Fügt einen neuen Kommentar ans Ende der Verwaltungsdatei ein.ConfigurationAreaManagementInfo
addConfigurationAreaManagementInfo(java.lang.String pid)
Fügt einen neuen Eintrag eines Konfigurationsbereichs ans Ende der Verwaltungsdatei ein.void
close()
Diese Methode wird aufgerufen, wenn das System heruntergefahren wird.void
createBackupFile(java.io.File targetDirectory)
Sichert die Verwaltungsdatei in das angegebene Zielverzeichnisjava.util.List<ConfigurationAreaManagementInfo>
getAllConfigurationAreaManagementInfos()
Gibt alle Einträge über Konfigurationsbereiche der Konfiguration in der zu verwendenden Reihenfolge aus den Verwaltungsdaten zurück.static java.net.URI
getCommonBaseDir(java.util.List<? extends java.net.URI> uris)
Ermittelt die gemeinsame Parent-URI, in der alle übergebenen URIs enthalten sindConfigurationAreaManagementInfo
getConfigurationAreaManagementInfo(java.lang.String configurationAreaPid)
Gibt einen Eintrag aus den Verwaltungsdaten zu der angegebenen Pid eines Konfigurationsbereichs zurück.java.lang.String
getConfigurationAuthority()
Gibt die Pid des Konfigurationsverantwortlichen der Konfiguration zurück.java.io.File
getForeignObjectCacheFile()
Bestimmt die Datei, in der dynamische Objekte, die von fremden Konfigurationen abgefragt wurden, persistent gespeichert werden.java.io.File
getObjectSetDirectory()
Bestimmt das Verzeichnis in dem die Dateien mit den Elementzugehörigkeiten von dynamischen Mengen gespeichert werden sollen.static java.net.URI
relativize(java.net.URI dir, java.net.URI uri)
Erstellt eine URI, die möglichst einen Pfad von uri relativ zu dir darstellt.void
save()
Speichert die Verwaltungsdaten ab.void
setConfigurationAuthority(java.lang.String pid)
Speichert die Pid des Konfigurationsverantwortlichen der Konfiguration ab.java.lang.String
toString()
String-Repräsentation (Verzeichnis und Dateiname der Verwaltungsdatei) dieses Objekts.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Constructor Details
-
ManagementFile
public ManagementFile(java.io.File xmlFile)Der Konstruktor lädt die angegebene XML-Datei mit den Verwaltungsdaten der Konfiguration, validiert gegen die dazugehörende DTD bzw. erzeugt eine neue Datei.- Parameters:
xmlFile
- die Verwaltungsdatei
-
-
Method Details
-
relativize
public static java.net.URI relativize(java.net.URI dir, java.net.URI uri)Erstellt eine URI, die möglichst einen Pfad von uri relativ zu dir darstellt. Verhält sich ähnlich zuURI.relativize(URI)
. Workaround wegen Bug 6226081.- Parameters:
dir
- Pfad, zu dem uri relativ dargestellt werden solluri
- Ort der URI- Returns:
- eine URI, die mit dem Parameter dir kombiniert wieder die Ursprungs-URI ergibt.
- See Also:
URI.relativize(java.net.URI)
-
getCommonBaseDir
public static java.net.URI getCommonBaseDir(java.util.List<? extends java.net.URI> uris)Ermittelt die gemeinsame Parent-URI, in der alle übergebenen URIs enthalten sind- Parameters:
uris
- URIs dessen gemeinsamer Parent bestimmt werden soll- Returns:
- Parent-URI oder null falls es keinen gemeinsamen parent gibt
-
getForeignObjectCacheFile
public java.io.File getForeignObjectCacheFile()Description copied from interface:ConfigurationManagementFile
Bestimmt die Datei, in der dynamische Objekte, die von fremden Konfigurationen abgefragt wurden, persistent gespeichert werden.- Specified by:
getForeignObjectCacheFile
in interfaceConfigurationManagementFile
- Returns:
- Datei, in der dynamische Objekte, die von fremden Konfigurationen abgefragt wurden, persistent gespeichert werden.
-
getConfigurationAuthority
public java.lang.String getConfigurationAuthority()Gibt die Pid des Konfigurationsverantwortlichen der Konfiguration zurück.- Specified by:
getConfigurationAuthority
in interfaceConfigurationManagementFile
- Returns:
- die Pid des Konfigurationsverantwortlichen der Konfiguration
-
setConfigurationAuthority
public void setConfigurationAuthority(java.lang.String pid)Speichert die Pid des Konfigurationsverantwortlichen der Konfiguration ab.- Specified by:
setConfigurationAuthority
in interfaceConfigurationManagementFile
- Parameters:
pid
- die Pid des Konfigurationsverantwortlichen
-
getAllConfigurationAreaManagementInfos
Gibt alle Einträge über Konfigurationsbereiche der Konfiguration in der zu verwendenden Reihenfolge aus den Verwaltungsdaten zurück.- Specified by:
getAllConfigurationAreaManagementInfos
in interfaceConfigurationManagementFile
- Returns:
- alle Konfigurationsbereiche der Konfiguration in der zu verwendenden Reihenfolge
-
getConfigurationAreaManagementInfo
public ConfigurationAreaManagementInfo getConfigurationAreaManagementInfo(java.lang.String configurationAreaPid)Gibt einen Eintrag aus den Verwaltungsdaten zu der angegebenen Pid eines Konfigurationsbereichs zurück. Falls es keinen Eintrag gibt wirdnull
zurückgegeben.- Specified by:
getConfigurationAreaManagementInfo
in interfaceConfigurationManagementFile
- Parameters:
configurationAreaPid
- Pid eines Konfigurationsbereichs- Returns:
- Eintrag aus den Verwaltungsdaten zu einem Konfigurationsbereich oder
null
, falls kein Eintrag vorhanden ist
-
addConfigurationAreaManagementInfo
Fügt einen neuen Eintrag eines Konfigurationsbereichs ans Ende der Verwaltungsdatei ein.- Specified by:
addConfigurationAreaManagementInfo
in interfaceConfigurationManagementFile
- Parameters:
pid
- Pid des Konfigurationsbereichs, welcher zu den Verwaltungsdaten hinzugefügt werden soll- Returns:
- der Eintrag in den Verwaltungsdaten zu einem Konfigurationsbereich
-
addComment
public void addComment(java.lang.String comment)Fügt einen neuen Kommentar ans Ende der Verwaltungsdatei ein.- Parameters:
comment
- Kommentar
-
save
public void save() throws java.io.IOExceptionSpeichert die Verwaltungsdaten ab.- Specified by:
save
in interfaceConfigurationManagementFile
- Throws:
java.io.IOException
-
createBackupFile
public void createBackupFile(java.io.File targetDirectory) throws java.io.IOExceptionSichert die Verwaltungsdatei in das angegebene Zielverzeichnis- Parameters:
targetDirectory
- Zielverzeichnis- Throws:
java.io.IOException
- IO-Fehler
-
close
public void close() throws java.io.IOExceptionDescription copied from interface:ConfigurationManagementFile
Diese Methode wird aufgerufen, wenn das System heruntergefahren wird. Es müssen alle Daten persistent gespeichert werden und es muss ein Zustand hergestellt werden, dass das System später erneut gestartet werden kann (Temporäre Dateien löschen, usw.).- Specified by:
close
in interfaceConfigurationManagementFile
- Throws:
java.io.IOException
-
getObjectSetDirectory
public java.io.File getObjectSetDirectory()Description copied from interface:ConfigurationManagementFile
Bestimmt das Verzeichnis in dem die Dateien mit den Elementzugehörigkeiten von dynamischen Mengen gespeichert werden sollen. Falls das Verzeichnis noch nich existiert, wird es erzeugt.- Specified by:
getObjectSetDirectory
in interfaceConfigurationManagementFile
- Returns:
- Verzeichnis in dem die Dateien mit den Elementzugehörigkeiten von dynamischen Mengen gespeichert werden sollen.
-
toString
public java.lang.String toString()String-Repräsentation (Verzeichnis und Dateiname der Verwaltungsdatei) dieses Objekts.- Overrides:
toString
in classjava.lang.Object
- Returns:
- String-Repräsentation (Verzeichnis und Dateiname der Verwaltungsdatei) dieses Objekts.
-