Class ManagementFile

java.lang.Object
de.bsvrz.puk.config.main.managementfile.ManagementFile
All Implemented Interfaces:
ConfigurationManagementFile

public class ManagementFile extends 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 Details

    • ManagementFile

      public ManagementFile(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 URI relativize(URI dir, URI uri)
      Erstellt eine URI, die möglichst einen Pfad von uri relativ zu dir darstellt. Verhält sich ähnlich zu URI.relativize(URI). Workaround wegen Bug 6226081.
      Parameters:
      dir - Pfad, zu dem uri relativ dargestellt werden soll
      uri - Ort der URI
      Returns:
      eine URI, die mit dem Parameter dir kombiniert wieder die Ursprungs-URI ergibt.
      See Also:
    • getCommonBaseDir

      public static URI getCommonBaseDir(List<? extends 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 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 interface ConfigurationManagementFile
      Returns:
      Datei, in der dynamische Objekte, die von fremden Konfigurationen abgefragt wurden, persistent gespeichert werden.
    • getConfigurationAuthority

      public String getConfigurationAuthority()
      Gibt die Pid des Konfigurationsverantwortlichen der Konfiguration zurück.
      Specified by:
      getConfigurationAuthority in interface ConfigurationManagementFile
      Returns:
      die Pid des Konfigurationsverantwortlichen der Konfiguration
    • setConfigurationAuthority

      public void setConfigurationAuthority(String pid)
      Speichert die Pid des Konfigurationsverantwortlichen der Konfiguration ab.
      Specified by:
      setConfigurationAuthority in interface ConfigurationManagementFile
      Parameters:
      pid - die Pid des Konfigurationsverantwortlichen
    • getAllConfigurationAreaManagementInfos

      public List<ConfigurationAreaManagementInfo> getAllConfigurationAreaManagementInfos()
      Gibt alle Einträge über Konfigurationsbereiche der Konfiguration in der zu verwendenden Reihenfolge aus den Verwaltungsdaten zurück.
      Specified by:
      getAllConfigurationAreaManagementInfos in interface ConfigurationManagementFile
      Returns:
      alle Konfigurationsbereiche der Konfiguration in der zu verwendenden Reihenfolge
    • getConfigurationAreaManagementInfo

      public ConfigurationAreaManagementInfo getConfigurationAreaManagementInfo(String configurationAreaPid)
      Gibt einen Eintrag aus den Verwaltungsdaten zu der angegebenen Pid eines Konfigurationsbereichs zurück. Falls es keinen Eintrag gibt wird null zurückgegeben.
      Specified by:
      getConfigurationAreaManagementInfo in interface ConfigurationManagementFile
      Parameters:
      configurationAreaPid - Pid eines Konfigurationsbereichs
      Returns:
      Eintrag aus den Verwaltungsdaten zu einem Konfigurationsbereich oder null, falls kein Eintrag vorhanden ist
    • addConfigurationAreaManagementInfo

      public ConfigurationAreaManagementInfo addConfigurationAreaManagementInfo(String pid)
      Fügt einen neuen Eintrag eines Konfigurationsbereichs ans Ende der Verwaltungsdatei ein.
      Specified by:
      addConfigurationAreaManagementInfo in interface ConfigurationManagementFile
      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(String comment)
      Fügt einen neuen Kommentar ans Ende der Verwaltungsdatei ein.
      Parameters:
      comment - Kommentar
    • save

      public void save() throws IOException
      Speichert die Verwaltungsdaten ab.
      Specified by:
      save in interface ConfigurationManagementFile
      Throws:
      IOException
    • createBackupFile

      public void createBackupFile(File targetDirectory) throws IOException
      Sichert die Verwaltungsdatei in das angegebene Zielverzeichnis
      Parameters:
      targetDirectory - Zielverzeichnis
      Throws:
      IOException - IO-Fehler
    • close

      public void close() throws IOException
      Description 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 interface ConfigurationManagementFile
      Throws:
      IOException
    • getObjectSetDirectory

      public 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 interface ConfigurationManagementFile
      Returns:
      Verzeichnis in dem die Dateien mit den Elementzugehörigkeiten von dynamischen Mengen gespeichert werden sollen.
    • toString

      public String toString()
      String-Repräsentation (Verzeichnis und Dateiname der Verwaltungsdatei) dieses Objekts.
      Overrides:
      toString in class Object
      Returns:
      String-Repräsentation (Verzeichnis und Dateiname der Verwaltungsdatei) dieses Objekts.