public class ConfigFileManager extends java.lang.Object implements ConfigurationFileManager
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.
|
SystemObjectInformationInterface[] |
getObjects(long... ids)
Gibt anhand der IDs mehrere Objekte zurück.
|
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) |
java.util.Collection<SystemObjectInformationInterface> |
getOldObjects(java.util.List<java.lang.Long> ids)
Ermittelt gelöschte Objekte anhand der ID.
|
SystemObjectInformationInterface |
getSimulationObject(java.lang.String pid,
short simulationVariant)
Gibt ein simulationsspezifisches Objekt anhand der Pid zurück.
|
SystemObjectInformationInterface[] |
loadOldObjects(java.util.List<de.bsvrz.puk.config.configFile.fileaccess.ConfigFileManager.ConfigAreaFileLoadInformation> fileLoadInformations)
Lädt Objekte aus der Datei, wenn deren Position bekannt ist.
|
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, de.bsvrz.sys.funclib.dataSerializer.NoSuchVersionException
createAreaFile
in interface ConfigurationFileManager
configurationAreaPid
- 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.de.bsvrz.sys.funclib.dataSerializer.NoSuchVersionException
public ConfigurationAreaFile addAreaFile(java.lang.String configurationAreaPid, java.io.File configurationAreaDir, short activeVersion, java.util.List<VersionInfo> localVersionTimes) throws java.lang.IllegalArgumentException, java.io.IOException, de.bsvrz.sys.funclib.dataSerializer.NoSuchVersionException
addAreaFile
in interface ConfigurationFileManager
configurationAreaPid
- 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
de.bsvrz.sys.funclib.dataSerializer.NoSuchVersionException
public ConfigurationAreaFile getAreaFile(java.lang.String configurationAreaPid)
ConfigurationFileManager
getAreaFile
in interface ConfigurationFileManager
configurationAreaPid
- Pid des Konfigurationsbereichsnull
zurückgegeben.@Nullable public SystemObjectInformationInterface getObject(long id)
ConfigurationFileManager
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 ConfigurationFileManager
id
- Id des Objektsnull
falls kein Objekt gefunden werden konntepublic SystemObjectInformationInterface[] getObjects(long... ids)
ConfigurationFileManager
ConfigurationFileManager.addAreaFile(java.lang.String, java.io.File, short, java.util.List<de.bsvrz.puk.config.main.managementfile.VersionInfo>)
hinzugefügt wurden.getObjects
in interface ConfigurationFileManager
ids
- Ids der Objektenull
.public SystemObjectInformationInterface getActiveObject(long id)
public SystemObjectInformationInterface getActiveObject(java.lang.String pid)
ConfigurationFileManager
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 ConfigurationFileManager
pid
- Pid des Objekts, das gesucht werden sollnull
falls kein Objekt existiertpublic SystemObjectInformationInterface getSimulationObject(java.lang.String pid, short simulationVariant)
ConfigurationFileManager
getSimulationObject
in interface ConfigurationFileManager
pid
- PidsimulationVariant
- Simulationsvariantenull
falls kein Objekt existiertpublic SystemObjectInformationInterface[] getNewObjects(java.lang.String pid)
ConfigurationFileManager
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 ConfigurationFileManager
pid
- pid der gesuchten Objektepublic SystemObjectInformationInterface getOldObject(long id)
public java.util.Collection<SystemObjectInformationInterface> getOldObjects(java.util.List<java.lang.Long> ids)
Wenn mehrere IDs gesucht werden, ist es wesentlich schneller, diese Methode einmal mit alles IDs aufzurufen, als alle Objekte einzeln zu ermitteln!
ids
- IDspublic SystemObjectInformationInterface[] loadOldObjects(java.util.List<de.bsvrz.puk.config.configFile.fileaccess.ConfigFileManager.ConfigAreaFileLoadInformation> fileLoadInformations)
fileLoadInformations
- Objekte, die geladen werden sollen.public ConfigurationAreaFile[] getConfigurationAreas()
ConfigurationFileManager
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 ConfigurationFileManager
public java.util.List<DynamicObjectInfo> getObjects(short simulationVariant) throws java.lang.IllegalArgumentException
ConfigurationFileManager
getObjects
in interface ConfigurationFileManager
simulationVariant
- Simulationsvariante, für die alle dynamischen Objekte zurückgegeben werden sollen. (Wertebereich 1...999)java.lang.IllegalArgumentException
public void saveConfigurationAreaFiles() throws java.io.IOException
saveConfigurationAreaFiles
in interface ConfigurationFileManager
java.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()
ConfigurationFileManager
ConfigurationFileManager.saveConfigurationAreaFiles()
und stellt einen Zustand her in dem das System wieder gestartet werden kann.close
in interface ConfigurationFileManager