public class ConfigConfigurationObject extends ConfigSystemObject implements ConfigurationObject
ConfigurationObject auf Seiten der Konfiguration.| Modifier and Type | Class and Description |
|---|---|
private static class |
ConfigConfigurationObject.Modification
Ein Enum zur Unterscheidung von Löschen und Wiederbeleben von Konfigurationsobjekten.
|
| Modifier and Type | Field and Description |
|---|---|
private static Debug |
_debug
DebugLogger für Debug-Ausgaben
|
private Object |
_lockObject
Wird genutzt um den Zugriff auf das Objekt _sets zu synchronisieren.
|
private Map<String,ObjectSet> |
_sets
Speichert die Mengen dieses Objekts.
|
_systemObjectInfo| Constructor and Description |
|---|
ConfigConfigurationObject(ConfigurationArea configurationArea,
SystemObjectInformationInterface systemObjectInfo)
Konstruktor für ein KonfigurationsObjekt.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addSet(ObjectSet set)
Ordnet dem Konfigurationsobjekt eine weitere Menge zu.
|
(package private) SystemObject |
directDuplicate(ConfigurationObject object,
ConfigurationObject duplicatedObject,
Map<String,String> substitudePids)
Diese Methode erhält ein KonfigurationsObjekt und gibt ein Duplikat zurück.
|
(package private) void |
directModification(ConfigConfigurationObject.Modification mod)
Löscht oder wiederbelebt das Objekt ohne zu prüfen, ob der Konfigurationsverantwortliche das Objekt ändern darf und unabhängig davon, ob es sich um ein
freies Objekt handelt.
|
SystemObject |
duplicate()
Dupliziert ein Konfigurationsobjekt.
|
SystemObject |
duplicate(Map<String,String> substitudePids)
Dupliziert ein Konfigurationsobjekt.
|
private void |
duplicateDependentObjects(Data data,
Map<String,String> substitudePids)
Objekte, die via Komposition referenziert werden, werden dupliziert.
|
MutableSet |
getMutableSet(String name)
Liefert eine diesem Konfigurations-Objekt zugeordnete online änderbare Menge zurück.
|
NonMutableSet |
getNonMutableSet(String name)
Liefert eine diesem Konfigurations-Objekt zugeordnete nicht online änderbare Menge zurück.
|
short |
getNotValidSince()
Liefert die Versionsnummer der Konfiguration ab der dieses Konfigurationsobjekt nicht mehr gültig ist.
|
ObjectSet |
getObjectSet(String name)
Liefert eine diesem Konfigurations-Objekt zugeordnete Objekt-Menge zurück.
|
private Map<String,ObjectSet> |
getObjectSetMap()
Ermittelt die Mengen dieses Konfigurationsobjekts und speichert sie in einer Map.
|
List<ObjectSet> |
getObjectSets()
Liefert die Liste aller diesem Konfigurationsobjekt zugeordneten Mengen zurück.
|
short |
getValidSince()
Liefert die Versionsnummer der Konfiguration ab der dieses Konfigurationsobjekt gültig ist.
|
void |
invalidate()
Löscht das Objekt, indem es ungültig gemacht wird.
|
(package private) void |
invalidateCache()
Wird aufgerufen, wenn das Objekt verändert wird.
|
private boolean |
isFreeObject()
Ermittelt, ob dieses Objekt ein freies Objekt ist.
|
private boolean |
isObjectDependsOnDataset(Data data)
Prüft, ob in dem angegebenen Datensatz eine Referenz mittels Komposition auf dieses Objekt verweist.
|
boolean |
isValid()
Bestimmt, ob dieses Objekt zum aktuellen Zeitpunkt gültig ist.
|
private void |
modifyDependentObjects(Data data,
ConfigConfigurationObject.Modification mod)
Objekte, die via Komposition referenziert werden, werden auf
ungültig gesetzt. |
void |
removeSet(ObjectSet set)
Entfernt die Zuordnung von diesem Konfigurationsobjekt zu einer Menge.
|
void |
revalidate()
Macht ein bereits als ungültig markiertes Objekt wieder gültig.
|
private void |
setConfigurationData(Collection<ObjectSet> sets)
Speichert den konfigurierenden Datensatz, der die Mengen enthält, am Objekt und gibt dem Konfigurationsbereich Bescheid, dass sich ein Datensatz geändert
hat.
|
void |
simpleRevalidate() |
checkChangePermit, createConfigurationData, equals, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationData, getConfigurationDataBytes, getId, getName, getObjectLookupForData, getPid, getSerializerVersion, getType, getUsedAttributeGroupUsages, hashCode, originalHashCode, removeConfigurationData, setConfigurationData, setConfigurationData, setName, simpleInvalidationcompareTo, getConfigurationArea, getConfigurationData, getDataModel, getInfo, getNameOrPidOrId, getPidOrId, getPidOrNameOrId, isOfType, isOfType, setConfigurationData, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitgetConfigurationArea, getConfigurationData, getConfigurationData, getConfigurationData, getDataModel, getId, getInfo, getName, getNameOrPidOrId, getPid, getPidOrId, getPidOrNameOrId, getType, getUsedAttributeGroupUsages, isOfType, isOfType, setConfigurationData, setConfigurationData, setConfigurationData, setName, toStringcompareToprivate static final Debug _debug
private final Object _lockObject
public ConfigConfigurationObject(ConfigurationArea configurationArea, SystemObjectInformationInterface systemObjectInfo)
configurationArea - der Konfigurationsbereich dieses KonfigurationsObjektssystemObjectInfo - das korrespondierende Objekt für die Dateioperationen dieses KonfigurationsObjektspublic short getValidSince()
de.bsvrz.dav.daf.main.config.ConfigurationObjectgetValidSince in interface ConfigurationObjectpublic short getNotValidSince()
de.bsvrz.dav.daf.main.config.ConfigurationObjectgetNotValidSince in interface ConfigurationObjectSystemObject.invalidate() ungültig gemacht worden ist, dann wird der Wert 0 zurückgegeben.public boolean isValid()
de.bsvrz.dav.daf.main.config.SystemObjectErzeugung noch nicht gültig, sondern werden erst mit der Aktivierung der nächsten Konfigurationsversion gültig.
Nach dem Löschen eines Konfigurationsobjekts bleibt es bis zur Aktivierung der nächsten Konfigurationsversion gültig. Dynamische Objekte
werden sofort mit deren Erzeugung gültig und mit dem Löschen ungültig.isValid in interface SystemObjecttrue, falls das Objekt gültig ist;false, falls das Objekt nicht gültig ist.public void invalidate()
throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.SystemObjectinvalidate in interface SystemObjectinvalidate in class ConfigSystemObjectConfigurationChangeException - Wenn das Objekt nicht ungültig gemacht werden konnte.void directModification(ConfigConfigurationObject.Modification mod)
mod - gibt an, ob die Objekt-Einheit gelöscht oder wiederbelebt werden sollprivate void modifyDependentObjects(Data data, ConfigConfigurationObject.Modification mod)
ungültig gesetzt.data - der zu prüfende Datensatzmod - gibt an, ob die Objekt-Einheit gelöscht, wiederbelebt oder dupliziert werden sollprivate boolean isFreeObject()
throws ConfigurationChangeException
true, wenn dieses Objekt ein freies Objekt ist, sonst falseConfigurationChangeException - Nicht mehr gültige Objekte, können nicht geprüft werden, ob sie freie Objekte sind.private boolean isObjectDependsOnDataset(Data data)
data - zu prüfenden Datensatztrue, wenn es eine Referenz mittels Komposition auf dieses Objekt gibt, sonst falsepublic void revalidate()
throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.ConfigurationObjectSystemObject.invalidate() für eine
zukünftige Konfigurationsversion als ungültig markiert wurde und diese Konfigurationsversion noch nicht aktiviert wurde, dann kann das Objekt durch Aufruf
dieser Methode wieder gültig gemacht werden.revalidate in interface ConfigurationObjectConfigurationChangeException - Wenn das Objektes nicht wieder gültig gemacht werden konnte.public void simpleRevalidate()
public SystemObject duplicate() throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.ConfigurationObjectgelöscht werden.duplicate in interface ConfigurationObjectConfigurationChangeException - Falls das Objekt kein freies Objekt ist und das Duplizieren nicht erlaubt ist oder das Duplikat nicht erstellt werden
konnte.ConfigurationObject.duplicate(java.util.Map)public SystemObject duplicate(Map<String,String> substitudePids) throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.ConfigurationObjectgelöscht werden.duplicate in interface ConfigurationObjectsubstitudePids - Map, die die Wert-Paare (altePid, neuePid) enthält.ConfigurationChangeException - Falls das Objekt kein freies Objekt ist und das Duplizieren nicht erlaubt ist oder das Duplikat nicht erstellt werden
konnte.ConfigurationObject.duplicate()SystemObject directDuplicate(ConfigurationObject object, ConfigurationObject duplicatedObject, Map<String,String> substitudePids) throws ConfigurationChangeException
object - zu duplizierendes KonfigurationsObjektduplicatedObject - dupliziertes Objekt oder null, falls es noch dupliziert werden sollsubstitudePids - Map, die die Wert-Paare (altePid, neuePid) enthält.ConfigurationChangeException - Falls das Objekt nicht dupliziert werden konnte.private void duplicateDependentObjects(Data data, Map<String,String> substitudePids) throws ConfigurationChangeException
data - der zu duplizierende DatensatzsubstitudePids - Map, die die Wert-Paare (altePid, neuePid) enthält.ConfigurationChangeException - Falls ein via Komposition referenziertes Objekt nicht dupliziert werden konnte.public MutableSet getMutableSet(String name)
de.bsvrz.dav.daf.main.config.ConfigurationObjectgetMutableSet in interface ConfigurationObjectname - Der Name der gewünschten Mengenull, wenn die spezifizierte Menge nicht vorhanden ist.public NonMutableSet getNonMutableSet(String name)
de.bsvrz.dav.daf.main.config.ConfigurationObjectgetNonMutableSet in interface ConfigurationObjectname - Der Name der gewünschten Mengenull, wenn die spezifizierte Menge nicht vorhanden ist.public ObjectSet getObjectSet(String name)
de.bsvrz.dav.daf.main.config.ConfigurationObjectSchnittstelle für nicht online änderbare Mengen. Wenn die Menge online änderbar ist, dann unterstützt das
zurückgegebene Mengenobjekt die Schnittstelle für online änderbare Mengen.getObjectSet in interface ConfigurationObjectname - Der Name der gewünschten Mengenull, wenn die spezifizierte Menge nicht vorhanden ist.private Map<String,ObjectSet> getObjectSetMap()
public List<ObjectSet> getObjectSets()
de.bsvrz.dav.daf.main.config.ConfigurationObjectgetObjectSets in interface ConfigurationObjectSchnittstelle
für nicht online änderbare Mengen oder die Schnittstelle für online änderbare Mengen.public void addSet(ObjectSet set) throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.ConfigurationObjectaddSet in interface ConfigurationObjectset - Menge, die dem Konfigurationsobjekt zugeordnet werden soll.ConfigurationChangeException - Wenn die Menge nicht hinzugefügt werden konnte.public void removeSet(ObjectSet set) throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.ConfigurationObjectremoveSet in interface ConfigurationObjectset - Menge, die entfernt werden soll.ConfigurationChangeException - Wenn die Menge nicht entfernt werden konnte.private void setConfigurationData(Collection<ObjectSet> sets) throws ConfigurationChangeException
sets - Die Mengen, die in einem Datensatz gespeichert werden sollen.ConfigurationChangeException - Falls der konfigurierende Datensatz nicht gespeichert werden konnte.void invalidateCache()
invalidateCache in class ConfigSystemObject