Class 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 Zielverzeichnis
      java.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 sind
      ConfigurationAreaManagementInfo 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 Detail

      • 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 Detail

      • 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 interface ConfigurationManagementFile
        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 interface ConfigurationManagementFile
        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 interface ConfigurationManagementFile
        Parameters:
        pid - die Pid des Konfigurationsverantwortlichen
      • 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 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​(java.lang.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​(java.lang.String comment)
        Fügt einen neuen Kommentar ans Ende der Verwaltungsdatei ein.
        Parameters:
        comment - Kommentar
      • save

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

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

        public void close()
                   throws java.io.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:
        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 interface ConfigurationManagementFile
        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 class java.lang.Object
        Returns:
        String-Repräsentation (Verzeichnis und Dateiname der Verwaltungsdatei) dieses Objekts.
      • 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 zu URI.relativize(java.net.URI, java.net.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:
        URI.relativize(java.net.URI, 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