public class ConfigConfigurationArea extends ConfigConfigurationObject implements ConfigurationArea, ConfigConfigurationAreaInterface
Modifier and Type | Class and Description |
---|---|
(package private) static class |
ConfigConfigurationArea.KindOfLastChange
Mit diesem Enum kann angegeben werden, ob ein dynamisches Objekt, ein Konfigurationsobjekt oder ein konfigurierender Datensatz geändert wurde.
|
Modifier and Type | Field and Description |
---|---|
private List<ConfigurationAreaDependency> |
_areaDependencyList
Diese Liste enthält alle Abhängigkeiten des Bereichs.
|
private AttributeGroupUsage |
_atguForDependencies
Mit dieser Verwendung kann ein Datensatz engefordert werden, der die Abhängigkeiten dieses Bereichs enthält.
|
private ConfigurationAuthority |
_configurationAuthority
Konfigurationsverantwortlicher dieses Konfigurationsbereichs.
|
private ConfigDataModel |
_dataModel
Eine Referenz auf das Datenmodell.
|
private static Debug |
_debug
DebugLogger für Debug-Ausgaben
|
_systemObjectInfo
Constructor and Description |
---|
ConfigConfigurationArea(ConfigDataModel dataModel,
SystemObjectInformationInterface systemObjectInfo)
Konstruktor eines System-Objekt für einen Konfigurationsbereich.
|
Modifier and Type | Method and Description |
---|---|
void |
activateNewAuthority(SystemObject newAuthority)
Wird während der Aktivierung aufgerufen um den neuen KV zu setzen.
|
void |
addAreaDependency(Collection<ConfigurationAreaDependency> areaDependencies)
Speichert eine Abhängigkeit dieses Bereichs.
|
private void |
checkNameLength(String name)
Prüft, ob ein Name länger als 255 Zeichen ist.
|
private void |
checkPidLength(String pid)
Prüft, ob die Pid länger als 255 Zeichen ist.
|
private void |
createConfigurationDataForSets(ConfigurationObjectInfo objectInfo,
Collection<? extends ObjectSet> sets,
int serializerVersion)
Speichert die angegebenen Mengen an einem Konfigurationsobjekt.
|
ConfigurationObject |
createConfigurationObject(ConfigurationObjectType type,
String pid,
String name,
Collection<? extends ObjectSet> sets)
Erzeugt ein neues Konfigurationsobjekt eines vorgegebenen Typs mit einer angegebenen PID.
|
DynamicObject |
createDynamicObject(DynamicObjectType type,
String pid,
String name)
Erzeugt ein neues dynamisches System-Objekt eines vorgegebenen Typs mit einer angegebenen PID.
|
DynamicObject |
createDynamicObject(DynamicObjectType type,
String pid,
String name,
Collection<DataAndATGUsageInformation> data)
Erzeugt ein neues dynamisches System-Objekt eines vorgegebenen Typs mit einer angegebenen PID.
|
DynamicObject |
createDynamicObject(DynamicObjectType type,
String pid,
String name,
Collection<DataAndATGUsageInformation> data,
short simulationVariant)
Erzeugt ein neues dynamisches System-Objekt eines vorgegebenen Typs mit einer angegebenen PID.
|
private DynamicObject |
createDynamicObject(DynamicObjectType type,
String pid,
String name,
Collection<DataAndATGUsageInformation> data,
short simulationVariant,
boolean checkDatasets)
Erzeugt ein neues dynamisches System-Objekt eines vorgegebenen Typs mit einer angegebenen PID.
|
DynamicObject |
createDynamicObject(DynamicObjectType type,
String pid,
String name,
short simulationVariant)
Erzeugt ein neues dynamisches System-Objekt eines vorgegebenen Typs mit einer angegebenen PID.
|
private ConfigurationAreaDependency |
createRequiredDependence(ConfigurationAreaDependency areaDependence)
Erzeugt eine neue Abhängigkeit die "notwendig" ist.
|
boolean |
dependenciesChecked() |
private boolean |
equalsConfigurationAreaDependancy(ConfigurationAreaDependency first,
ConfigurationAreaDependency second)
Prüft, ob zwei Abhängigkeiten identisch sind.
|
short |
getActivatableVersion()
Version eines Bereichs, die zur Übernahme und Aktivierung in anderen Konfigurationen freigegeben ist.
|
short |
getActiveVersion()
Version eines Bereichs, die lokal aktiv ist.
|
Collection<ConfigurationAreaChangeInformation> |
getChangeLogs()
Diese Methode gibt alle eingetragenen Konfigurationsänderungen zurück, die in der Versorgungsdatei eingetragen wurden.
|
ConfigConfigurationArea |
getConfigurationArea()
Liefert den Konfigurationsbereich, zu dem dieses Objekt gehört, zurück.
|
ConfigurationAuthority |
getConfigurationAuthority()
Liefert den Konfigurationsverantwortlichen dieses Konfigurationsbereichs.
|
Collection<SystemObject> |
getCurrentObjects()
Gibt alle System-Objekte dieses Konfigurationsbereichs zurück, die in der aktuellen Version des Bereichs gültig sind.
|
ConfigDataModel |
getDataModel()
Liefert das zu diesem Objekt gehörende Objekt zum Zugriff auf die Konfiguration zurück.
|
Collection<ConfigurationAreaDependency> |
getDependencyFromOtherConfigurationAreas()
Gibt alle Abhängigkeiten des Bereichs zu anderen Konfigurationsbereichen zurück.
|
Collection<SystemObject> |
getDirectObjects(Collection<SystemObjectType> systemObjectTypes,
ObjectTimeSpecification timeSpecification)
Gibt alle System-Objekte zurück, die zu den angegebenen Objekttypen und zur Zeitangabe passen.
|
short |
getLastModifiedVersion()
Gibt die in Bearbeitung befindliche Version zurück, wenn Änderungen in dieser Version dieses Bereichs stattgefunden haben.
|
short |
getModifiableVersion()
Neue Version eines Bereichs, die weder zur Übernahme freigegeben noch lokal aktiviert ist.
|
Collection<SystemObject> |
getNewObjects()
Gibt alle System-Objekte dieses Konfigurationsbereichs zurück, die in einer zukünftigen Version gültig werden.
|
Collection<SystemObject> |
getObjects(Collection<SystemObjectType> systemObjectTypes,
ObjectTimeSpecification timeSpecification)
Gibt alle System-Objekte zurück, die zu den angegebenen Objekttypen und deren erweiterten Typen und zur Zeitangabe passen.
|
(package private) long |
getTimeAtAssignedVersion(short version)
Gibt die Aktivierungszeit dieses Konfigurationsbereichs zur angegebenen Versionsnummer zurück.
|
long |
getTimeOfLastActiveConfigurationChange()
Liefert die Zeit der letzten (nicht versionierten) Änderung eines änderbaren konfigurierenden Datensatzes.
|
long |
getTimeOfLastDynamicChange()
Liefert die Zeit vom letzten Erzeugen oder Löschen eines dynamischen Objekts in diesem Konfigurationsbereich.
|
long |
getTimeOfLastNonActiveConfigurationChange()
Liefert die Zeit vom letzten Erzeugen oder Löschen eines Konfigurationsobjekts (in noch nicht aktivierten Versionen) dieses Konfigurationsbereichs.
|
short |
getTransferableVersion()
Version eines Bereichs, die zur Übernahme in anderen Konfigurationen freigegeben ist.
|
(package private) short |
getVersionAtAssignedTime(long time)
Gibt die Versionsnummer dieses Konfigurationsbereichs zurück, die zur angegebenen Zeit aktiv war.
|
private boolean |
hasNewStateInformation(ConfigurationAreaDependency oldAreaDependency,
ConfigurationAreaDependency newerAreaDependency)
Prüft, ob die Art der Abhängigkeite eine neue Information enthält.
|
private boolean |
hasNewVersionInformation(ConfigurationAreaDependency oldAreaDependency,
ConfigurationAreaDependency newerAreaDependency)
Diese Methode prüft, ob eine Abhängigkeit gegenüber einer anderen Abhängigkeite neuere Informationen enthält, bei diesem Vergleich wird die Art der
Abhängigkeit nicht berücksichtigt.
|
void |
initialiseTimeOfLastChanges()
Prüft, ob es einen Wert im Datensatz
atg.konfigurationsBereichÄnderungsZeiten gibt, der Undefiniert (0) ist, und ersetzt diesen
mit der aktuellen Zeit. |
private void |
loadDependencyDataSets()
Diese Methode lädt alle Abhängigkeiten aus dem Datensatz
_atguForDependancies in die_areaDependencyList . |
(package private) void |
setActivatableVersion(short activatableVersion)
Setzt die Version, die zur Übernahme und Aktivierung dieses Konfigurationsbereichs in anderen Konfigurationen freigegeben werden soll.
|
void |
setConfigurationData(AttributeGroupUsage atgUsage,
Data data)
Ändert einen konfigurierenden Datensatz dieses Objekts.
|
(package private) void |
setTimeOfLastChanges(ConfigConfigurationArea.KindOfLastChange kind)
Wurde ein dynamisches Objekt, ein Konfigurationsobjekt (welches noch nicht aktiviert ist) oder ein änderbarer konfigurierender Datensatz geändert, so wird
die Änderungszeit in dem Attribut des Datensatzes eingetragen und abgespeichert.
|
(package private) void |
setTransferableVersion(short transferableVersion)
Setzt die Version, die zur Übernahme dieses Konfigurationsbereichs in anderen Konfigurationen freigegeben werden soll.
|
private void |
writeDependencyDataSet(Collection<ConfigurationAreaDependency> areaDependencies)
Schreibt einen Datensatz, der alle Abhängigkeiten dieses Bereich zu anderen Bereichen speichert.
|
addSet, directDuplicate, directModification, duplicate, duplicate, getMutableSet, getNonMutableSet, getNotValidSince, getObjectSet, getObjectSets, getValidSince, invalidate, invalidateCache, isValid, removeSet, revalidate, simpleRevalidate
checkChangePermit, createConfigurationData, equals, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationDataBytes, getId, getName, getObjectLookupForData, getPid, getSerializerVersion, getType, getUsedAttributeGroupUsages, hashCode, originalHashCode, removeConfigurationData, setConfigurationData, setName, simpleInvalidation
compareTo, getConfigurationData, getInfo, getNameOrPidOrId, getPidOrId, getPidOrNameOrId, isOfType, isOfType, setConfigurationData, toString
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
addSet, duplicate, duplicate, getMutableSet, getNonMutableSet, getNotValidSince, getObjectSet, getObjectSets, getValidSince, removeSet, revalidate
getConfigurationData, getConfigurationData, getConfigurationData, getId, getInfo, getName, getNameOrPidOrId, getPid, getPidOrId, getPidOrNameOrId, getType, getUsedAttributeGroupUsages, invalidate, isOfType, isOfType, isValid, setConfigurationData, setConfigurationData, setName, toString
compareTo
private static final Debug _debug
private final ConfigDataModel _dataModel
private ConfigurationAuthority _configurationAuthority
private final List<ConfigurationAreaDependency> _areaDependencyList
private final AttributeGroupUsage _atguForDependencies
null
, so ist die
benötigte ATG nicht bekannt und der Mechanismus wird nicht benutzt.public ConfigConfigurationArea(ConfigDataModel dataModel, SystemObjectInformationInterface systemObjectInfo)
dataModel
- das Datenmodell, welches alle Konfigurationsbereiche enthältsystemObjectInfo
- das korrespondierende Objekt aus den Konfigurationsdateienpublic ConfigDataModel getDataModel()
de.bsvrz.dav.daf.main.config.SystemObject
getDataModel
in interface SystemObject
getDataModel
in class AbstractConfigSystemObject
public ConfigConfigurationArea getConfigurationArea()
de.bsvrz.dav.daf.main.config.SystemObject
getConfigurationArea
in interface SystemObject
getConfigurationArea
in class AbstractConfigSystemObject
public ConfigurationAuthority getConfigurationAuthority()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getConfigurationAuthority
in interface ConfigurationArea
public void setConfigurationData(AttributeGroupUsage atgUsage, Data data) throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.SystemObject
setConfigurationData
in interface SystemObject
setConfigurationData
in class ConfigSystemObject
atgUsage
- Attributgruppenverwendung des zu ändernden Datensatzesdata
- Der neue Datensatz. Wird null
angegeben, wird der Datensatz am Objekt gelöscht.ConfigurationChangeException
- Wenn der Datensatz nicht geändert werden konnte.public void activateNewAuthority(SystemObject newAuthority) throws ConfigurationChangeException
newAuthority
- ConfigurationChangeException
public short getActivatableVersion()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getActivatableVersion
in interface ConfigurationArea
void setActivatableVersion(short activatableVersion) throws ConfigurationChangeException
activatableVersion
- die Versionsnummer, die zur Übernahme und Aktivierung dieses Konfigurationsbereichs freigegeben werden sollConfigurationChangeException
- Falls die Versionsnummer nicht am Konfigurationsbereich gespeichert werden kann.public short getTransferableVersion()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getTransferableVersion
in interface ConfigurationArea
void setTransferableVersion(short transferableVersion) throws ConfigurationChangeException
transferableVersion
- die Versionsnummer, die zur Übernahme dieses Konfigurationsbereichs freigegeben werden sollConfigurationChangeException
- Falls die Versionsnummer nicht am Konfigurationsbereich gespeichert werden kann.public short getActiveVersion()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getActiveVersion
in interface ConfigurationArea
public short getModifiableVersion()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getModifiableVersion
in interface ConfigurationArea
public short getLastModifiedVersion()
public long getTimeOfLastDynamicChange()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getTimeOfLastDynamicChange
in interface ConfigurationArea
public long getTimeOfLastNonActiveConfigurationChange()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getTimeOfLastNonActiveConfigurationChange
in interface ConfigurationArea
public long getTimeOfLastActiveConfigurationChange()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getTimeOfLastActiveConfigurationChange
in interface ConfigurationArea
public Collection<SystemObject> getObjects(Collection<SystemObjectType> systemObjectTypes, ObjectTimeSpecification timeSpecification)
de.bsvrz.dav.daf.main.config.ConfigurationArea
null
übergeben, so gilt dies als Wildcard. D. h. alle Objekttypen werden berücksichtigt.getObjects
in interface ConfigurationArea
systemObjectTypes
- die Objekttypen oder null
, falls alle betrachtet werden sollentimeSpecification
- gibt den Gültigkeitszeitraum für die gesuchten Objekte anpublic Collection<SystemObject> getDirectObjects(Collection<SystemObjectType> systemObjectTypes, ObjectTimeSpecification timeSpecification)
de.bsvrz.dav.daf.main.config.ConfigurationArea
ConfigurationArea.getObjects(java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObjectType>, de.bsvrz.dav.daf.main.config.ObjectTimeSpecification)
-Methode keine
Typen betrachtet, die die angegebenen Typen erweitern.getDirectObjects
in interface ConfigurationArea
systemObjectTypes
- die zu betrachtenden ObjekttypentimeSpecification
- gibt den Gültigkeitszeitraum für die gesuchten Objekte anpublic Collection<SystemObject> getCurrentObjects()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getCurrentObjects
in interface ConfigurationArea
public Collection<SystemObject> getNewObjects()
de.bsvrz.dav.daf.main.config.ConfigurationArea
getNewObjects
in interface ConfigurationArea
public ConfigurationObject createConfigurationObject(ConfigurationObjectType type, String pid, String name, Collection<? extends ObjectSet> sets) throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.ConfigurationArea
createConfigurationObject
in interface ConfigurationArea
type
- Typ des neuen Objekts.pid
- PID des neuen Objekts. Der leere String ("") oder null
wird als "keine PID" interpretiert.name
- Name des neuen Objekts (kann später verändert werden). Der leere String ("") oder null
wird als "kein Name" interpretiert.sets
- Liste der Mengen des neuen Objekts oder null
, wenn keine Mengen vergeben werden sollen.ConfigurationChangeException
- Wenn das Objekt nicht erzeugt werden konnte.ConfigurationObject
,
SystemObject.isValid()
public DynamicObject createDynamicObject(DynamicObjectType type, String pid, String name) throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.ConfigurationArea
createDynamicObject
in interface ConfigurationArea
type
- Typ des neuen Objektspid
- PID des neuen Objekts. Der leere String ("") oder null
wird als "keine PID" interpretiert.name
- Name des neuen Objekts (kann später verändert werden). Der leere String ("") oder null
wird als "kein Name" interpretiert.ConfigurationChangeException
- Wenn das Objekt nicht erzeugt werden konnte.SystemObject
,
SystemObject.isValid()
public DynamicObject createDynamicObject(DynamicObjectType type, String pid, String name, short simulationVariant) throws ConfigurationChangeException
type
- Typ des neuen Objektspid
- PID des neuen Objekts. Der leere String ("") oder null
wird als "keine PID" interpretiert.name
- Name des neuen Objekts (kann später verändert werden)simulationVariant
- Simulationsvariante des neuen ObjektsConfigurationChangeException
- Wenn das Objekt nicht erzeugt werden konnte.public DynamicObject createDynamicObject(DynamicObjectType type, String pid, String name, Collection<DataAndATGUsageInformation> data) throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.ConfigurationArea
createDynamicObject
in interface ConfigurationArea
type
- Typ des neuen Objektspid
- PID des neuen Objekts. Der leere String ("") oder null
wird als "keine PID" interpretiert.name
- Name des neuen Objekts (kann später verändert werden). Der leere String ("") oder null
wird als "kein Name" interpretiert.data
- Enthält alle konfigurierenden Datensätze mit den dazugehörigen Attributgruppenverwendungen, die am neuen Objekt gespeichert werden sollen. Wird
eine leere Liste oder null
übergeben, so werden keine Datensätze am neu erzeugten Objekt angelegt.ConfigurationChangeException
- Wenn das Objekt nicht erzeugt werden konnte.SystemObject
,
SystemObject.isValid()
public Collection<ConfigurationAreaDependency> getDependencyFromOtherConfigurationAreas()
ConfigConfigurationAreaInterface
getDependencyFromOtherConfigurationAreas
in interface ConfigConfigurationAreaInterface
private boolean hasNewVersionInformation(ConfigurationAreaDependency oldAreaDependency, ConfigurationAreaDependency newerAreaDependency)
oldAreaDependency
- Abhängigkeit mit vermeindlich älteren InformationennewerAreaDependency
- Abhängigkeit mit vermeindlich neueren Informationen als oldAreaDependency
true
, wenn newerAreaDependency neuere Informationen enthält als oldAreaDependency
; false
, sonst.private boolean hasNewStateInformation(ConfigurationAreaDependency oldAreaDependency, ConfigurationAreaDependency newerAreaDependency)
oldAreaDependency
- Abhängigkeit, die bisher gespeichert wurde.newerAreaDependency
- Abhängigkeit, die vielleicht gespeichert werden solltrue
, wenn die neue Abhängigkeite neue Informationen enthält; false
, sonst.private ConfigurationAreaDependency createRequiredDependence(ConfigurationAreaDependency areaDependence)
areaDependence
- Abhängigkeit, die kopiert wird.areaDependence
mit der Eigenschaft notwendig.public void addAreaDependency(Collection<ConfigurationAreaDependency> areaDependencies) throws ConfigurationChangeException
ConfigurationAreaDependencyKind
und es soll eine Abhängigkeit REQUIRED gespeichert werden,
so wird die optionale Abhängigkeit ersetzt. Umgekehrt ist dies nicht möglich.
Ist der Bereich bereits von einem anderen Bereich abhängig (notwendig) und es soll eine Abhängigkeit optional hinzugefügt werden (dessen needed Version >
als die notwendige Abhängigkeit), so wird diese Abhängigkeit automatisch auf "notwendig" gesetzt. Damit wird verhindert, das eine Abhängigkeit, die
notwendig war, durch Versionswechsel wieder auf optional gesetzt werden kann.
Ist der Konfiguration die Attributgruppe zum speichern der Datensätze nicht bekannt, so die Abhängigkeiten ignoriert und nichts gemacht.areaDependencies
- Abhängigkeiten, die gespeichert werden soll.ConfigurationChangeException
- Wird geworfen, wenn der Datensatz, der die Abhängigkeiten enthält, nicht gespeichert werden kann.public boolean dependenciesChecked()
dependenciesChecked
in interface ConfigConfigurationAreaInterface
true
, wenn der Bereich bereits auf Abhängigkeiten geprüft wurde; false
, wenn der Bereich nicht auf Abhängigkeiten geprüft
wurde.private void writeDependencyDataSet(Collection<ConfigurationAreaDependency> areaDependencies) throws ConfigurationChangeException
areaDependencies
- Neue Abhängigkeiten, die am Ende des Datensatzes (Array) eingefügt werden sollen.ConfigurationChangeException
- Der Datensatz darf nicht geändert werden, weil der Konfigurationsverantwortliche der Konfiguration keinen Zugriff auf diesen Bereich hat.private void loadDependencyDataSets()
_atguForDependancies
in die_areaDependencyList
.
Der Datensatz speichert die Abhängigkeiten in der Reihenfolge LIFO. Der letzte und damit neuste Eintrag befindet sich am Ende.private boolean equalsConfigurationAreaDependancy(ConfigurationAreaDependency first, ConfigurationAreaDependency second)
first
- Erster Bereichsecond
- Zweiter Bereichtrue
, wenn die beiden Bereiche unter Berücksichtigung der Parameter logisch identisch sind.public Collection<ConfigurationAreaChangeInformation> getChangeLogs()
public DynamicObject createDynamicObject(DynamicObjectType type, String pid, String name, Collection<DataAndATGUsageInformation> data, short simulationVariant) throws ConfigurationChangeException
type
- Typ des neuen Objektspid
- PID des neuen Objekts. Der leere String ("") oder null
wird als "keine PID" interpretiert.name
- Name des neuen Objekts (kann später verändert werden)data
- Datensätze für das dynamische ObjektsimulationVariant
- Simulationsvariante des neuen ObjektsConfigurationChangeException
- Wenn das Objekt nicht erzeugt werden konnte.private void checkNameLength(String name) throws ConfigurationChangeException
name
- Name oder null
ConfigurationChangeException
- Der Name ist länger als 255 Zeichenprivate void checkPidLength(String pid) throws ConfigurationChangeException
pid
- Pid oder null
ConfigurationChangeException
- Die Pid ist länger als 255 Zeichenprivate DynamicObject createDynamicObject(DynamicObjectType type, String pid, String name, Collection<DataAndATGUsageInformation> data, short simulationVariant, boolean checkDatasets) throws ConfigurationChangeException
type
- Typ des neuen Objektspid
- PID des neuen Objekts. Der leere String ("") oder null
wird als "keine PID" interpretiert.name
- Name des neuen Objekts (kann später verändert werden)data
- Datensätze für das dynamische ObjektsimulationVariant
- Simulationsvariante des neuen ObjektscheckDatasets
- gibt an, ob geprüft werden soll, ob die notwendigen Datensätze vorhanden sindConfigurationChangeException
- Wenn das Objekt nicht erzeugt werden konnte.private void createConfigurationDataForSets(ConfigurationObjectInfo objectInfo, Collection<? extends ObjectSet> sets, int serializerVersion)
objectInfo
- wo der konfigurierende Datensatz mit den Mengen abgespeichert werden sollsets
- die MengenserializerVersion
- die Version des Serialisierersshort getVersionAtAssignedTime(long time)
time
- die Zeit, zu der die Versionsnummer des Konfigurationsbereichs gesucht wird0
, falls der Konfigurationsbereich noch nie aktiviert wurdelong getTimeAtAssignedVersion(short version)
version
- die Versionsnummer, dessen Aktivierungszeit gewünscht ist0
, falls zur Version kein Eintrag vorliegtvoid setTimeOfLastChanges(ConfigConfigurationArea.KindOfLastChange kind)
kind
- gibt an, welche der drei Zeiten angepasst werden musspublic void initialiseTimeOfLastChanges()
atg.konfigurationsBereichÄnderungsZeiten
gibt, der Undefiniert (0)
ist, und ersetzt diesen
mit der aktuellen Zeit.