de.bsvrz.dav.daf.main.config
Interface SystemObject

All Superinterfaces:
Comparable
All Known Subinterfaces:
Aspect, Attribute, AttributeGroup, AttributeGroupUsage, AttributeListDefinition, AttributeSet, AttributeType, ClientApplication, ConfigurationArea, ConfigurationAuthority, ConfigurationObject, ConfigurationObjectType, DavApplication, DoubleAttributeType, DynamicObject, DynamicObjectType, IntegerAttributeType, IntegerValueRange, IntegerValueState, MutableCollection, MutableSet, NonMutableSet, ObjectSet, ObjectSetType, ObjectSetUse, ReferenceAttributeType, StringAttributeType, SystemConfigurationAuthority, SystemObjectType, TimeAttributeType
All Known Implementing Classes:
DafAspect, DafAttribute, DafAttributeGroup, DafAttributeGroupUsage, DafAttributeListDefinition, DafAttributeSet, DafAttributeType, DafClientApplication, DafConfigurationArea, DafConfigurationAuthority, DafConfigurationObject, DafConfigurationObjectType, DafDavApplication, DafDoubleAttributeType, DafDynamicObject, DafDynamicObjectType, DafIntegerAttributeType, DafIntegerValueRange, DafIntegerValueState, DafMutableSet, DafNonMutableSet, DafObjectSet, DafObjectSetType, DafObjectSetUse, DafReferenceAttributeType, DafStringAttributeType, DafSystemObject, DafSystemObjectType, DafTimeAttributeType, RemoteDynamicObject

public interface SystemObject
extends Comparable

Schnittstelle zum Zugriff auf die Eigenschaften eines System-Objekts. Datensätze, die vom Datenverteiler transportiert werden, sind immer genau einem System-Objekt zugeordnet. Zur internen Identifizierung eines System-Objekts wird die id des Objekts benutzt. Das ist ein 64-Bit-Wert der systemweit eindeutig ist. Zur expliziten Referenzierung von Objekten (z.B. in Aufrufparametern von Applikationen, Versorgungsskripten etc.) kann die permanente ID (PID) eines Objekts verwendet werden. Diese ist optional und muss nur bei den Objekten gesetzt werden, bei denen sie gebraucht wird. Die PID ist eine leicht zu merkende Zeichenkette, die systemweit eindeutig ist und sich (wenn sie einmal vergeben wurde) nie mehr ändern kann. Außerdem kann jedem System-Objekt ein Name zugeordnet werden, der zu Darstellungszwecken benutzt werden kann. Der Name eines Objekts kann i.a. jederzeit geändert werden und sollte aus diesem Grund nicht zur Referenzierung von Objekten eingesetzt werden.

Author:
Kappich Systemberatung

Method Summary
 ConfigurationArea getConfigurationArea()
          Liefert den Konfigurationsbereich, zu dem dieses Objekt gehört, zurück.
 Data getConfigurationData(AttributeGroup atg)
          Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
 Data getConfigurationData(AttributeGroup atg, Aspect asp)
          Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
 Data getConfigurationData(AttributeGroupUsage atgUsage)
          Liefert einen konfigurierenden Datensatz dieses Objekts zurück.
 DataModel getDataModel()
          Liefert das zu diesem Objekt gehörende Objekt zum Zugriff auf die Konfiguration zurück.
 long getId()
          Liefert die Objekt-ID des System-Objekts zurück.
 SystemObjectInfo getInfo()
          Liefert ein Objekt mit beschreibenden Informationen zu diesem Objekt zurück.
 String getName()
          Liefert den Namen dieses Objekts zurück.
 String getNameOrPidOrId()
          Liefert eine Bezeichnung für dieses Objekt zurück.
 String getPid()
          Liefert die permanente ID (PID) dieses Objekts zurück.
 String getPidOrId()
          Liefert eine Bezeichnug für dieses Objekt zurück.
 String getPidOrNameOrId()
          Liefert eine Bezeichnung für dieses Objekt zurück.
 SystemObjectType getType()
          Liefert den Typ dieses System-Objekts zurück.
 Collection<AttributeGroupUsage> getUsedAttributeGroupUsages()
          Liefert alle Attributgruppenverwendungen zurück, für die es einen konfigurierenden Datensatz an diesem Objekt gibt.
 void invalidate()
          Löscht das Objekt, indem es ungültig gemacht wird.
 boolean isOfType(String typePid)
          Bestimmt, ob dieses System-Objekt ein Element des angegebenen Typs ist.
 boolean isOfType(SystemObjectType type)
          Bestimmt, ob dieses System-Objekt ein Element des angegebenen Typs ist.
 boolean isValid()
          Bestimmt, ob dieses Objekt zum aktuellen Zeitpunkt gültig ist.
 void setConfigurationData(AttributeGroup atg, Aspect asp, Data data)
          Ändert einen konfigurierenden Datensatz dieses Objekts.
 void setConfigurationData(AttributeGroup atg, Data data)
          Ändert einen konfigurierenden Datensatz dieses Objekts.
 void setConfigurationData(AttributeGroupUsage atgUsage, Data data)
          Ändert einen konfigurierenden Datensatz dieses Objekts.
 void setName(String name)
          Setzt den Namen dieses Objekts.
 String toString()
          Liefert eine textuelle Beschreibung dieses Objekts zurück.
 
Methods inherited from interface java.lang.Comparable
compareTo
 

Method Detail

getId

long getId()
Liefert die Objekt-ID des System-Objekts zurück.

Returns:
ID dieses System-Objekts oder 0, wenn das Objekt keine ID hat.

getType

SystemObjectType getType()
Liefert den Typ dieses System-Objekts zurück.

Returns:
Typ dieses System-Objekts.

isOfType

boolean isOfType(SystemObjectType type)
Bestimmt, ob dieses System-Objekt ein Element des angegebenen Typs ist. Ein System-Objekt ist Element des Objekt-Typs, der von der Methode getType() zurückgeliefert wird. Außerdem ist das Objekt ein Element von den direkten und indirekten Super-Typen des Objekt-Typs.

Parameters:
type - Zu prüfender Typ.
Returns:
true, wenn der übergebene Typ mit dem Objekt-Typ oder mit einem der direkten oder indirekten Vorgänger in der Vererbungshierarchie übereinstimmt; sonst false.

isOfType

boolean isOfType(String typePid)
Bestimmt, ob dieses System-Objekt ein Element des angegebenen Typs ist. Ein System-Objekt ist Element des Objekt-Typs, der von der Methode getType() zurückgeliefert wird. Außerdem ist das Objekt ein Element von den direkten und indirekten Super-Typen des Objekt-Typs.

Parameters:
typePid - PID des zu prüfenden Typs.
Returns:
true, wenn der übergebene Typ mit dem Objekt-Typ oder mit einem der direkten oder indirekten Vorgänger in der Vererbungshierarchie übereinstimmt; sonst false.

getPid

String getPid()
Liefert die permanente ID (PID) dieses Objekts zurück. Wenn das Objekt keine PID hat, wird ein leerer String zurückgegeben.

Returns:
PID des System-Objekts oder einen leeren String, wenn das Objekt keine PID hat.

getName

String getName()
Liefert den Namen dieses Objekts zurück. Wenn das Objekt keinen Namen hat, wird ein leerer String zurückgegeben.

Returns:
Name des System-Objekts oder ein leerer String, wenn das Objekt keinen Namen hat.

setName

void setName(String name)
             throws ConfigurationChangeException
Setzt den Namen dieses Objekts.

Parameters:
name - Neuer Name des Objekts. Der leere String ("") oder null wird als "kein Name" interpretiert.
Throws:
ConfigurationChangeException - Wenn der Name des Objektes nicht geändert werden konnte.
See Also:
SystemObjectType.isNameOfObjectsPermanent()

getNameOrPidOrId

String getNameOrPidOrId()
Liefert eine Bezeichnung für dieses Objekt zurück. Wenn dieses Objekt einen nicht leeren Namen hat, wird dieser zurückgegeben. Ansonsten wird (falls vorhanden) die PID des Objekts zurückgeben. Wenn die PID auch nicht vorhanden ist, wird die ID des Objekts zurückgegeben.

Returns:
Text, der den Namen, die PID oder die ID des System-Objekts enthält.

getPidOrNameOrId

String getPidOrNameOrId()
Liefert eine Bezeichnung für dieses Objekt zurück. Wenn dieses Objekt eine nicht leere PID hat, wird diese zurückgegeben. Ansonsten wird (falls vorhanden) der Name des Objekts zurückgegeben. Wenn der Name auch nicht vorhanden ist, wird die ID des Objekts zurückgegeben.

Returns:
Text, der die PID, den Namen oder die ID des System-Objekts enthält.

getPidOrId

String getPidOrId()
Liefert eine Bezeichnug für dieses Objekt zurück. Wenn dieses Objekt eine nicht leere PID hat, wird diese zurückgegeben. Ansonsten wird die ID des Objekts zurückgegeben.

Returns:
Text, der die PID oder die ID des System-Objekts enthält.

toString

String toString()
Liefert eine textuelle Beschreibung dieses Objekts zurück. Das genaue Format ist nicht festgelegt und kann sich ändern.

Overrides:
toString in class Object
Returns:
Beschreibung dieses Objekts.

isValid

boolean isValid()
Bestimmt, ob dieses Objekt zum aktuellen Zeitpunkt gültig ist. Konfigurierende System-Objekte sind nach deren Erzeugung 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.

Returns:
true, falls das Objekt gültig ist;
false, falls das Objekt nicht gültig ist.

invalidate

void invalidate()
                throws ConfigurationChangeException
Löscht das Objekt, indem es ungültig gemacht wird. Dynamische System-Objekte werden sofort ungültig. Bereits gültige konfigurierende System-Objekte werden mit Aktivierung der nächsten Konfigurationsversion ungültig. Für historische Anfragen bleiben ungültige Objekte nach wie vor existent. Konfigurierende System-Objekte, die noch nie gültig waren, werden durch diese Methode gelöscht und sind nicht mehr zugreifbar.

Throws:
ConfigurationChangeException - Wenn das Objekt nicht ungültig gemacht werden konnte.

getDataModel

DataModel getDataModel()
Liefert das zu diesem Objekt gehörende Objekt zum Zugriff auf die Konfiguration zurück.

Returns:
Objekt zum Zugriff auf die Konfiguration.

getConfigurationData

Data getConfigurationData(AttributeGroup atg)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück. Als Aspekt des gewünschten Datensatzes wird "asp.eigenschaften" angenommen.

Parameters:
atg - Attributgruppe des gewünschten Datensatzes.
Returns:
Konfigurierender Datensatz der angegebenen Attributgruppe oder null, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe hat.
See Also:
getConfigurationData(AttributeGroup,Aspect)

getConfigurationData

Data getConfigurationData(AttributeGroup atg,
                          Aspect asp)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.

Parameters:
atg - Attributgruppe des gewünschten Datensatzes.
asp - Aspekt des gewünschten Datensatzes.
Returns:
Konfigurierender Datensatz der angegebenen Attributgruppe oder null, wenn das Objekt keinen Datensatz der angegebenen Attributgruppe hat.

getConfigurationData

Data getConfigurationData(AttributeGroupUsage atgUsage)
Liefert einen konfigurierenden Datensatz dieses Objekts zurück.

Parameters:
atgUsage - Attributgruppenverwendung des gewünschten Datensatzes
Returns:
Konfigurierender Datensatz der angegebenen Attributgruppenverwendung oder null, wenn das Objekt keinen Datensatz zu der angegebenen Attributgruppenverwendung hat.

setConfigurationData

void setConfigurationData(AttributeGroup atg,
                          Data data)
                          throws ConfigurationChangeException
Ändert einen konfigurierenden Datensatz dieses Objekts. Als Aspekt wird "asp.eigenschaften" verwendet.

Parameters:
atg - Attributgruppe des zu ändernden Datensatzes
data - Der neue Datensatz. Wird null angegeben, wird der Datensatz am Objekt gelöscht.
Throws:
ConfigurationChangeException - Wenn der Datensatz nicht geändert werden konnte.

setConfigurationData

void setConfigurationData(AttributeGroup atg,
                          Aspect asp,
                          Data data)
                          throws ConfigurationChangeException
Ändert einen konfigurierenden Datensatz dieses Objekts.

Parameters:
atg - Attributgruppe des zu ändernden Datensatzes
asp - Aspekt des zu ändernden Datensatzes
data - Der neue Datensatz. Wird null angegeben, wird der Datensatz am Objekt gelöscht.
Throws:
ConfigurationChangeException - Wenn der Datensatz nicht geändert werden konnte.

setConfigurationData

void setConfigurationData(AttributeGroupUsage atgUsage,
                          Data data)
                          throws ConfigurationChangeException
Ändert einen konfigurierenden Datensatz dieses Objekts.

Parameters:
atgUsage - Attributgruppenverwendung des zu ändernden Datensatzes
data - Der neue Datensatz. Wird null angegeben, wird der Datensatz am Objekt gelöscht.
Throws:
ConfigurationChangeException - Wenn der Datensatz nicht geändert werden konnte.

getUsedAttributeGroupUsages

Collection<AttributeGroupUsage> getUsedAttributeGroupUsages()
Liefert alle Attributgruppenverwendungen zurück, für die es einen konfigurierenden Datensatz an diesem Objekt gibt.

Returns:
Alle Attributgruppenverwendungen, für die es einen konfigurierenden Datensatz an diesem Objekt gibt.
Throws:
UnsupportedOperationException - Wenn diese Methode nicht von diesem System-Object unterstützt wird.

getInfo

SystemObjectInfo getInfo()
Liefert ein Objekt mit beschreibenden Informationen zu diesem Objekt zurück.

Returns:
Objekt mit beschreibenden Informationen.

getConfigurationArea

ConfigurationArea getConfigurationArea()
Liefert den Konfigurationsbereich, zu dem dieses Objekt gehört, zurück.

Returns:
Konfigurationsbereich dieses Objekts.