public abstract class ConfigSystemObject extends AbstractConfigSystemObject implements SystemObject
Implementierung des Interfaces SystemObject
auf Seiten der Konfiguration. Die Methoden, die allgemein für das SystemObjekt gelten, wurden in einer abstrakten Klasse
implemenentiert. Alle anderen Methoden, die in Abhängigkeit zur Konfiguration stehen, sind hier implementiert.
Modifier and Type | Field and Description |
---|---|
private static Debug |
_debug
DebugLogger für Debug-Ausgaben
|
(package private) SystemObjectInformationInterface |
_systemObjectInfo
Das korrespondierende Objekt für die Dateioperationen dieses SystemObjekts.
|
Constructor and Description |
---|
ConfigSystemObject(ConfigurationArea configurationArea,
SystemObjectInformationInterface systemObjectInfo)
Konstruktor für ein SystemObjekt.
|
Modifier and Type | Method and Description |
---|---|
(package private) boolean |
checkChangePermit()
Prüft, ob die Konfiguration berechtigt ist an diesem SystemObjekt eine Änderung durchzuführen.
|
void |
createConfigurationData(AttributeGroupUsage atgUsage,
Data data)
Anhand der Attributgruppenverwendung wird an diesem System-Objekt ein konfigurierender Datensatz gespeichert.
|
boolean |
equals(java.lang.Object other)
Vergleicht das Objekt mit einem anderen Objekt.
|
Data |
getConfigurationData(AttributeGroup atg,
Aspect asp)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
|
Data |
getConfigurationData(AttributeGroup atg,
Aspect asp,
ObjectLookup objectLookup)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
|
Data |
getConfigurationData(AttributeGroup atg,
ObjectLookup objectLookup)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
|
Data |
getConfigurationData(AttributeGroupUsage atgUsage)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
|
Data |
getConfigurationData(AttributeGroupUsage atgUsage,
ObjectLookup objectLookup)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
|
byte[] |
getConfigurationDataBytes(AttributeGroupUsage attributeGroupUsage)
Gibt den konfigurierenden Datensatz als Byte-Array zurück, der am Objekt gespeichert ist.
|
long |
getId()
Liefert die Objekt-ID des System-Objekts zurück.
|
java.lang.String |
getName()
Liefert den Namen dieses Objekts zurück.
|
protected ObjectLookup |
getObjectLookupForData()
Gibt ein ObjectLookup zurück, das für die Auflösung von Referenzen in Konfigurationsdaten benutzt wird, Dies ist üblicherweise einfach das ConfigDataModel (siehe
AbstractConfigSystemObject.getDataModel() ), für dynamische Objekte muss aber die Simulationsvariante dieses Objekts zur Auflösung der Referenzen verwendet werden. |
java.lang.String |
getPid()
Liefert die permanente ID (PID) dieses Objekts zurück.
|
(package private) int |
getSerializerVersion()
Gibt die Version des Serializers zurück, die der Konfigurationsbereich dieses Systemobjekts verwendet.
|
ConfigSystemObjectType |
getType()
Liefert den Typ dieses System-Objekts zurück.
|
java.util.Collection<AttributeGroupUsage> |
getUsedAttributeGroupUsages()
Liefert alle Attributgruppenverwendungen zurück, für die es einen konfigurierenden Datensatz an diesem Objekt gibt.
|
int |
hashCode()
Bestimmt den Hash-Code dieses Objekts.
|
void |
invalidate()
Löscht das Objekt, indem es ungültig gemacht wird.
|
(package private) void |
invalidateCache()
Löscht eventuell zwischengespeicherte Daten, die erneuert werden müssen, falls
createConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroupUsage,
de.bsvrz.dav.daf.main.Data) oder AbstractConfigSystemObject.setConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroup, de.bsvrz.dav.daf.main.Data) aufgerufen wird. |
private boolean |
isNotActivatedYet()
Gibt zurück, ob sich das Objekt noch in Bearbeitung befindet und noch nicht aktiviert wurde.
|
int |
originalHashCode() |
void |
removeConfigurationData(AttributeGroupUsage atgUsage)
Löscht zu dieser Attributgruppenverwendung an diesem Objekt den zugehörigen Datensatz.
|
private void |
removeInvalidReferences(Data data) |
void |
setConfigurationData(AttributeGroup atg,
Aspect asp,
Data data)
Ändert einen konfigurierenden Datensatz dieses Objekts.
|
void |
setConfigurationData(AttributeGroupUsage atgUsage,
Data data)
Ändert einen konfigurierenden Datensatz dieses Objekts.
|
void |
setName(java.lang.String name)
Setzt den Namen dieses Objekts.
|
void |
simpleInvalidation()
Löscht jedes einzelne Objekt, unabhängig davon, ob es sich um ein freies Objekt handelt oder nicht.
|
compareTo, getConfigurationArea, getConfigurationData, getDataModel, getInfo, getNameOrPidOrId, getPidOrId, getPidOrNameOrId, isOfType, isOfType, setConfigurationData, toString
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getConfigurationArea, getConfigurationData, getDataModel, getInfo, getNameOrPidOrId, getPidOrId, getPidOrNameOrId, isOfType, isOfType, isValid, setConfigurationData, toString
private static final Debug _debug
DebugLogger für Debug-Ausgaben
final SystemObjectInformationInterface _systemObjectInfo
Das korrespondierende Objekt für die Dateioperationen dieses SystemObjekts.
public ConfigSystemObject(ConfigurationArea configurationArea, SystemObjectInformationInterface systemObjectInfo)
Konstruktor für ein SystemObjekt.
configurationArea
- der Konfigurationsbereich dieses SystemObjektssystemObjectInfo
- das korrespondierende Objekt für die Dateioperationen dieses SystemObjektspublic long getId()
de.bsvrz.dav.daf.main.config.SystemObject
getId
in interface SystemObject
public java.lang.String getPid()
de.bsvrz.dav.daf.main.config.SystemObject
getPid
in interface SystemObject
public java.lang.String getName()
de.bsvrz.dav.daf.main.config.SystemObject
getName
in interface SystemObject
public void setName(java.lang.String name) throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.SystemObject
setName
in interface SystemObject
name
- Neuer Name des Objekts. Der leere String ("") oder null
wird als "kein Name" interpretiert.ConfigurationChangeException
- Wenn der Name des Objektes nicht geändert werden konnte.SystemObjectType.isNameOfObjectsPermanent()
public Data getConfigurationData(AttributeGroup atg, Aspect asp)
de.bsvrz.dav.daf.main.config.SystemObject
getConfigurationData
in interface SystemObject
atg
- Attributgruppe des gewünschten Datensatzes.asp
- Aspekt des gewünschten Datensatzes.null
, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe
hat.public Data getConfigurationData(AttributeGroup atg, Aspect asp, ObjectLookup objectLookup)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
atg
- Attributgruppe des gewünschten Datensatzes.asp
- Aspekt des gewünschten Datensatzes.objectLookup
- Objekt das bei der Deserialisierung zur Auflösung von Objektreferenzen benutzt werden soll.null
, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe hat.private void removeInvalidReferences(Data data)
public Data getConfigurationData(AttributeGroupUsage atgUsage)
de.bsvrz.dav.daf.main.config.SystemObject
getConfigurationData
in interface SystemObject
atgUsage
- Attributgruppenverwendung des gewünschten Datensatzesnull
, wenn das Objekt keinen Datensatz zu der angegebenen
Attributgruppenverwendung hat.public Data getConfigurationData(AttributeGroupUsage atgUsage, ObjectLookup objectLookup)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
atgUsage
- Attributgruppenverwendung des gewünschten DatensatzesobjectLookup
- Objekt das bei der Deserialisierung zur Auflösung von Objektreferenzen benutzt werden soll.null
, wenn das Objekt keinen Datensatz zu der angegebenen Attributgruppenverwendung hat.public Data getConfigurationData(AttributeGroup atg, ObjectLookup objectLookup)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück. Als Aspekt des gewünschten Datensatzes wird “asp.eigenschaften” angenommen.
atg
- Attributgruppe des gewünschten Datensatzes.objectLookup
- Objekt das bei der Deserialisierung zur Auflösung von Objektreferenzen benutzt werden soll.null
, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe hat.protected ObjectLookup getObjectLookupForData()
Gibt ein ObjectLookup zurück, das für die Auflösung von Referenzen in Konfigurationsdaten benutzt wird, Dies ist üblicherweise einfach das ConfigDataModel (siehe AbstractConfigSystemObject.getDataModel()
), für dynamische Objekte muss aber die Simulationsvariante dieses Objekts zur Auflösung der Referenzen verwendet werden.
public byte[] getConfigurationDataBytes(AttributeGroupUsage attributeGroupUsage)
Gibt den konfigurierenden Datensatz als Byte-Array zurück, der am Objekt gespeichert ist. Der Datensatz wird über die ID der Attributgruppenverwendung identifiziert.
attributeGroupUsage
- die Attributgruppenverwendungnull
, falls es keinen konfigurierenden Datensatz für die Attributgruppenverwendung gibtint getSerializerVersion()
Gibt die Version des Serializers zurück, die der Konfigurationsbereich dieses Systemobjekts verwendet.
public final boolean equals(java.lang.Object other)
Vergleicht das Objekt mit einem anderen Objekt. Zwei Objekte sind gleich, wenn sie die gleiche Objekt-Id haben.
equals
in class java.lang.Object
true
, wenn die Objekte gleich sind, sonst false
.public final int hashCode()
Bestimmt den Hash-Code dieses Objekts.
hashCode
in class java.lang.Object
public final int originalHashCode()
public void setConfigurationData(AttributeGroup atg, Aspect asp, Data data) throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.SystemObject
setConfigurationData
in interface SystemObject
atg
- Attributgruppe des zu ändernden Datensatzesasp
- Aspekt 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 setConfigurationData(AttributeGroupUsage atgUsage, Data data) throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.SystemObject
setConfigurationData
in interface SystemObject
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.private boolean isNotActivatedYet()
Gibt zurück, ob sich das Objekt noch in Bearbeitung befindet und noch nicht aktiviert wurde.
public java.util.Collection<AttributeGroupUsage> getUsedAttributeGroupUsages()
de.bsvrz.dav.daf.main.config.SystemObject
getUsedAttributeGroupUsages
in interface SystemObject
public void createConfigurationData(AttributeGroupUsage atgUsage, Data data) throws ConfigurationChangeException
Anhand der Attributgruppenverwendung wird an diesem System-Objekt ein konfigurierender Datensatz gespeichert.
atgUsage
- die Attributgruppenverwendungdata
- der konfigurierende Datensatz oder null
, falls der Datensatz gelöscht werden sollConfigurationChangeException
- Falls der Datensatz nicht gespeichert werden konnte.public void removeConfigurationData(AttributeGroupUsage atgUsage)
Löscht zu dieser Attributgruppenverwendung an diesem Objekt den zugehörigen Datensatz.
atgUsage
- die Attributgruppenverwendung, dessen Datensatz gelöscht werden soll.void invalidateCache()
Löscht eventuell zwischengespeicherte Daten, die erneuert werden müssen, falls createConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroupUsage,
de.bsvrz.dav.daf.main.Data)
oder AbstractConfigSystemObject.setConfigurationData(de.bsvrz.dav.daf.main.config.AttributeGroup, de.bsvrz.dav.daf.main.Data)
aufgerufen wird. Dies wird automatisch beim Aufruf der genannten Methoden gemacht.
public void invalidate() throws ConfigurationChangeException
de.bsvrz.dav.daf.main.config.SystemObject
invalidate
in interface SystemObject
ConfigurationChangeException
- Wenn das Objekt nicht ungültig gemacht werden konnte.public void simpleInvalidation() throws ConfigurationChangeException
Löscht jedes einzelne Objekt, unabhängig davon, ob es sich um ein freies Objekt handelt oder nicht.
ConfigurationChangeException
- Wenn das Objekt nicht ungültig gemacht werden konnte.public ConfigSystemObjectType getType()
de.bsvrz.dav.daf.main.config.SystemObject
getType
in interface SystemObject
boolean checkChangePermit()
Prüft, ob die Konfiguration berechtigt ist an diesem SystemObjekt eine Änderung durchzuführen.
true
, falls die Konfiguration die Berechtigung hat Änderungen am Objekt durchzuführen, false
, falls die Konfiguration diese Berechtigung nicht hat