public class ConfigFileManager extends java.lang.Object implements ConfigurationFileManager
Diese Methode stellt Konfigurationsbereiche zur Verfügung und verwaltet den Zugriff auf diese. Der Zugriff bezieht sich dabei auf die Dateien selber (Anlegen, Daten speichern, usw.), aber auch auf die dynamischen Objekte/Konfigurationsobjekte der einzelnen Bereiche.
| Constructor and Description |
|---|
ConfigFileManager() |
| Modifier and Type | Method and Description |
|---|---|
ConfigurationAreaFile |
addAreaFile(java.lang.String configurationAreaPid,
java.io.File configurationAreaDir,
short activeVersion,
java.util.List<VersionInfo> localVersionTimes)
Der aktuellen Konfiguration wird der angegebene Konfigurationsbereich hinzugefügt.
|
void |
close()
Diese Methode wird aufgerufen, wenn ein System heruntegefahren werden soll.
|
ConfigurationAreaFile |
createAreaFile(java.lang.String configurationAreaPid,
java.io.File configurationAreaDir)
Diese Methode erstellt zu einem neuen Konfigurationsbereich eine Konfigurationsdatei.
|
SystemObjectInformationInterface |
getActiveObject(long id) |
SystemObjectInformationInterface |
getActiveObject(java.lang.String pid)
Diese Methode gibt ein Objekt zurück, das derzeit in einem Konfigurationsbereich aktiv ist.
|
ConfigurationAreaFile |
getAreaFile(java.lang.String configurationAreaPid)
Diese Methode gibt ein Objekt zurück, das den Konfigurationsbereich darstellt.
|
ConfigurationAreaFile[] |
getConfigurationAreas()
Diese Methode gibt alle Konfigurationsbereiche zurück, die mit
ConfigurationFileManager.addAreaFile(java.lang.String, java.io.File, short, java.util.List<de.bsvrz.puk.config.main.managementfile.VersionInfo>) eingefügt wurden. |
SystemObjectInformationInterface[] |
getNewObjects(java.lang.String pid)
Diese Methode gibt alle Objekte zurück, die derzeit in einem Konfigurationsbereich weder aktiv noch als ungültig markiert sind.
|
SystemObjectInformationInterface |
getObject(long id)
Gibt ein Objekt zurück, das über die Id identifiziert wird.
|
java.util.List<DynamicObjectInfo> |
getObjects(short simulationVariant)
Diese Methode gibt alle dynamischen Objekte zurück, die zu einer Simulationsvariante gehören.
|
SystemObjectInformationInterface |
getOldObject(long id) |
SystemObjectInformationInterface |
getSimulationObject(java.lang.String pid,
short simulationVariant)
Gibt ein simulationsspezifisches Objekt anhand der Pid zurück.
|
void |
saveConfigurationAreaFiles()
Methode, die alle Konfigurationsbreiche speichert.
|
public ConfigurationAreaFile createAreaFile(java.lang.String configurationAreaPid, java.io.File configurationAreaDir) throws java.lang.IllegalArgumentException, java.io.IOException, NoSuchVersionException
Diese Methode erstellt zu einem neuen Konfigurationsbereich eine Konfigurationsdatei. Der neue Konfigurationsbereich erhält den Zustand inaktiv. Soll er von der Konfiguration genutzt werden können, so muss er aktiviert werden.
createAreaFile in interface ConfigurationFileManagerconfigurationAreaPid - die Pid des neuen KonfigurationsbereichsconfigurationAreaDir - das Verzeichnis, in dem die Konfigurationsdatei angelegt werden solljava.lang.IllegalArgumentException - Falls die Argumente ungültig sind.java.io.IOException - Falls Fehler im Zusammenhang mit der Datei des Konfigurationsbereichs auftreten.NoSuchVersionException - TBDpublic ConfigurationAreaFile addAreaFile(java.lang.String configurationAreaPid, java.io.File configurationAreaDir, short activeVersion, java.util.List<VersionInfo> localVersionTimes) throws java.lang.IllegalArgumentException, java.io.IOException, NoSuchVersionException
Der aktuellen Konfiguration wird der angegebene Konfigurationsbereich hinzugefügt. Gibt es bereits einen Konfigurationsbereich mit der angegebenen Pid, wird eine Fehlermeldung erzeugt.
addAreaFile in interface ConfigurationFileManagerconfigurationAreaPid - die Pid des KonfigurationsbereichsconfigurationAreaDir - das Verzeichnis, in dem die Konfigurationsdatei gespeichert wurde. Diese Verzeichnis wird benutzt um den Bereich zu laden.activeVersion - die aktuelle Version des KonfigurationsbereichslocalVersionTimes - Diese Liste speichert zu jeder Version, die jemals aktiviert wurde, den Zeitpunkt an dem die Version aktiviert wurde. Die Zeitpunkte beziehen sich auf den Zeit, an dem sie auf der Konfiguration, die diese Methode aufruft, aktiviert wurden.java.lang.IllegalArgumentException - Falls der Konfigurationsbereich mit der Pid bereits zur Konfiguration hinzugefügt wurde.java.lang.IllegalStateException - Datei existiert nichtjava.io.IOException - TBDNoSuchVersionException - TBDpublic ConfigurationAreaFile getAreaFile(java.lang.String configurationAreaPid)
ConfigurationFileManagerDiese Methode gibt ein Objekt zurück, das den Konfigurationsbereich darstellt.
getAreaFile in interface ConfigurationFileManagerconfigurationAreaPid - Pid des Konfigurationsbereichsnull zurückgegeben.public SystemObjectInformationInterface getObject(long id)
ConfigurationFileManagerGibt ein Objekt zurück, das über die Id identifiziert wird. Es werden alle Konfigurationsbereiche betrachtet, die mit ConfigurationFileManager.addAreaFile(java.lang.String, java.io.File, short, java.util.List<de.bsvrz.puk.config.main.managementfile.VersionInfo>) hinzugefügt wurden.
getObject in interface ConfigurationFileManagerid - Id des Objektsnull falls kein Objekt gefunden werden konntepublic SystemObjectInformationInterface getActiveObject(long id)
public SystemObjectInformationInterface getActiveObject(java.lang.String pid)
ConfigurationFileManagerDiese Methode gibt ein Objekt zurück, das derzeit in einem Konfigurationsbereich aktiv ist. Es werden alle Konfigurationsbreiche geprüft, die mit ConfigurationFileManager.addAreaFile(java.lang.String, java.io.File, short, java.util.List<de.bsvrz.puk.config.main.managementfile.VersionInfo>) hinzugefügt wurden. Objekte, die nur in Simulationen gültig sind werden hier nicht zurückgegeben, stattdessen ist ConfigurationFileManager.getSimulationObject(String, short) zu benutzen.
getActiveObject in interface ConfigurationFileManagerpid - Pid des Objekts, das gesucht werden sollnull falls kein Objekt existiertpublic SystemObjectInformationInterface getSimulationObject(java.lang.String pid, short simulationVariant)
ConfigurationFileManagerGibt ein simulationsspezifisches Objekt anhand der Pid zurück. Es werden nur Objekte zurückgegeben, die in einer Simulation erzeugt wurden und damit auch nur in dieser Simulation gültig sind.
getSimulationObject in interface ConfigurationFileManagerpid - PidsimulationVariant - Simulationsvariantenull falls kein Objekt existiertpublic SystemObjectInformationInterface[] getNewObjects(java.lang.String pid)
ConfigurationFileManagerDiese Methode gibt alle Objekte zurück, die derzeit in einem Konfigurationsbereich weder aktiv noch als ungültig markiert sind. Es werden alle Konfigurationsbereiche geprüft, die mit ConfigurationFileManager.addAreaFile(java.lang.String, java.io.File, short, java.util.List<de.bsvrz.puk.config.main.managementfile.VersionInfo>) hinzugefügt wurden.
getNewObjects in interface ConfigurationFileManagerpid - pid der gesuchten Objektepublic SystemObjectInformationInterface getOldObject(long id)
id - null falls nicht vorhandenpublic ConfigurationAreaFile[] getConfigurationAreas()
ConfigurationFileManagerDiese Methode gibt alle Konfigurationsbereiche zurück, die mit ConfigurationFileManager.addAreaFile(java.lang.String, java.io.File, short, java.util.List<de.bsvrz.puk.config.main.managementfile.VersionInfo>) eingefügt wurden.
getConfigurationAreas in interface ConfigurationFileManagerpublic java.util.List<DynamicObjectInfo> getObjects(short simulationVariant) throws java.lang.IllegalArgumentException
ConfigurationFileManagerDiese Methode gibt alle dynamischen Objekte zurück, die zu einer Simulationsvariante gehören. Der Zustand der dynamischen Objekte (gültig/ungültig) wird dabei nicht berücksichtigt. Die Simulationsvariante muss dabei größer 0 sein.
getObjects in interface ConfigurationFileManagersimulationVariant - Simulationsvariante, für die alle dynamischen Objekte zurückgegeben werden sollen. (Wertebereich 1…999)java.lang.IllegalArgumentExceptionpublic void saveConfigurationAreaFiles()
throws java.io.IOException
Methode, die alle Konfigurationsbreiche speichert. Der Aufruf der Methode ist blockierend und kehrt erst dann zurück, wenn alle Konfigurationsbereiche gespeichert sind.
saveConfigurationAreaFiles in interface ConfigurationFileManagerjava.io.IOException - Es ist beim speichern der Versorgungsdateien zu einem Fehler gekommen. Es wurde trotz des Fehlers bei jeder Datei ConfigurationAreaFile.flush() aufgerufen. Die zuletzt aufgetretene IOException wird zurückgegeben.public void close()
ConfigurationFileManagerDiese Methode wird aufgerufen, wenn ein System heruntegefahren werden soll. Sie speichert alle Konfigurationsbereiche (siehe ConfigurationFileManager.saveConfigurationAreaFiles() und stellt einen Zustand her in dem das System wieder gestartet werden kann.
close in interface ConfigurationFileManager